

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&family=Hind+Siliguri:wght@400;500;600;700&display=swap');

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:Poppins,'Hind Siliguri',Arial,sans-serif;
  color:#2b2d31;
  background:#fff;
  font-size:16px;
}

a{
  color:inherit;
}

body.menu-open{
  overflow:hidden;
}

/* HEADER */

.site-header{
  height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 30px;
  border-bottom:1px solid #eeeeee;
  background:#fff;
  position:sticky;
  top:0;
  z-index:999;
}

.hamb{
  width:42px;
  height:42px;
  border:0;
  background:transparent;
  font-size:34px;
  line-height:1;
  padding:0;
  color:#222;
  cursor:pointer;
}

.logo{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
  color:#2b2d31;
  text-decoration:none;
  font-weight:800;
  line-height:1;
}

.logo img{
  max-height:60px;
  max-width:280px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}

.logo span{
  font-size:25px;
  font-weight:800;
  letter-spacing:1px;
  color:#b88924;
}

.logo small{
  display:block;
  font-size:8px;
  letter-spacing:2.5px;
  margin-top:4px;
  font-weight:500;
  color:#222;
}

.cart-icon{
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  color:#2b2d31;
  text-decoration:none;
  font-size:30px;
}

.cart-icon b{
  position:absolute;
  right:1px;
  top:2px;
  background:#222;
  color:#fff;
  border-radius:50%;
  font-size:11px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  display:grid;
  place-items:center;
}

/* LAYOUT */

.container{
  max-width:100%;
  margin:auto;
  padding:0 30px;
}

main{
  display:block;
  padding-top:0;
}

/* HERO */

.hero{
  padding:14px 0 18px;
}

.hero img{
  width:100%;
  height:auto;
  border-radius:8px;
  display:block;
  object-fit:cover;
}

/* SECTION TITLE */

.section-title{
  background:transparent;
  border-radius:0;
  text-align:center;
  padding:0;
  margin:24px 0 22px;
  font-size:40px;
  letter-spacing:1px;
  font-weight:800;
  color:#25272b;
}

/* CATEGORY */

.cat-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
  margin-bottom:34px;
}

.cat-card{
  border:1px solid #ddd;
  border-radius:8px;
  padding:10px;
  text-align:center;
  color:#303136;
  text-decoration:none;
  background:#fff;
  transition:.2s;
  overflow:hidden;
}

.cat-card:hover{
  box-shadow:0 10px 25px rgba(0,0,0,.06);
}

.cat-card img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:6px;
  display:block;
}

.cat-card h3{
  font-size:21px;
  letter-spacing:2px;
  margin:22px 0 10px;
  font-weight:700;
  color:#222;
  text-transform:uppercase;
}

/* PRODUCTS */

.products{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:52px 38px;
}

.product-card{
  position:relative;
  text-decoration:none;
  color:#2c2d32;
}

.product-img{
  position:relative;
  overflow:hidden;
  border-radius:0;
  background:#f6f6f6;
}

.product-img img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  display:block;
  transition:.35s;
}

.product-card:hover .product-img img{
  transform:scale(1.04);
}

.badge{
  position:absolute;
  left:0;
  top:14px;
  background:#24272a;
  color:#fff;
  padding:8px 11px;
  font-size:13px;
  font-weight:600;
  z-index:2;
}

.product-title{
  font-size:22px;
  font-weight:500;
  margin:13px 0 5px;
  line-height:1.35;
  text-align:center;
  white-space:normal;
  overflow:visible;
  text-overflow:unset;
}

.price{
  font-size:21px;
  font-weight:700;
  text-align:center;
}

.old{
  color:#aaa;
  text-decoration:line-through;
  font-weight:400;
  margin-right:8px;
}

.new{
  color:#262626;
}

/* FOOTER */

.footer{
  background:#2b2e31;
  color:#dfe1e4;
  padding:55px 36px 32px;
  margin-top:55px;
}

.footer img{
  max-width:200px;
  background:#fff;
  padding:3px;
}

.footer .tagline{
  font-size:20px;
  color:#f3f3f3;
}

.footer h3{
  color:#fff;
  margin:25px 0 10px;
}

.footer a{
  display:block;
  color:#d7d7d7;
  text-decoration:none;
  margin:14px 0;
}

.copyright{
  margin-top:30px;
  border-top:1px solid #444;
  padding-top:20px;
  line-height:1.6;
}

/* MOBILE MENU */

.mobile-menu{
  position:fixed;
  left:-82%;
  top:0;
  width:80%;
  max-width:560px;
  height:100vh;
  background:#fff;
  z-index:9999;
  overflow-y:auto;
  transition:.25s ease;
  box-shadow:6px 0 30px rgba(0,0,0,.18);
}

.mobile-menu.open{
  left:0;
}

.overlay{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.65);
  z-index:9998;
}

.overlay.show{
  display:block;
}

.menu-head{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  padding:20px 24px;
  border-bottom:1px solid #eee;
  background:#fff;
}

.menu-head button{
  border:0;
  background:#fff;
  font-size:22px;
  color:#222;
}

.menu-search{
  display:flex;
  border-bottom:1px solid #eee;
  background:#fff;
}

.menu-search input{
  flex:1;
  width:100%;
  padding:25px 22px;
  border:0;
  outline:0;
  font-size:22px;
  background:#fff;
}

.menu-search button{
  width:75px;
  border:0;
  background:#fff;
  font-size:34px;
}

.tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  background:#f4f4f4;
}

.tabs button{
  border:0;
  background:transparent;
  padding:18px 10px;
  font-size:18px;
  font-weight:700;
  color:#777;
}

.tabs button.active{
  background:#fff;
  color:#222;
  border-bottom:3px solid #222;
}

.tabpane{
  display:none;
  background:#fff;
}

.tabpane.active{
  display:block;
}

.tabpane a{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:21px 26px;
  border-bottom:1px solid #eee;
  color:#2b2d31;
  text-decoration:none;
  font-weight:600;
  font-size:20px;
}

/* PRODUCT PAGE */

.product-page{
  padding-top:28px;
}

.gallery-main{
  position:relative;
}

.gallery-main img{
  width:100%;
  max-height:750px;
  object-fit:cover;
  border-radius:8px;
}

.gallery-thumbs{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin:18px 0 38px;
}

.gallery-thumbs img{
  width:100%;
  aspect-ratio:1.3/1;
  object-fit:cover;
  border-radius:6px;
  cursor:pointer;
}

.prod-title{
  font-size:42px;
  line-height:1.15;
  margin:20px 0;
}

.prod-price{
  font-size:34px;
  margin:20px 0;
}

.desc{
  font-size:23px;
  color:#7a7a7a;
  line-height:1.7;
}

.desc strong,
.desc b{
  color:#087b13;
}

.size-row{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  margin:20px 0;
}

.size-btn{
  padding:17px 21px;
  border:1px solid #ddd;
  background:#fff;
  border-radius:6px;
  font-size:24px;
  font-weight:600;
}

.size-btn.selected{
  background:#222;
  color:#fff;
}

.qty{
  display:inline-flex;
  border:1px solid #ddd;
  border-radius:6px;
  overflow:hidden;
  vertical-align:middle;
  margin-right:16px;
}

.qty button,
.qty input{
  width:56px;
  height:54px;
  border:0;
  background:#fff;
  text-align:center;
  font-size:22px;
}

.qty input{
  border-left:1px solid #ddd;
  border-right:1px solid #ddd;
}

.btn{
  border:0;
  border-radius:6px;
  padding:18px 36px;
  font-size:20px;
  font-weight:700;
  text-decoration:none;
  display:inline-block;
  cursor:pointer;
}

.btn-dark{
  background:#2f3033;
  color:#fff;
}

.btn-yellow{
  background:#f7c400;
  color:#fff;
}

.btn-green{
  background:#1ba138;
  color:#fff;
}

.support-box{
  border:1px solid #ddd;
  border-radius:6px;
  margin:34px 0;
  padding:25px;
  text-align:center;
}

.support-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}

.support-actions a{
  padding:18px;
  color:#fff;
  text-decoration:none;
  border-radius:5px;
  font-size:22px;
}

.messenger{
  background:#1588e8;
}

.whatsapp{
  background:#2ccc63;
}

.meta-line{
  font-size:22px;
  color:#888;
  margin:16px 0;
}

.accordion{
  border-top:1px solid #ddd;
  border-bottom:1px solid #ddd;
  margin-top:45px;
  padding:25px 0;
}

.accordion h2{
  font-size:28px;
}

.related{
  margin-top:45px;
}

/* CART / CHECKOUT */

.cart-wrap,
.checkout-wrap{
  max-width:1100px;
  margin:auto;
  padding:45px 28px;
}

.cart-item{
  display:grid;
  grid-template-columns:180px 1fr auto;
  gap:25px;
  align-items:center;
  border-bottom:1px solid #eee;
  padding:22px 0;
}

.cart-item img{
  width:170px;
  aspect-ratio:1.2/1;
  object-fit:cover;
  border-radius:6px;
}

.cart-title{
  font-size:22px;
}

.coupon{
  border:2px dashed #ddd;
  padding:45px;
  margin:45px 0;
}

.coupon input{
  width:100%;
  padding:20px;
  border:1px solid #ddd;
  border-radius:5px;
  font-size:22px;
}

.total-card,
.order-card{
  border:1px solid #e3e3e3;
  border-radius:6px;
  padding:38px;
  margin:30px 0;
  background:#fff;
}

.row{
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:14px 0;
  border-bottom:1px solid #eee;
  font-size:22px;
}

.shipping label,
.payment label{
  display:block;
  font-size:22px;
  margin:20px 0;
}

.checkout-form input,
.checkout-form textarea{
  width:100%;
  padding:18px;
  border:1px solid #ddd;
  border-radius:5px;
  font-size:22px;
  margin:8px 0 24px;
}

.checkout-form label{
  font-size:22px;
}

.notice{
  border:2px solid #d71920;
  color:#c5161e;
  text-align:center;
  padding:25px;
  font-weight:700;
  font-size:24px;
  border-radius:6px;
  margin-bottom:28px;
}

.payment-box{
  background:#fff;
  border-radius:8px;
  box-shadow:0 5px 18px #0000000d;
  padding:25px;
  margin:12px 0 25px;
  color:#666;
  font-size:20px;
}

.thankyou{
  padding:70px 28px;
  text-align:center;
}

.thankyou .card{
  max-width:700px;
  margin:auto;
  border-radius:18px;
  box-shadow:0 20px 60px #0001;
  padding:45px;
}

.admin-link{
  display:none;
}

/* CHAT BUTTON FINAL */

.float-chat-wrap{
  position:fixed !important;
  right:18px !important;
  bottom:18px !important;
  z-index:999999 !important;
}

.float-chat,
.chat-btn{
  width:56px !important;
  height:56px !important;
  min-width:56px !important;
  min-height:56px !important;
  max-width:56px !important;
  max-height:56px !important;
  border:0 !important;
  outline:0 !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:0 !important;
  margin:0 !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1 !important;
  text-decoration:none !important;
  box-shadow:0 8px 22px rgba(0,0,0,.18) !important;
  overflow:hidden !important;
  cursor:pointer !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}

.float-chat{
  background:#97e59f !important;
}

.chat-panel{
  position:absolute !important;
  right:0 !important;
  bottom:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:10px !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(10px) !important;
  transition:.25s ease !important;
}

.chat-panel.open{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

.chat-panel.open + .float-chat{
  opacity:0 !important;
  visibility:hidden !important;
}

.chat-btn.phone{
  background:#2196f3 !important;
}

.chat-btn.wa{
  background:#25D366 !important;
}

.chat-btn.ms{
  background:#2196f3 !important;
}

.chat-btn.close-chat{
  background:#97e59f !important;
  font-size:36px !important;
}

.scrolltop{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

/* RESPONSIVE */

@media(max-width:1024px){
  .products{
    grid-template-columns:repeat(3,1fr);
  }

  .cat-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:768px){
  body{
    font-size:15px;
  }

  .site-header{
    height:78px;
    padding:0 30px;
  }

  .logo img{
    max-height:58px;
    max-width:250px;
  }

  .container{
    padding:0 30px;
  }

  .hero{
    padding:14px 0 18px;
  }

  .section-title{
    font-size:39px;
    margin:24px 0 22px;
  }

  .cat-grid{
    grid-template-columns:repeat(2,1fr);
    gap:20px;
  }

  .cat-card h3{
    font-size:20px;
  }

  .products{
    grid-template-columns:repeat(2,1fr);
    gap:52px 38px;
  }

  .product-title{
    font-size:22px;
    text-align:center;
  }

  .price{
    font-size:21px;
    text-align:center;
  }

  .footer{
    margin-top:45px;
    padding:42px 25px 28px;
  }

  .footer img{
    max-width:180px;
  }

  .footer .tagline{
    font-size:18px;
  }

  .prod-title{
    font-size:36px;
  }

  .prod-price{
    font-size:32px;
  }

  .desc{
    font-size:23px;
  }

  .btn{
    margin:10px 0;
  }

  .cart-item{
    grid-template-columns:140px 1fr;
  }

  .cart-item img{
    width:130px;
  }

  .cart-item .remove{
    grid-column:1/3;
  }
}

@media(max-width:420px){
  .container{
    padding:0 30px;
  }

  .site-header{
    height:78px;
    padding:0 30px;
  }

  .hamb{
    font-size:34px;
  }

  .logo img{
    max-width:250px;
    max-height:58px;
  }

  .cart-icon{
    font-size:30px;
  }

  .section-title{
    font-size:39px;
  }

  .cat-grid{
    gap:20px;
  }

  .cat-card h3{
    font-size:20px;
  }

  .products{
    gap:52px 38px;
  }

  .product-title{
    font-size:22px;
  }

  .price{
    font-size:21px;
  }

  .prod-title{
    font-size:32px;
  }

  .gallery-main img{
    max-height:620px;
  }

  .support-actions a{
    font-size:20px;
  }

  .cart-item{
    grid-template-columns:100px 1fr;
  }

  .cart-item img{
    width:95px;
  }

  .row{
    font-size:19px;
  }

  .checkout-form input,
  .checkout-form textarea{
    font-size:19px;
  }
}
/* MARBEEN MATCH FINAL DESIGN FIX */

/* Header compact */
.site-header{
  height:66px !important;
  padding:0 28px !important;
}

/* Logo slightly smaller */
.logo img{
  max-width:220px !important;
  max-height:48px !important;
}

/* Menu icon and cart size */
.hamb{
  font-size:30px !important;
}

.cart-icon{
  font-size:27px !important;
}

/* Banner gap কমানো */
.hero{
  padding:26px 0 20px !important;
}

/* Banner size/proportion */
.hero img{
  width:100% !important;
  max-height:300px !important;
  object-fit:cover !important;
  border-radius:8px !important;
}

/* Category title একটু ছোট */
.section-title{
  font-size:34px !important;
  margin:36px 0 28px !important;
  font-weight:800 !important;
  letter-spacing:.5px !important;
}

/* Category card compact */
.cat-grid{
  gap:18px !important;
}

.cat-card{
  padding:10px !important;
  border-radius:8px !important;
}

.cat-card img{
  border-radius:6px !important;
  aspect-ratio:1 / .82 !important;
  object-fit:cover !important;
}

.cat-card h3{
  font-size:18px !important;
  margin:18px 0 8px !important;
  letter-spacing:2px !important;
}

/* Mobile final */
@media(max-width:768px){
  .site-header{
    height:66px !important;
    padding:0 28px !important;
  }

  .logo img{
    max-width:220px !important;
    max-height:48px !important;
  }

  .hamb{
    font-size:30px !important;
  }

  .cart-icon{
    font-size:27px !important;
  }

  .container{
    padding:0 30px !important;
  }

  .hero{
    padding:26px 0 20px !important;
  }

  .hero img{
    max-height:300px !important;
  }

  .section-title{
    font-size:34px !important;
    margin:36px 0 28px !important;
  }

  .cat-grid{
    gap:18px !important;
  }

  .cat-card img{
    aspect-ratio:1 / .82 !important;
  }

  .cat-card h3{
    font-size:18px !important;
    margin:18px 0 8px !important;
  }
}

@media(max-width:420px){
  .site-header{
    height:66px !important;
    padding:0 28px !important;
  }

  .logo img{
    max-width:215px !important;
    max-height:46px !important;
  }

  .hero{
    padding:24px 0 18px !important;
  }

  .hero img{
    max-height:285px !important;
  }

  .section-title{
    font-size:33px !important;
    margin:34px 0 26px !important;
  }

  .cat-card h3{
    font-size:17px !important;
  }
}
/* FINAL SMALL DESIGN ADJUSTMENT */

.logo img{
  max-width:235px !important;
  max-height:52px !important;
}

.hero{
  padding:22px 0 10px !important;
}

.section-title{
  font-size:31px !important;
  margin:28px 0 24px !important;
}

.cat-card img{
  aspect-ratio:1 / .86 !important;
}

.cat-card h3{
  font-size:17px !important;
  margin:16px 0 8px !important;
  letter-spacing:2.5px !important;
}

@media(max-width:420px){
  .logo img{
    max-width:230px !important;
    max-height:50px !important;
  }

  .hero{
    padding:20px 0 10px !important;
  }

  .section-title{
    font-size:30px !important;
    margin:26px 0 22px !important;
  }

  .cat-card h3{
    font-size:16px !important;
  }
}
/* CATEGORY UP MORE */

.section-title{
  margin-top:0px !important;
  margin-bottom:24px !important;
}

.hero{
  padding-bottom:0px !important;
}

@media(max-width:420px){
  .section-title{
    margin-top:0px !important;
    margin-bottom:22px !important;
  }

  .hero{
    padding-bottom:0px !important;
  }
}
/* CATEGORY CARD GAP REDUCE FIX */

.cat-grid{
  column-gap:12px !important;
  row-gap:20px !important;
}

.cat-card{
  padding:8px !important;
}

@media(max-width:420px){
  .container{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .cat-grid{
    column-gap:12px !important;
    row-gap:20px !important;
  }

  .cat-card{
    padding:8px !important;
  }
}
/* CATEGORY TITLE BOLD REDUCE */

.section-title{
  font-weight:500 !important;
}
/* PRODUCT GRID / CATEGORY PAGE FIX */

.products,
.product-grid{
  display:grid !important;
  grid-template-columns:repeat(2, 1fr) !important;
  gap:34px 24px !important;
  padding:0 30px !important;
}

.product-card{
  display:block !important;
  text-decoration:none !important;
  color:#2b2d31 !important;
}

.product-img{
  width:100% !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#f6f6f6 !important;
  position:relative !important;
}

.product-img img{
  width:100% !important;
  aspect-ratio:1 / 1.08 !important;
  object-fit:cover !important;
  border-radius:8px !important;
  display:block !important;
}

.badge{
  position:absolute !important;
  left:0 !important;
  top:16px !important;
  background:#24272a !important;
  color:#fff !important;
  padding:10px 13px !important;
  font-size:16px !important;
  font-weight:700 !important;
  z-index:5 !important;
}

.product-title{
  font-size:22px !important;
  font-weight:500 !important;
  margin:14px 0 8px !important;
  line-height:1.3 !important;
  text-align:left !important;
  letter-spacing:0 !important;
}

.price{
  font-size:21px !important;
  font-weight:700 !important;
  text-align:left !important;
}

.old{
  color:#aaa !important;
  text-decoration:line-through !important;
  font-weight:400 !important;
  margin-right:8px !important;
}

.new{
  color:#262626 !important;
  font-weight:800 !important;
}

/* Category page title */
.category-title,
.page-title,
.collection-title,
h1{
  font-size:38px !important;
  font-weight:500 !important;
  margin:26px 30px 30px !important;
  line-height:1.2 !important;
}

/* Footer gap reduce on category/product listing pages */
.footer{
  margin-top:45px !important;
}

/* Mobile */
@media(max-width:420px){
  .products,
  .product-grid{
    grid-template-columns:repeat(2, 1fr) !important;
    gap:30px 22px !important;
    padding:0 28px !important;
  }

  .product-img img{
    aspect-ratio:1 / 1.08 !important;
  }

  .badge{
    font-size:14px !important;
    padding:9px 12px !important;
  }

  .product-title{
    font-size:20px !important;
    margin:13px 0 7px !important;
  }

  .price{
    font-size:19px !important;
  }

  .category-title,
  .page-title,
  .collection-title,
  h1{
    font-size:34px !important;
    margin:24px 28px 28px !important;
  }
}
/* SUB CATEGORY FINAL FIX LIKE MARBEEN */

main > h1:first-child,
.collection-title,
.category-title,
.page-title{
  font-size:26px !important;
  font-weight:400 !important;
  letter-spacing:1px !important;
  line-height:1.2 !important;
  margin:18px 30px 24px !important;
  color:#222 !important;
}

/* Product listing compact */
.products,
.product-grid,
.category-products{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:34px 28px !important;
  padding:0 30px 30px !important;
  width:100% !important;
  max-width:100% !important;
}

/* Product card */
.product-card{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  text-decoration:none !important;
  color:#222 !important;
}

/* Product image */
.product-img{
  width:100% !important;
  border-radius:6px !important;
  overflow:hidden !important;
  background:#f6f6f6 !important;
  position:relative !important;
}

.product-img img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:1 / 1.05 !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:6px !important;
}

/* Discount badge */
.badge{
  position:absolute !important;
  left:0 !important;
  top:14px !important;
  background:#282b2f !important;
  color:#fff !important;
  padding:8px 11px !important;
  font-size:13px !important;
  font-weight:700 !important;
  z-index:5 !important;
}

/* Product title */
.product-title{
  font-size:17px !important;
  font-weight:400 !important;
  text-align:left !important;
  line-height:1.3 !important;
  margin:11px 0 5px !important;
  letter-spacing:0 !important;
}

/* Price */
.price{
  text-align:left !important;
  font-size:17px !important;
  font-weight:700 !important;
  line-height:1.4 !important;
  white-space:nowrap !important;
}

.old{
  color:#aaa !important;
  text-decoration:line-through !important;
  font-weight:400 !important;
  margin-right:7px !important;
}

.new{
  color:#222 !important;
  font-weight:800 !important;
}

/* Footer full width fix */
.footer{
  width:100% !important;
  max-width:100% !important;
  margin-top:45px !important;
  clear:both !important;
}

/* Prevent horizontal overflow */
html,
body{
  overflow-x:hidden !important;
}

/* Mobile */
@media(max-width:420px){
  main > h1:first-child,
  .collection-title,
  .category-title,
  .page-title{
    font-size:24px !important;
    margin:16px 24px 22px !important;
  }

  .products,
  .product-grid,
  .category-products{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:30px 18px !important;
    padding:0 24px 28px !important;
  }

  .product-img img{
    aspect-ratio:1 / 1.05 !important;
  }

  .badge{
    font-size:12px !important;
    padding:7px 10px !important;
  }

  .product-title{
    font-size:16px !important;
    margin:10px 0 5px !important;
  }

  .price{
    font-size:16px !important;
  }
}
/* PREMIUM SUB CATEGORY TITLE BOX */

main > h1:first-child,
.collection-title,
.category-title,
.page-title{
  background:linear-gradient(135deg, #f5f5f5, #ffffff) !important;
  border:1px solid #e6e6e6 !important;
  border-radius:14px !important;
  box-shadow:0 12px 28px rgba(0,0,0,0.06) !important;
  text-align:center !important;
  padding:20px 12px !important;
  margin:22px 24px 28px !important;
  font-size:32px !important;
  font-weight:700 !important;
  color:#24262b !important;
  letter-spacing:1px !important;
  line-height:1.2 !important;
}

/* Mobile */
@media(max-width:420px){
  main > h1:first-child,
  .collection-title,
  .category-title,
  .page-title{
    margin:18px 20px 26px !important;
    padding:18px 10px !important;
    font-size:28px !important;
    border-radius:12px !important;
  }
}
/* PREMIUM COLLECTION BOX - STRONG FIX */

h1,
.cart-wrap h1,
.checkout-wrap h1,
main h1,
.container h1,
.category-title,
.collection-title,
.page-title,
.section-title{
  background:linear-gradient(135deg,#f7f7f7,#ffffff) !important;
  border:1px solid #e5e5e5 !important;
  border-radius:14px !important;
  box-shadow:0 12px 28px rgba(0,0,0,0.07) !important;
  text-align:center !important;
  padding:18px 12px !important;
  margin:18px 24px 26px !important;
  font-size:30px !important;
  font-weight:600 !important;
  color:#24262b !important;
  letter-spacing:.5px !important;
  line-height:1.2 !important;
}

/* Homepage Category title যাতে বেশি নষ্ট না হয় */
.home .section-title,
.index .section-title{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Mobile */
@media(max-width:420px){
  h1,
  .cart-wrap h1,
  .checkout-wrap h1,
  main h1,
  .container h1,
  .category-title,
  .collection-title,
  .page-title,
  .section-title{
    margin:16px 20px 24px !important;
    padding:16px 10px !important;
    font-size:27px !important;
    border-radius:12px !important;
  }
}
/* SUB CATEGORY TITLE BOX FINAL - THIN PREMIUM */

/* Home page Category title normal থাকবে */
.section-title{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
}

/* Saree Collection / Panjabi Collection / Jersey Collection টাইপ title box */
main h1:first-of-type,
.collection-title,
.category-title,
.page-title{
  background:#f7f7f7 !important;
  border:1px solid #e1e1e1 !important;
  border-radius:8px !important;
  box-shadow:0 5px 14px rgba(0,0,0,0.05) !important;
  text-align:center !important;
  padding:12px 10px !important;
  margin:16px 24px 24px !important;
  font-size:28px !important;
  font-weight:500 !important;
  color:#24262b !important;
  letter-spacing:.4px !important;
  line-height:1.2 !important;
}

/* Mobile */
@media(max-width:420px){
  main h1:first-of-type,
  .collection-title,
  .category-title,
  .page-title{
    margin:14px 20px 22px !important;
    padding:11px 8px !important;
    font-size:25px !important;
    border-radius:7px !important;
    font-weight:500 !important;
  }
}
/* HOME CATEGORY NORMAL + COLLECTION TITLES BOX */

/* Home page first Category title normal */
.section-title:first-of-type{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
  font-size:30px !important;
  font-weight:600 !important;
  margin:24px 0 22px !important;
}

/* Category বাদে বাকি collection title box হবে */
.section-title:not(:first-of-type),
.collection-title,
.category-title,
.page-title{
  background:#f7f7f7 !important;
  border:1px solid #e1e1e1 !important;
  border-radius:8px !important;
  box-shadow:0 5px 14px rgba(0,0,0,0.05) !important;
  text-align:center !important;
  padding:11px 10px !important;
  margin:30px 24px 24px !important;
  font-size:26px !important;
  font-weight:500 !important;
  color:#24262b !important;
  letter-spacing:.4px !important;
  line-height:1.2 !important;
}

/* যদি Saree Collection h1/h2 হয় */
main h1:not(:first-of-type),
main h2:not(:first-of-type){
  background:#f7f7f7 !important;
  border:1px solid #e1e1e1 !important;
  border-radius:8px !important;
  box-shadow:0 5px 14px rgba(0,0,0,0.05) !important;
  text-align:center !important;
  padding:11px 10px !important;
  margin:30px 24px 24px !important;
  font-size:26px !important;
  font-weight:500 !important;
  color:#24262b !important;
  letter-spacing:.4px !important;
  line-height:1.2 !important;
}

/* Mobile */
@media(max-width:420px){
  .section-title:first-of-type{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    font-size:30px !important;
    font-weight:600 !important;
    margin:24px 0 22px !important;
  }

  .section-title:not(:first-of-type),
  .collection-title,
  .category-title,
  .page-title,
  main h1:not(:first-of-type),
  main h2:not(:first-of-type){
    margin:28px 20px 22px !important;
    padding:10px 8px !important;
    font-size:24px !important;
    border-radius:7px !important;
    font-weight:500 !important;
  }
}
/* SUB CATEGORY TITLE BOX - FUTURE SAFE */

.section-title{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
}

.subcat-title{
  display:block !important;
  width:calc(100% - 48px) !important;
  margin:18px auto 26px !important;
  padding:12px 14px !important;
  text-align:center !important;
  font-size:27px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  color:#24262b !important;
  background:#f5f5f5 !important;
  border:1px solid #dddddd !important;
  border-radius:10px !important;
  box-shadow:0 4px 12px rgba(0,0,0,0.045) !important;
  letter-spacing:.3px !important;
}

@media(max-width:420px){
  .subcat-title{
    width:calc(100% - 34px) !important;
    margin:16px auto 22px !important;
    padding:11px 12px !important;
    font-size:24px !important;
    border-radius:9px !important;
  }
}
/* SUB CATEGORY TITLE BOX ONLY */

.subcat-title{
  display:block !important;
  width:calc(100% - 48px) !important;
  margin:18px auto 26px !important;
  padding:12px 14px !important;
  text-align:center !important;
  font-size:27px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  color:#24262b !important;
  background:#f5f5f5 !important;
  border:1px solid #dddddd !important;
  border-radius:10px !important;
  box-shadow:0 4px 12px rgba(0,0,0,0.045) !important;
  letter-spacing:.3px !important;
}

@media(max-width:420px){
  .subcat-title{
    width:calc(100% - 34px) !important;
    margin:16px auto 22px !important;
    padding:11px 12px !important;
    font-size:24px !important;
    border-radius:9px !important;
  }
}
/* MARBEEN STYLE CATEGORY PAGE */

.category-page{
  padding:18px 0 35px;
}

.category-page-banner{
  padding:0 24px;
  margin:0 0 18px;
}

.category-page-banner img{
  width:100%;
  max-height:290px;
  object-fit:cover;
  display:block;
  border-radius:8px;
}

.category-breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 24px;
  margin:8px 0 14px;
  font-size:14px;
  color:#777;
}

.category-breadcrumb a{
  color:#333;
  text-decoration:none;
  font-weight:500;
}

.subcat-title{
  display:block !important;
  width:calc(100% - 48px) !important;
  margin:14px auto 22px !important;
  padding:11px 12px !important;
  text-align:center !important;
  font-size:25px !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  color:#24262b !important;
  background:#f5f5f5 !important;
  border:1px solid #dddddd !important;
  border-radius:10px !important;
  box-shadow:0 4px 12px rgba(0,0,0,0.045) !important;
  letter-spacing:.3px !important;
}

.category-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 24px;
  margin:0 0 22px;
}

.result-count{
  font-size:14px;
  color:#666;
}

.sort-form select{
  border:1px solid #ddd;
  background:#fff;
  padding:9px 10px;
  border-radius:6px;
  font-size:14px;
  color:#333;
  outline:none;
}

.category-products{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:30px 18px !important;
  padding:0 24px 25px !important;
}

.category-products .product-img img{
  aspect-ratio:1 / 1.08 !important;
  object-fit:cover !important;
}

.category-products .product-title{
  font-size:16px !important;
  font-weight:400 !important;
  text-align:left !important;
  margin:10px 0 5px !important;
  line-height:1.35 !important;
}

.category-products .price{
  font-size:16px !important;
  text-align:left !important;
  font-weight:700 !important;
}

.empty-products{
  margin:40px 24px;
  padding:35px 20px;
  text-align:center;
  border:1px solid #eee;
  border-radius:10px;
  background:#fafafa;
}

.empty-products h2{
  margin:0 0 15px;
  font-size:24px;
  font-weight:500;
}

.empty-products a{
  display:inline-block;
  padding:12px 18px;
  background:#222;
  color:#fff;
  border-radius:6px;
  text-decoration:none;
}

@media(max-width:420px){
  .category-page{
    padding-top:16px;
  }

  .category-page-banner{
    padding:0 20px;
    margin-bottom:16px;
  }

  .category-page-banner img{
    max-height:250px;
  }

  .category-breadcrumb{
    padding:0 20px;
    font-size:13px;
  }

  .subcat-title{
    width:calc(100% - 40px) !important;
    margin:12px auto 20px !important;
    padding:10px 10px !important;
    font-size:23px !important;
  }

  .category-toolbar{
    padding:0 20px;
    margin-bottom:20px;
  }

  .result-count{
    font-size:13px;
  }

  .sort-form select{
    max-width:145px;
    font-size:13px;
    padding:8px 7px;
  }

  .category-products{
    gap:28px 18px !important;
    padding:0 20px 22px !important;
  }
}
/* SIMPLE CATEGORY PAGE LIKE MARBEEN */

.simple-category-page{
  padding:18px 0 35px !important;
}

.category-top-banner{
  padding:0 24px !important;
  margin:0 0 28px !important;
}

.category-top-banner img{
  width:100% !important;
  max-height:260px !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:0 !important;
}

.simple-category-page .category-products{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:34px 24px !important;
  padding:0 24px 25px !important;
}

.simple-category-page .product-img{
  border-radius:6px !important;
  overflow:hidden !important;
}

.simple-category-page .product-img img{
  width:100% !important;
  aspect-ratio:1 / 1.08 !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:6px !important;
}

.simple-category-page .badge{
  top:14px !important;
  left:0 !important;
  padding:8px 11px !important;
  font-size:13px !important;
}

.simple-category-page .product-title{
  font-size:16px !important;
  font-weight:400 !important;
  text-align:left !important;
  margin:11px 0 5px !important;
  line-height:1.35 !important;
}

.simple-category-page .price{
  font-size:16px !important;
  text-align:left !important;
  white-space:nowrap !important;
}

.simple-category-page .old{
  color:#aaa !important;
  text-decoration:line-through !important;
  margin-right:7px !important;
}

.simple-category-page .new{
  color:#222 !important;
  font-weight:800 !important;
}

@media(max-width:420px){
  .simple-category-page{
    padding-top:16px !important;
  }

  .category-top-banner{
    padding:0 20px !important;
    margin-bottom:26px !important;
  }

  .category-top-banner img{
    max-height:240px !important;
  }

  .simple-category-page .category-products{
    gap:30px 18px !important;
    padding:0 20px 22px !important;
  }

  .simple-category-page .product-title{
    font-size:15px !important;
  }

  .simple-category-page .price{
    font-size:16px !important;
  }
}
/* CATEGORY SLIDER BANNER */

.category-slider{
  position:relative !important;
  margin:18px 24px 28px !important;
  overflow:hidden !important;
  background:#f5f5f5 !important;
}

.category-slide{
  display:none !important;
}

.category-slide.active{
  display:block !important;
}

.category-slide img{
  width:100% !important;
  height:auto !important;
  max-height:260px !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:0 !important;
}

.slider-dots{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:8px !important;
  display:flex !important;
  justify-content:center !important;
  gap:7px !important;
  z-index:5 !important;
}

.slider-dots button{
  width:8px !important;
  height:8px !important;
  border-radius:50% !important;
  border:0 !important;
  background:rgba(255,255,255,.65) !important;
  padding:0 !important;
}

.slider-dots button.active{
  background:#fff !important;
  width:18px !important;
  border-radius:999px !important;
}

@media(max-width:420px){
  .category-slider{
    margin:16px 20px 26px !important;
  }

  .category-slide img{
    max-height:240px !important;
  }
}
/* HOME HERO SLIDER */

.home-slider{
  position:relative !important;
  width:100% !important;
  overflow:hidden !important;
  border-radius:8px !important;
  background:#f5f5f5 !important;
}

.home-slide{
  display:none !important;
}

.home-slide.active{
  display:block !important;
}

.home-slide img{
  width:100% !important;
  height:auto !important;
  max-height:285px !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:8px !important;
}

.home-slider-dots{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:8px !important;
  display:flex !important;
  justify-content:center !important;
  gap:7px !important;
  z-index:5 !important;
}

.home-slider-dots button{
  width:8px !important;
  height:8px !important;
  border-radius:50% !important;
  border:0 !important;
  background:rgba(255,255,255,.65) !important;
  padding:0 !important;
  cursor:pointer !important;
}

.home-slider-dots button.active{
  background:#fff !important;
  width:18px !important;
  border-radius:999px !important;
}

@media(max-width:420px){
  .home-slide img{
    max-height:285px !important;
  }
}
/* SUB CATEGORY RGB GLOW BOX */

.subcat-title{
  position:relative;
  margin:38px 0 24px;
  padding:18px 20px;
  text-align:center;
  font-size:28px;
  font-weight:700;
  color:#222;
  background:#fff;
  border-radius:18px;
  z-index:1;
  overflow:hidden;
}

.subcat-title::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:20px;
  background:linear-gradient(
    90deg,
    #ff0000,
    #ff9900,
    #ffee00,
    #00ff66,
    #00e5ff,
    #0066ff,
    #8a2be2,
    #ff00cc,
    #ff0000
  );
  background-size:300% 300%;
  animation:rgbGlowMove 4s linear infinite;
  z-index:-2;
}

.subcat-title::after{
  content:"";
  position:absolute;
  inset:2px;
  background:#f8f8f8;
  border-radius:16px;
  z-index:-1;
}

@keyframes rgbGlowMove{
  0%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
  100%{ background-position:0% 50%; }
}
/* MENU BUTTON LEFT SHIFT */

.hamb{
  position:relative !important;
  left:-10px !important;
}
/* PRODUCT PAGE MARBEEN STYLE FINAL FIX */

.product-page{
  padding:18px 24px 35px !important;
}

.product-page .gallery-main{
  position:relative !important;
  margin:0 0 14px !important;
  border-radius:8px !important;
  overflow:hidden !important;
}

.product-page .gallery-main img{
  width:100% !important;
  max-height:560px !important;
  object-fit:cover !important;
  border-radius:8px !important;
  display:block !important;
}

.product-page .badge{
  position:absolute !important;
  top:14px !important;
  right:0 !important;
  left:auto !important;
  width:auto !important;
  min-width:58px !important;
  height:auto !important;
  background:#24272a !important;
  color:#fff !important;
  padding:9px 13px !important;
  font-size:15px !important;
  font-weight:600 !important;
  line-height:1 !important;
  border-radius:0 !important;
  z-index:10 !important;
}

.gallery-thumbs{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:12px !important;
  margin:12px 0 24px !important;
}

.gallery-thumbs img{
  width:100% !important;
  aspect-ratio:1/1 !important;
  object-fit:cover !important;
  border-radius:6px !important;
}

/* Product Title - no box */
.product-page .prod-title,
.product-page .subcat-title{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  width:100% !important;
  padding:0 !important;
  margin:16px 0 12px !important;
  text-align:left !important;
  font-size:28px !important;
  font-weight:500 !important;
  line-height:1.25 !important;
  color:#2b2d31 !important;
  letter-spacing:.2px !important;
}

/* Price */
.prod-price{
  font-size:24px !important;
  font-weight:700 !important;
  margin:8px 0 18px !important;
  line-height:1.2 !important;
}

.prod-price .old,
.product-page .old{
  color:#aaa !important;
  text-decoration:line-through !important;
  font-weight:400 !important;
  margin-right:8px !important;
}

.prod-price .new,
.product-page .new{
  color:#222 !important;
  font-weight:800 !important;
}

/* Short Description */
.desc{
  font-size:16px !important;
  line-height:1.65 !important;
  color:#666 !important;
  margin:12px 0 22px !important;
}

.desc p{
  margin:0 0 10px !important;
}

/* Size */
.product-page h3,
.product-page .size-title{
  font-size:18px !important;
  font-weight:700 !important;
  margin:20px 0 12px !important;
  color:#222 !important;
}

.size-row{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin:12px 0 14px !important;
}

.size-btn{
  padding:10px 14px !important;
  min-width:70px !important;
  height:46px !important;
  border:1px solid #ddd !important;
  background:#fff !important;
  border-radius:5px !important;
  font-size:17px !important;
  font-weight:600 !important;
  color:#222 !important;
}

.size-btn.selected{
  background:#222 !important;
  color:#fff !important;
}

/* Quantity + Buttons */
.qty{
  display:inline-flex !important;
  margin:8px 10px 12px 0 !important;
  border:1px solid #ddd !important;
  border-radius:5px !important;
  overflow:hidden !important;
}

.qty button,
.qty input{
  width:48px !important;
  height:46px !important;
  font-size:18px !important;
  border:0 !important;
  background:#fff !important;
  text-align:center !important;
}

.btn{
  border-radius:5px !important;
  padding:13px 22px !important;
  font-size:16px !important;
  font-weight:700 !important;
  margin:8px 0 !important;
}

.btn-dark{
  background:#2f3033 !important;
  color:#fff !important;
}

.btn-yellow{
  background:#f7c400 !important;
  color:#fff !important;
}

/* Support Box */
.support-box{
  margin:24px 0 !important;
  padding:20px 16px !important;
  border:1px solid #ddd !important;
  border-radius:6px !important;
  text-align:center !important;
}

.support-box h3,
.support-box p{
  font-size:16px !important;
  font-weight:400 !important;
  margin:0 0 16px !important;
}

.support-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
}

.support-actions a{
  padding:13px 10px !important;
  font-size:17px !important;
  border-radius:5px !important;
  color:#fff !important;
  text-decoration:none !important;
}

/* SKU + Category */
.meta-line,
.product-page .sku,
.product-page .category{
  font-size:16px !important;
  color:#777 !important;
  margin:12px 0 !important;
  line-height:1.5 !important;
}

/* Description Section */
.accordion{
  margin-top:30px !important;
  padding:22px 0 !important;
  border-top:1px solid #ddd !important;
  border-bottom:1px solid #ddd !important;
}

.accordion h2,
.product-page .description-title{
  font-size:24px !important;
  font-weight:700 !important;
  margin:0 0 18px !important;
  color:#222 !important;
}

.accordion,
.accordion p,
.accordion li,
.product-page .description,
.product-page .description p,
.product-page .description li{
  font-size:17px !important;
  line-height:1.75 !important;
  color:#444 !important;
}

/* Related Products */
.related{
  margin-top:34px !important;
}

.related h2{
  font-size:28px !important;
  font-weight:700 !important;
  margin:0 0 20px !important;
}

.related .products{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:28px 18px !important;
  padding:0 !important;
}

/* Mobile */
@media(max-width:420px){
  .product-page{
    padding:16px 20px 32px !important;
  }

  .product-page .gallery-main img{
    max-height:520px !important;
  }

  .product-page .prod-title,
  .product-page .subcat-title{
    font-size:25px !important;
    margin:14px 0 10px !important;
  }

  .prod-price{
    font-size:23px !important;
  }

  .desc{
    font-size:15px !important;
  }

  .size-btn{
    min-width:66px !important;
    height:44px !important;
    font-size:16px !important;
  }

  .btn{
    font-size:15px !important;
    padding:12px 20px !important;
  }

  .support-actions a{
    font-size:16px !important;
  }

  .accordion,
  .accordion p,
  .accordion li,
  .product-page .description,
  .product-page .description p,
  .product-page .description li{
    font-size:16px !important;
  }

  .related h2{
    font-size:26px !important;
  }
}
/* COMPACT PRODUCT + CHECKOUT PAGE FIX */

.product-page,
.checkout-wrap,
.cart-wrap{
  padding:18px 20px 30px !important;
}

/* Product page text smaller */
.prod-title{
  font-size:24px !important;
  line-height:1.25 !important;
  margin:14px 0 10px !important;
}

.prod-price{
  font-size:24px !important;
  margin:10px 0 14px !important;
}

.desc,
.desc p{
  font-size:15px !important;
  line-height:1.6 !important;
  color:#666 !important;
}

.accordion h2,
.related h2{
  font-size:24px !important;
  margin-bottom:16px !important;
}

.accordion,
.accordion p,
.accordion li{
  font-size:15px !important;
  line-height:1.65 !important;
}

/* Checkout notice box */
.notice{
  font-size:18px !important;
  line-height:1.6 !important;
  padding:20px 14px !important;
  margin:22px 0 !important;
  border-radius:6px !important;
}

/* Checkout labels and inputs */
.checkout-form label,
.checkout-wrap label{
  font-size:17px !important;
  font-weight:600 !important;
  margin-bottom:8px !important;
}

.checkout-form input,
.checkout-form textarea{
  font-size:16px !important;
  padding:13px 14px !important;
  margin:7px 0 18px !important;
  border-radius:6px !important;
}

/* Your Order box */
.order-card,
.total-card{
  padding:22px 18px !important;
  margin:22px 0 !important;
  border-radius:8px !important;
}

.order-card h2,
.total-card h2,
.checkout-wrap h2{
  font-size:24px !important;
  margin:0 0 18px !important;
}

/* Order product area */
.cart-item{
  grid-template-columns:90px 1fr !important;
  gap:14px !important;
  padding:14px 0 !important;
}

.cart-item img{
  width:80px !important;
  border-radius:5px !important;
}

.cart-title{
  font-size:16px !important;
  line-height:1.4 !important;
}

/* Row text */
.row{
  font-size:16px !important;
  padding:10px 0 !important;
  line-height:1.4 !important;
}

/* Shipping / payment options */
.shipping label,
.payment label{
  font-size:16px !important;
  margin:12px 0 !important;
  line-height:1.5 !important;
}

.payment-box{
  font-size:15px !important;
  line-height:1.6 !important;
  padding:18px 14px !important;
  margin:12px 0 18px !important;
}

/* Buttons */
.btn,
.checkout-wrap button,
.checkout-form button{
  font-size:16px !important;
  padding:13px 18px !important;
  border-radius:6px !important;
}

/* Confirm order button */
.checkout-wrap .btn-green,
.checkout-form .btn-green{
  width:100% !important;
  font-size:16px !important;
  padding:14px 18px !important;
}

/* Quantity smaller */
.qty button,
.qty input{
  width:42px !important;
  height:42px !important;
  font-size:17px !important;
}

/* Size buttons smaller */
.size-btn{
  font-size:15px !important;
  padding:10px 12px !important;
  min-width:62px !important;
  height:42px !important;
}

/* Mobile extra compact */
@media(max-width:420px){
  .product-page,
  .checkout-wrap,
  .cart-wrap{
    padding:16px 18px 28px !important;
  }

  .prod-title{
    font-size:22px !important;
  }

  .prod-price{
    font-size:22px !important;
  }

  .notice{
    font-size:17px !important;
    padding:18px 12px !important;
  }

  .checkout-form label,
  .checkout-wrap label{
    font-size:16px !important;
  }

  .checkout-form input,
  .checkout-form textarea{
    font-size:15px !important;
    padding:12px 13px !important;
  }

  .order-card h2,
  .total-card h2,
  .checkout-wrap h2{
    font-size:22px !important;
  }

  .row,
  .shipping label,
  .payment label{
    font-size:15px !important;
  }

  .payment-box{
    font-size:14px !important;
  }
}
/* SUB CATEGORY RGB BORDER FIX - NO EMPTY CORNER */

.subcat-title{
  position:relative !important;
  margin:38px auto 24px !important;
  padding:18px 20px !important;
  width:86% !important;
  text-align:center !important;
  font-size:28px !important;
  font-weight:600 !important;
  color:#222 !important;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(90deg,#28ff58,#00d4ff,#2f63ff,#28ff58) border-box !important;
  border:4px solid transparent !important;
  border-radius:16px !important;
  box-shadow:0 8px 22px rgba(0,0,0,.08) !important;
  overflow:visible !important;
}

.subcat-title::before,
.subcat-title::after{
  display:none !important;
}

@media(max-width:420px){
  .subcat-title{
    width:86% !important;
    font-size:24px !important;
    padding:15px 14px !important;
    border-radius:14px !important;
    border-width:4px !important;
  }
}
/* ALL SUB CATEGORY TITLE RGB GLOW FINAL */

h2.subcat-title,
.subcat-title{
  position:relative !important;
  display:block !important;
  width:86% !important;
  margin:38px auto 24px !important;
  padding:16px 18px !important;
  text-align:center !important;
  font-size:26px !important;
  font-weight:600 !important;
  line-height:1.25 !important;
  color:#24262b !important;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(
      90deg,
      #20ff63,
      #00d9ff,
      #2f5bff,
      #8b2fff,
      #ff2fd6,
      #20ff63
    ) border-box !important;
  background-size:100% 100%, 300% 300% !important;
  border:4px solid transparent !important;
  border-radius:16px !important;
  box-shadow:
    0 0 12px rgba(0,217,255,.35),
    0 0 22px rgba(47,91,255,.25),
    0 8px 24px rgba(0,0,0,.08) !important;
  animation:subcatRgbMove 3s linear infinite !important;
  overflow:visible !important;
}

h2.subcat-title::before,
h2.subcat-title::after,
.subcat-title::before,
.subcat-title::after{
  display:none !important;
  content:none !important;
}

@keyframes subcatRgbMove{
  0%{
    background-position:0 0, 0% 50%;
    box-shadow:
      0 0 12px rgba(32,255,99,.35),
      0 0 22px rgba(0,217,255,.25),
      0 8px 24px rgba(0,0,0,.08);
  }
  50%{
    background-position:0 0, 100% 50%;
    box-shadow:
      0 0 14px rgba(47,91,255,.38),
      0 0 26px rgba(255,47,214,.25),
      0 8px 24px rgba(0,0,0,.08);
  }
  100%{
    background-position:0 0, 0% 50%;
    box-shadow:
      0 0 12px rgba(32,255,99,.35),
      0 0 22px rgba(0,217,255,.25),
      0 8px 24px rgba(0,0,0,.08);
  }
}

@media(max-width:420px){
  h2.subcat-title,
  .subcat-title{
    width:86% !important;
    font-size:23px !important;
    padding:14px 12px !important;
    border-width:4px !important;
    border-radius:15px !important;
    margin:36px auto 24px !important;
  }
}
/* RGB TITLE FORCE FINAL */

.rgb-title{
  display:block !important;
  width:86% !important;
  margin:38px auto 24px !important;
  padding:16px 18px !important;
  text-align:center !important;
  font-size:26px !important;
  font-weight:600 !important;
  line-height:1.25 !important;
  color:#24262b !important;
  border:4px solid transparent !important;
  border-radius:16px !important;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(90deg,#20ff63,#00d9ff,#2f5bff,#9b2fff,#ff2fd6,#20ff63) border-box !important;
  background-size:100% 100%,300% 300% !important;
  animation:rgbTitleGlow 3s linear infinite !important;
  box-shadow:
    0 0 14px rgba(0,217,255,.45),
    0 0 28px rgba(47,91,255,.35),
    0 8px 24px rgba(0,0,0,.08) !important;
}

.rgb-title::before,
.rgb-title::after{
  display:none !important;
  content:none !important;
}

@keyframes rgbTitleGlow{
  0%{
    background-position:0 0,0% 50%;
    box-shadow:0 0 12px rgba(32,255,99,.45),0 0 24px rgba(0,217,255,.35);
  }
  50%{
    background-position:0 0,100% 50%;
    box-shadow:0 0 16px rgba(47,91,255,.55),0 0 32px rgba(255,47,214,.35);
  }
  100%{
    background-position:0 0,0% 50%;
    box-shadow:0 0 12px rgba(32,255,99,.45),0 0 24px rgba(0,217,255,.35);
  }
}

@media(max-width:420px){
  .rgb-title{
    width:86% !important;
    font-size:23px !important;
    padding:14px 12px !important;
    margin:36px auto 24px !important;
  }
}
/* PRODUCT CARD */
.product-card{
    text-decoration:none;
    color:#111;
}

/* PRODUCT TITLE */
.product-title{
    font-size:16px;
    font-weight:500;
    line-height:1.3;
    margin-top:10px;
    margin-bottom:4px;

    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

/* PRICE AREA */
.price{
    display:flex;
    align-items:center;
    gap:8px;

    margin-top:2px;
}

/* OLD PRICE */
.price .old{
    font-size:15px;
    font-weight:400;
    color:#a9a9a9;
    text-decoration:line-through;
}

/* NEW PRICE */
.price .new{
    font-size:18px;
    font-weight:700;
    color:#111;
}

/* DISCOUNT BADGE */
.badge{
    position:absolute;
    top:10px;
    left:0;

    background:#2f3136;
    color:#fff;

    padding:8px 12px;

    font-size:14px;
    font-weight:700;

    border-radius:0 0 6px 0;
}

/* MOBILE */
@media(max-width:768px){

    .product-title{
        font-size:15px;
    }

    .price .old{
        font-size:14px;
    }

    .price .new{
        font-size:17px;
    }

}
/* PRODUCT CARD */
.product-card{
    text-decoration:none !important;
    color:#111 !important;
}

/* PRODUCT IMAGE */
.product-img img{
    width:100% !important;
    border-radius:10px !important;
    object-fit:cover !important;
}

/* PRODUCT TITLE */
.product-title{
    font-size:15px !important;
    font-weight:500 !important;
    line-height:1.35 !important;

    margin-top:10px !important;
    margin-bottom:4px !important;

    color:#222 !important;

    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;

    overflow:hidden !important;
}

/* PRICE WRAP */
.price{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;

    margin-top:0px !important;
}

/* OLD PRICE */
.price .old{
    font-size:10px !important;
    font-weight:400 !important;

    color:#b5b5b5 !important;

    text-decoration:line-through !important;
}

/* NEW PRICE */
.price .new{
    font-size:10px !important;
    font-weight:700 !important;

    color:#111 !important;
}

/* DISCOUNT BADGE */
.badge{
    position:absolute !important;

    top:10px !important;
    left:10 !important;

    background:#2f3136 !important;
    color:#fff !important;

    padding:8px 2px !important;

    font-size:10px !important;
    font-weight:700 !important;

    border-radius:0 0 6px 0 !important;
}

/* MOBILE */
@media(max-width:768px){

    .product-title{
        font-size:17px !important;
    }

    .price .old{
        font-size:10px !important;
    }

    .price .new{
        font-size:12px !important;
    }

}
/* PRODUCT CARD */
.product-card{
    display:block !important;
    text-decoration:none !important;
    color:#111 !important;
}

/* PRODUCT IMAGE */
.product-img{
    position:relative !important;
    overflow:hidden !important;
}

.product-img img{
    width:100% !important;
    border-radius:10px !important;
    object-fit:cover !important;
    display:block !important;
}

/* DISCOUNT BADGE */
.badge{
    position:absolute !important;
    top:10px !important;
    left:0 !important;

    background:#2f3136 !important;
    color:#fff !important;

    padding:8px 12px !important;

    font-size:14px !important;
    font-weight:700 !important;

    border-radius:0 0 6px 0 !important;
}

/* PRODUCT TITLE */
.product-title{
    font-size:15px !important;
    font-weight:500 !important;
    line-height:1.35 !important;

    margin-top:10px !important;
    margin-bottom:3px !important;

    color:#222 !important;

    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;

    overflow:hidden !important;
}

/* PRICE AREA */
.price{
    display:flex !important;
    align-items:center !important;

    gap:4px !important;

    flex-wrap:wrap !important;

    margin-top:0 !important;
}

/* PRICE SPAN */
.price span{
    display:inline-block !important;
    line-height:1.2 !important;
}

/* OLD PRICE */
.price .old{
    font-size:10px !important;
    font-weight:400 !important;

    color:#b5b5b5 !important;

    text-decoration:line-through !important;

    margin-right:0 !important;
}

/* NEW PRICE */
.price .new{
    font-size:14px !important;
    font-weight:700 !important;

    color:#111 !important;
}

/* MOBILE */
@media(max-width:768px){

    .product-title{
        font-size:16px !important;
    }

    .price .old{
        font-size:10px !important;
    }

    .price .new{
        font-size:14px !important;
    }

}
/* PRODUCT CARD */
.product-card{
    display:block !important;
    text-decoration:none !important;
    color:#111 !important;
}

/* PRODUCT IMAGE */
.product-img{
    position:relative !important;
    overflow:hidden !important;
}

.product-img img{
    width:100% !important;
    border-radius:12px !important;
    object-fit:cover !important;
    display:block !important;
}

/* DISCOUNT BADGE */
.badge{
    position:absolute !important;
    top:10px !important;
    left:0 !important;

    background:#2f3136 !important;
    color:#fff !important;

    padding:8px 12px !important;

    font-size:14px !important;
    font-weight:700 !important;

    border-radius:0 0 8px 0 !important;
}

/* ORDER BUTTON */
.order-btn{
    width:100% !important;

    margin-top:10px !important;
    margin-bottom:10px !important;

    background:#111 !important;
    color:#fff !important;

    border:none !important;
    border-radius:10px !important;

    padding:11px 14px !important;

    font-size:15px !important;
    font-weight:700 !important;

    text-align:center !important;

    display:block !important;

    transition:.2s ease !important;
}

.order-btn:hover{
    background:#000 !important;
    transform:scale(1.02) !important;
}

/* PRODUCT TITLE */
.product-title{
    font-size:15px !important;
    font-weight:500 !important;

    line-height:1.35 !important;

    margin-top:2px !important;
    margin-bottom:3px !important;

    color:#222 !important;

    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;

    overflow:hidden !important;
}

/* PRICE AREA */
.price{
    display:flex !important;
    align-items:center !important;

    gap:4px !important;

    flex-wrap:wrap !important;

    margin-top:0 !important;
}

.price span{
    display:inline-block !important;
    line-height:1.2 !important;
}

/* OLD PRICE */
.price .old{
    font-size:10px !important;
    font-weight:400 !important;

    color:#a8a8a8 !important;

    text-decoration:line-through !important;
}

/* NEW PRICE */
.price .new{
    font-size:12px !important;
    font-weight:700 !important;

    color:#111 !important;
}

/* MOBILE */
@media(max-width:768px){

    .order-btn{
        padding:10px 12px !important;
        font-size:14px !important;
    }

    .product-title{
        font-size:14px !important;
    }

    .price .old{
        font-size:10px !important;
    }

    .price .new{
        font-size:12px !important;
    }

}
.gallery-thumbs{
  display:flex;
  gap:10px;
  margin-top:15px;
}

.gallery-thumbs img{
  width:90px;
  border-radius:10px;
  cursor:pointer;
  transition:0.3s;
}

.size-btn{
  transition:0.3s !important;
}

.size-btn.active{
  background:#000 !important;
  color:#fff !important;
  border:1px solid #000 !important;
  transform:scale(1.05);
}
.thumb-img{
    transition:.3s;
    border:2px solid transparent;
}

.thumb-img.active{
    border:2px solid red;
    transform:scale(1.05);
}
.btn{
    transition:.2s ease;
}

.btn:active{
    transform:scale(.95);
    opacity:.8;
}

.btn.loading{
    opacity:.7;
    pointer-events:none;
}
.copyright{
    text-align:center;
    color:#ffffff;
    font-size:15px;
    margin-top:25px;
    line-height:1.8;
}

.brand-color{
    color:#2f6df6;
    font-weight:700;
}

.dev-color{
    color:#00ff9d;
    font-weight:700;
}
/* COMPANY + TOP CATEGORY */

.footer-title{
    color:#fff;
    font-size:30px;
    font-weight:900;
    margin-top:35px;
    margin-bottom:22px;
    letter-spacing:1px;
}

/* TOP CATEGORY */

.footer-btn-wrap{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:35px;
}

/* COMPANY SPECIAL */

.company-wrap{
    display:grid;
    grid-template-columns:repeat(2,max-content);
    gap:18px;
    justify-content:flex-start;
}

/* BUTTON */

.footer-neon-btn{
    text-decoration:none;
    padding:10px 14px;
    border-radius:10px;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    background:rgba(255,255,255,0.02);
    border:2px solid;
    transition:.3s;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    backdrop-filter:blur(4px);
    letter-spacing:.5px;
    white-space:nowrap;
}

/* GREEN */
.footer-neon-btn.green{
    color:#45ff57;
    border-color:#45ff57;
    box-shadow:
      0 0 8px rgba(69,255,87,.5),
      inset 0 0 8px rgba(69,255,87,.15);
}

/* ORANGE */
.footer-neon-btn.orange{
    color:#ffb300;
    border-color:#ffb300;
    box-shadow:
      0 0 8px rgba(255,179,0,.5),
      inset 0 0 8px rgba(255,179,0,.15);
}

/* YELLOW */
.footer-neon-btn.yellow{
    color:#ffe600;
    border-color:#ffe600;
    box-shadow:
      0 0 8px rgba(255,230,0,.5),
      inset 0 0 8px rgba(255,230,0,.15);
}

/* RED */
.footer-neon-btn.red{
    color:#ff3c3c;
    border-color:#ff3c3c;
    box-shadow:
      0 0 8px rgba(255,60,60,.5),
      inset 0 0 8px rgba(255,60,60,.15);
}

/* BLUE */
.footer-neon-btn.blue{
    color:#2f6df6;
    border-color:#2f6df6;
    box-shadow:
      0 0 8px rgba(47,109,246,.5),
      inset 0 0 8px rgba(47,109,246,.15);
}

.footer-neon-btn:hover{
    transform:scale(1.03);
}

@media(max-width:768px){

    .footer-title{
        font-size:26px;
    }

    .footer-btn-wrap{
        gap:8px;
    }

    .company-wrap{
        grid-template-columns:repeat(2,max-content);
        gap:14px;
    }

    .footer-neon-btn{
        font-size:10px;
        padding:9px 10px;
        border-width:2px;
        border-radius:8px;
        letter-spacing:0;
    }

}