/* FORCE SAME HOME HEADER ON ALL OLD PAGES + REMOVE GREEN FLOAT BUTTON */
:root{
  --te-force-header-h: 176px;
  --te-force-footer-h: 58px;
}

body.te-force-home-shell{
  padding-top: var(--te-force-header-h) !important;
  padding-bottom: calc(var(--te-force-footer-h) + env(safe-area-inset-bottom,0px)) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  height: auto !important;
  min-height: 100vh !important;
}

body.te-force-home-shell .te-global-header,
body.te-force-home-shell .te-page-header,
body.te-force-home-shell .shop-header,
body.te-force-home-shell header.header,
body.te-force-home-shell .topbar:not(.admin-topbar),
body.te-force-home-shell .mobile-header,
body.te-force-home-shell .site-header{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
}

.te-force-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  height:var(--te-force-header-h) !important;
  z-index:2147483000 !important;
  background:linear-gradient(135deg,#02163a 0%,#062b66 100%) !important;
  box-shadow:0 12px 30px rgba(2,18,53,.18) !important;
  padding:22px 34px 18px !important;
  color:#fff !important;
  box-sizing:border-box !important;
  font-family:Inter,Arial,sans-serif !important;
}
.te-force-row{
  height:58px !important;
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
}
.te-force-menu,.te-force-action{
  width:48px !important;
  height:48px !important;
  border-radius:14px !important;
  border:0 !important;
  background:rgba(255,255,255,.09) !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 48px !important;
  cursor:pointer !important;
  text-decoration:none !important;
}
.te-force-menu svg,.te-force-action svg,.te-force-search svg{
  width:28px !important;
  height:28px !important;
  stroke:currentColor !important;
  fill:none !important;
  stroke-width:2.4 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.te-force-brand{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  flex:1 !important;
  min-width:0 !important;
  color:#fff !important;
  text-decoration:none !important;
}
.te-force-brand img{
  width:62px !important;
  height:62px !important;
  object-fit:contain !important;
  flex:0 0 62px !important;
  border-radius:14px !important;
}
.te-force-text{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
}
.te-force-text b{
  color:#fff !important;
  font-size:28px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:7px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.te-force-text b span{color:#1591ff !important;}
.te-force-text em{
  font-style:normal !important;
  color:#eef6ff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:600 !important;
  letter-spacing:.4px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.te-force-actions{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}
.te-force-search{
  width:min(1480px,78vw) !important;
  height:64px !important;
  margin:24px auto 0 !important;
  background:#fff !important;
  border-radius:24px !important;
  display:flex !important;
  align-items:center !important;
  padding:0 22px !important;
  box-shadow:0 10px 24px rgba(0,0,0,.16), inset 0 0 0 1px rgba(2,22,58,.08) !important;
}
.te-force-search .te-force-search-icon{
  color:#061a3d !important;
  flex:0 0 36px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.te-force-search input{
  flex:1 !important;
  height:100% !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  color:#071b3d !important;
  font-size:21px !important;
  font-weight:700 !important;
  padding:0 20px !important;
  min-width:0 !important;
}
.te-force-search input::placeholder{color:#8d98a9 !important;}
.te-force-scan{
  width:42px !important;
  height:42px !important;
  border:0 !important;
  border-radius:14px !important;
  background:#f3f7fc !important;
  color:#071b3d !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
}
.te-force-drawer{
  position:fixed !important;
  left:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:310px !important;
  max-width:84vw !important;
  background:#fff !important;
  z-index:2147483002 !important;
  transform:translateX(-105%) !important;
  transition:.25s ease !important;
  box-shadow:20px 0 45px rgba(0,0,0,.25) !important;
  overflow:auto !important;
  padding:16px !important;
  font-family:Inter,Arial,sans-serif !important;
}
.te-force-drawer.open{transform:translateX(0) !important;}
.te-force-drawer-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  border-bottom:1px solid #dbe5f0 !important;
  padding-bottom:12px !important;
  margin-bottom:10px !important;
}
.te-force-drawer-head img{width:128px !important;height:54px !important;object-fit:contain !important;}
.te-force-drawer-head button{width:38px !important;height:38px !important;border:0 !important;border-radius:10px !important;background:#eff5ff !important;font-size:28px !important;color:#071b3d !important;}
.te-force-drawer a{display:block !important;padding:14px 10px !important;border-bottom:1px solid #eef3f8 !important;color:#071b3d !important;text-decoration:none !important;font-weight:800 !important;}
.te-force-overlay{position:fixed !important;inset:0 !important;background:rgba(0,10,30,.55) !important;z-index:2147483001 !important;display:none !important;}
.te-force-overlay.show{display:block !important;}

/* remove every floating green/up/whatsapp button covering footer */
.wa-float,.scroll-top,.scrolltop,.scrollToTop,#scrollTop,#scrollTopBtn,#scrollToTop,#backToTop,.back-to-top,.backTop,.to-top,.go-top,.top-btn,.floating-whatsapp,.whatsapp-float,.floating-action,.floating-btn,.float-btn,.app-float,.quick-whatsapp,.fixed-whatsapp{
  display:none !important; visibility:hidden !important; opacity:0 !important; pointer-events:none !important;
}

@media (min-width:900px){
  body.te-force-home-shell .te-global-footer,
  body.te-force-home-shell .te-page-footer,
  body.te-force-home-shell .te-fixed-footer{
    justify-content:center !important;
  }
}
@media (max-width:899px){
  :root{--te-force-header-h:128px;--te-force-footer-h:54px;}
  .te-force-header{padding:8px 14px 10px !important;border-radius:0 0 20px 20px !important;}
  .te-force-row{height:48px !important;gap:10px !important;}
  .te-force-menu,.te-force-action{width:38px !important;height:38px !important;flex-basis:38px !important;border-radius:12px !important;background:transparent !important;}
  .te-force-menu svg,.te-force-action svg{width:30px !important;height:30px !important;}
  .te-force-brand{justify-content:center !important;gap:10px !important;}
  .te-force-brand img{width:54px !important;height:54px !important;flex-basis:54px !important;}
  .te-force-text b{font-size:16px !important;letter-spacing:3px !important;}
  .te-force-text em{font-size:10px !important;}
  .te-force-actions .te-force-action:first-child{display:none !important;}
  .te-force-search{width:100% !important;height:46px !important;margin-top:12px !important;border-radius:21px !important;padding:0 12px !important;}
  .te-force-search input{font-size:13px !important;padding:0 10px !important;}
  .te-force-search svg{width:24px !important;height:24px !important;}
  .te-force-scan{width:34px !important;height:34px !important;border-radius:12px !important;}
}


/* PLC SERVICE BANNER FINAL FIX 20260508 */
.te-hero-card.te-plc-banner-card,.home-index .te-hero-card.te-plc-banner-card{height:auto!important;min-height:0!important;padding:0!important;margin-top:16px!important;margin-bottom:18px!important;overflow:hidden!important;border-radius:18px!important;background:#001b3f!important;box-shadow:0 12px 28px rgba(0,27,63,.18)!important;}
.te-hero-card.te-plc-banner-card:before{display:none!important;content:none!important;}
.te-plc-banner-link{display:block!important;width:100%!important;line-height:0!important;text-decoration:none!important;}
.te-plc-service-banner{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;border:0!important;margin:0!important;}
.te-hero-card.te-plc-banner-card .te-hero-copy,.te-hero-card.te-plc-banner-card .te-hero-products,.te-hero-card.te-plc-banner-card .te-dots{display:none!important;}
@media (min-width:900px){.te-category-strip{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;gap:18px!important;max-width:1200px!important;margin-left:auto!important;margin-right:auto!important;padding:0 0 12px!important;scrollbar-width:thin!important}.te-cat-icon{flex:0 0 96px!important;width:96px!important;min-width:96px!important;max-width:96px!important}.te-cat-icon span{width:60px!important;height:60px!important}.te-cat-icon b{font-size:13px!important;line-height:1.12!important;display:block!important;min-height:30px!important}.te-hero-card.te-plc-banner-card{max-width:1200px!important}}
@media (max-width:560px){.te-hero-card.te-plc-banner-card{border-radius:14px!important;margin-top:10px!important;margin-bottom:12px!important}.te-plc-service-banner{width:100%!important;height:auto!important;object-fit:contain!important}.te-cat-icon{flex:0 0 20%!important;width:20%!important;min-width:20%!important;max-width:20%!important}.te-category-strip{gap:0!important}}


/* FINAL 2026-05-09: Home title + category row single-line smooth scroll */
@media (min-width: 900px){
  body.home-index .te-category-strip,
  .te-category-strip{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    gap:18px !important;
    max-width:1200px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 4px 12px !important;
    grid-template-columns:none !important;
    grid-auto-flow:column !important;
    scroll-behavior:smooth !important;
    -webkit-overflow-scrolling:touch !important;
    white-space:nowrap !important;
    scrollbar-width:thin !important;
  }
  body.home-index .te-category-strip .te-cat-icon,
  .te-category-strip .te-cat-icon{
    flex:0 0 96px !important;
    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;
    display:block !important;
    white-space:normal !important;
  }
  body.home-index .te-category-strip .te-cat-icon span,
  .te-category-strip .te-cat-icon span{
    width:62px !important;
    height:62px !important;
    margin:0 auto 7px !important;
  }
  body.home-index .te-category-strip .te-cat-icon b,
  .te-category-strip .te-cat-icon b{
    display:block !important;
    font-size:13px !important;
    line-height:1.1 !important;
    min-height:30px !important;
    text-align:center !important;
    overflow:hidden !important;
  }
}
@media (max-width: 899px){
  body.home-index .te-category-strip,
  .te-category-strip{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    gap:4px !important;
    padding:0 2px 8px !important;
    grid-template-columns:none !important;
    scroll-behavior:smooth !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-x pan-y !important;
    scrollbar-width:none !important;
  }
  body.home-index .te-category-strip::-webkit-scrollbar,
  .te-category-strip::-webkit-scrollbar{display:none !important;}
  body.home-index .te-category-strip .te-cat-icon,
  .te-category-strip .te-cat-icon{
    flex:0 0 calc((100vw - 22px)/5) !important;
    width:calc((100vw - 22px)/5) !important;
    min-width:calc((100vw - 22px)/5) !important;
    max-width:calc((100vw - 22px)/5) !important;
  }
  body.home-index .te-category-strip .te-cat-icon span,
  .te-category-strip .te-cat-icon span{
    width:48px !important;
    height:48px !important;
    margin:0 auto 5px !important;
  }
  body.home-index .te-category-strip .te-cat-icon b,
  .te-category-strip .te-cat-icon b{
    font-size:10px !important;
    line-height:1.05 !important;
    text-align:center !important;
    text-decoration:none !important;
  }
}


/* 2026-05-09 MOBILE HEADER/CART NO-CUT FINAL FIX */
.te-force-action{position:relative!important;overflow:visible!important;}
.te-force-badge{position:absolute!important;right:-5px!important;top:-5px!important;min-width:19px!important;height:19px!important;padding:0 5px!important;border-radius:999px!important;background:#168cff!important;color:#fff!important;border:2px solid #05235f!important;font-size:10px!important;font-weight:900!important;line-height:15px!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:0 2px 7px rgba(0,112,255,.35)!important;}
@media(max-width:899px){
  :root{--te-force-header-h:152px!important;}
  body.te-force-home-shell{padding-top:var(--te-force-header-h)!important;}
  body.te-force-home-shell .te-page-scroll,
  body.te-force-home-shell .te-scroll-area{top:var(--te-force-header-h)!important;}
  .te-force-header{height:var(--te-force-header-h)!important;padding:9px 16px 12px!important;overflow:visible!important;border-radius:0 0 18px 18px!important;}
  .te-force-row{height:58px!important;display:flex!important;align-items:center!important;gap:8px!important;width:100%!important;min-width:0!important;}
  .te-force-menu{width:38px!important;height:38px!important;flex:0 0 38px!important;}
  .te-force-actions{display:flex!important;align-items:center!important;gap:4px!important;flex:0 0 42px!important;justify-content:flex-end!important;overflow:visible!important;}
  .te-force-actions .te-force-action:first-child{display:none!important;}
  .te-force-action{width:42px!important;height:42px!important;flex:0 0 42px!important;border-radius:12px!important;background:transparent!important;}
  .te-force-action svg{width:34px!important;height:34px!important;}
  .te-force-brand{flex:1 1 auto!important;min-width:0!important;max-width:calc(100vw - 100px)!important;gap:8px!important;justify-content:center!important;overflow:hidden!important;}
  .te-force-brand img{width:54px!important;height:54px!important;flex:0 0 54px!important;}
  .te-force-text{min-width:0!important;max-width:100%!important;overflow:hidden!important;}
  .te-force-text b{font-size:14px!important;letter-spacing:2.2px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;}
  .te-force-text em{display:block!important;font-size:9px!important;letter-spacing:.15px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;line-height:1.1!important;margin-top:4px!important;}
  .te-force-search{width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important;height:54px!important;margin-top:12px!important;border-radius:21px!important;padding:0 10px!important;display:flex!important;align-items:center!important;overflow:hidden!important;}
  .te-force-search-icon{width:32px!important;min-width:32px!important;flex:0 0 32px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  .te-force-search-icon svg{width:29px!important;height:29px!important;}
  .te-force-search input{min-width:0!important;flex:1 1 auto!important;font-size:14px!important;font-weight:700!important;padding:0 6px!important;letter-spacing:0!important;}
  .te-force-search input::placeholder{font-size:14px!important;}
  .te-force-scan{width:40px!important;height:40px!important;min-width:40px!important;flex:0 0 40px!important;border-radius:14px!important;}
  .te-force-scan svg{width:25px!important;height:25px!important;}
}
@media(max-width:380px){
  .te-force-text b{font-size:12px!important;letter-spacing:1.7px!important;}
  .te-force-text em{font-size:8px!important;}
  .te-force-brand img{width:48px!important;height:48px!important;flex-basis:48px!important;}
  .te-force-search input,.te-force-search input::placeholder{font-size:12px!important;}
}
/* stronger cart mobile layout: keep price and controls inside card */
@media(max-width:720px){
  .cart-item{grid-template-columns:58px minmax(0,1fr)!important;padding:10px!important;}
  .cart-right{grid-column:2!important;padding-left:0!important;display:grid!important;grid-template-columns:minmax(78px,1fr) 88px 28px!important;gap:6px!important;width:100%!important;max-width:100%!important;align-items:center!important;margin-top:8px!important;}
  .cart-price{font-size:13px!important;text-align:right!important;white-space:nowrap!important;overflow:visible!important;word-break:normal!important;overflow-wrap:normal!important;}
  .cart-qty{width:88px!important;min-width:88px!important;}
  .trash-btn{width:28px!important;min-width:28px!important;}
}
@media(max-width:390px){
  .cart-right{grid-column:1 / -1!important;grid-template-columns:minmax(84px,1fr) 88px 28px!important;margin-top:8px!important;}
}


/* 2026-05-09 FINAL CART MOBILE NO-CUT FIX */
html, body { max-width:100% !important; overflow-x:hidden !important; }
* { box-sizing:border-box !important; }
.te-page, .te-page-scroll, main, .cart-wrap, .cart-list, .cart-total-card, .cart-empty {
  max-width:100% !important;
  overflow-x:hidden !important;
}
@media (max-width: 700px){
  .cart-wrap{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    overflow:visible !important;
  }
  .cart-titlebar,.cart-list,.cart-total-card,.cart-empty{
    width:100% !important;
    max-width:100% !important;
  }
  .cart-item{
    display:grid !important;
    grid-template-columns:62px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    gap:8px 10px !important;
    align-items:start !important;
    padding:12px 10px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }
  .cart-img{
    grid-column:1 !important;
    grid-row:1 !important;
    width:58px !important;
    height:58px !important;
    padding:5px !important;
  }
  .cart-item > div:not(.cart-right){
    grid-column:2 !important;
    grid-row:1 !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
  }
  .cart-name{
    display:block !important;
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
    font-size:14px !important;
    line-height:1.22 !important;
  }
  .cart-sub,.cart-stock{
    max-width:100% !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    font-size:12px !important;
  }
  .cart-right{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:42px 96px minmax(0,1fr) !important;
    grid-template-areas:"trash qty price" !important;
    gap:8px !important;
    align-items:center !important;
    margin-top:4px !important;
    padding:0 !important;
    overflow:hidden !important;
  }
  .cart-price{
    grid-area:price !important;
    justify-self:end !important;
    text-align:right !important;
    max-width:100% !important;
    min-width:0 !important;
    white-space:nowrap !important;
    overflow:visible !important;
    font-size:16px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
  }
  .cart-qty-form{
    grid-area:qty !important;
    justify-self:start !important;
    min-width:0 !important;
    width:96px !important;
    max-width:96px !important;
  }
  .cart-qty{
    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;
    height:30px !important;
    display:flex !important;
    overflow:hidden !important;
    border-radius:7px !important;
  }
  .cart-qty button{
    width:30px !important;
    min-width:30px !important;
    height:30px !important;
    font-size:16px !important;
    padding:0 !important;
  }
  .cart-qty input{
    width:36px !important;
    min-width:36px !important;
    height:30px !important;
    font-size:13px !important;
    padding:0 !important;
  }
  .cart-right form:last-child{
    grid-area:trash !important;
    justify-self:center !important;
    width:34px !important;
    max-width:34px !important;
  }
  .trash-btn{
    width:34px !important;
    min-width:34px !important;
    height:34px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
  }
  .trash-btn svg{
    width:19px !important;
    height:19px !important;
  }
  .cart-total-card{
    padding:16px 14px !important;
  }
  .cart-sum-line{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:10px !important;
    width:100% !important;
  }
  .cart-sum-line strong{
    white-space:nowrap !important;
    text-align:right !important;
    max-width:100% !important;
  }
  .cart-trust{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    justify-content:center !important;
    gap:12px !important;
    overflow:hidden !important;
    font-size:12px !important;
  }
  .checkout-btn{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
}
@media (max-width: 390px){
  .cart-right{
    grid-template-columns:38px 88px minmax(0,1fr) !important;
    gap:6px !important;
  }
  .cart-qty-form,.cart-qty{width:88px !important;min-width:88px !important;max-width:88px !important;}
  .cart-qty button{width:27px !important;min-width:27px !important;}
  .cart-qty input{width:34px !important;min-width:34px !important;}
  .cart-price{font-size:15px !important;}
}
