/* ============================================================
   THEME.CSS — CutPriceBD.com  |  Warm Brown Palette
   #5D4037  Dark Brown   — header, nav, primary
   #795548  Medium Brown — CTA buttons, active states
   #A1887F  Light Brown  — secondary accents, borders
   #D7CCC8  Pale Brown   — card borders, dividers
   #FFCCBC  Peach        — badges, hover highlights
   #3E2723  Dark Text    — body text
   #FFF8F5  Warm Cream   — page background
   ============================================================ */

/* ---------- 1. TYPOGRAPHY ---------- */
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: 'Nunito', 'Inter', sans-serif;
  background: var(--background_color);
  color: var(--text_primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', 'Georgia', serif;
  color: var(--text_primary);
  font-weight: 700;
}

a { color: var(--cta_color); }
a:hover { color: var(--primary_color); text-decoration: none; }

/* ---------- 2. BUTTONS ---------- */
.btn-primary,
button[type=submit].btn,
.btn_buy, a.btn_buy,
.order-btn {
  background: var(--cta_color) !important;
  border-color: var(--cta_color) !important;
  color: #fff !important;
  font-family: 'Nunito', sans-serif;
  font-weight: 700;
  letter-spacing: .3px;
  border-radius: var(--radius_sm) !important;
  transition: background .2s, transform .15s, box-shadow .2s;
  box-shadow: 0 3px 12px rgba(93,64,55,.28);
}
.btn-primary:hover,
.btn_buy:hover,
a.btn_buy:hover,
.order-btn:hover {
  background: var(--cta_hover_color) !important;
  border-color: var(--cta_hover_color) !important;
  transform: translateY(-1px);
  box-shadow: 0 5px 18px rgba(93,64,55,.36);
}
.btn-primary:active,
.btn_buy:active { transform: translateY(0); }

.btn-secondary,
.btn-outline-primary {
  background: transparent !important;
  border: 2px solid var(--cta_color) !important;
  color: var(--cta_color) !important;
  font-weight: 700;
  border-radius: var(--radius_sm) !important;
  transition: all .2s;
}
.btn-secondary:hover,
.btn-outline-primary:hover {
  background: var(--cta_color) !important;
  color: #fff !important;
}

.btn-accent, .btn-rose, .btn-pink {
  background: linear-gradient(135deg, #A1887F 0%, #795548 100%) !important;
  border: none !important;
  color: #fff !important;
  font-weight: 700;
  border-radius: var(--radius_sm) !important;
  box-shadow: 0 3px 14px rgba(93,64,55,.28);
  transition: all .22s;
}
.btn-accent:hover, .btn-rose:hover, .btn-pink:hover {
  background: linear-gradient(135deg, #795548 0%, #5D4037 100%) !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(93,64,55,.38);
  color: #fff !important;
}

.btn-gold {
  background: linear-gradient(135deg, #A1887F 0%, #795548 100%) !important;
  border: none !important;
  color: #fff !important;
  font-weight: 700;
  border-radius: var(--radius_sm) !important;
  transition: all .2s;
}
.btn-gold:hover {
  background: linear-gradient(135deg, #795548 0%, #5D4037 100%) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

/* ---------- 3. HEADER ---------- */
header, .main_header, nav.navbar,
.header-wrapper, .site-header {
  background: var(--primary_color) !important;
  box-shadow: 0 2px 16px rgba(62,39,35,.30) !important;
}

.top_bar, .top-bar, .announcement-bar {
  background: #3E2723 !important;
  color: rgba(255,255,255,.82) !important;
  font-size: .78rem;
  letter-spacing: .3px;
}
.top_bar a, .top-bar a {
  color: #FFCCBC !important;
  font-weight: 600;
}
.top_bar a:hover, .top-bar a:hover {
  color: #fff !important;
}

/* Logo — white on dark brown header */
.navbar-brand img, .site-logo img, .header-logo img {
  filter: brightness(0) invert(1);
}

/* Nav links — white text on dark brown */
.navbar-nav .nav-link,
header a:not(.btn),
.main_header a:not(.btn) {
  color: rgba(255,255,255,.88) !important;
  font-weight: 500;
  font-size: .9rem;
  transition: color .15s;
}
.navbar-nav .nav-link:hover,
header a:not(.btn):hover {
  color: #FFCCBC !important;
}

/* Cart icon badge */
.cart-icon-wrap, .header-cart {
  position: relative;
  color: #fff;
}
.cart-icon-wrap .count, .header-cart .cart-count {
  background: #FFCCBC;
  color: #5D4037;
  min-width: 18px; height: 18px;
  font-size: .62rem;
  font-weight: 800;
  border-radius: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
  position: absolute;
  top: -7px; right: -7px;
  border: 2px solid var(--primary_color);
  line-height: 1;
}

/* ---------- 4. SEARCH BAR ---------- */
.search_bar, .header-search, .search-form-wrap {
  background: rgba(255,255,255,.13) !important;
  border-radius: 50px !important;
  border: 1.5px solid rgba(255,204,188,.38) !important;
  overflow: visible;
  position: relative;
  transition: border-color .2s, box-shadow .2s;
}
.search_bar:focus-within,
.header-search:focus-within {
  border-color: #FFCCBC !important;
  box-shadow: 0 0 0 3px rgba(255,204,188,.22) !important;
  background: rgba(255,255,255,.20) !important;
}

.search_name, input.search-input {
  background: transparent !important;
  border: none !important;
  color: #fff !important;
  font-family: 'Nunito', sans-serif;
  font-size: .92rem;
  caret-color: #FFCCBC;
}
.search_name::placeholder { color: rgba(255,255,255,.52) !important; }
.search_name:focus { box-shadow: none !important; outline: none; }

.search_bar .btn, .search-submit-btn {
  background: var(--cta_color) !important;
  border: none !important;
  color: #fff !important;
  border-radius: 0 50px 50px 0 !important;
  padding: 0 20px !important;
  font-weight: 700;
  font-size: .88rem;
  transition: background .2s;
}
.search_bar .btn:hover { background: var(--cta_hover_color) !important; }

.search_bar select, .search-cat-select {
  background: rgba(255,255,255,.10) !important;
  border: none !important;
  border-right: 1px solid rgba(255,204,188,.30) !important;
  color: rgba(255,255,255,.82) !important;
  font-size: .82rem;
}

/* ---------- 5. LIVE SEARCH DROPDOWN ---------- */
#statuslive {
  position: absolute;
  top: calc(100% + 8px);
  left: 0; right: 0;
  background: #fff;
  border-radius: var(--radius_md);
  box-shadow: 0 8px 32px rgba(62,39,35,.18);
  border: 1px solid #D7CCC8;
  z-index: 9999;
  overflow: hidden;
  max-height: 420px;
  overflow-y: auto;
}
#statuslive::-webkit-scrollbar { width: 5px; }
#statuslive::-webkit-scrollbar-track { background: #FFF8F5; }
#statuslive::-webkit-scrollbar-thumb { background: #A1887F; border-radius: 4px; }

#statuslive ul { list-style: none; margin: 0; padding: 6px 0; }
#statuslive ul li { border-bottom: 1px solid #FFF0EA; }
#statuslive ul li:last-child { border-bottom: none; }

#statuslive ul li a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  color: var(--text_primary) !important;
  text-decoration: none;
  font-size: .87rem;
  transition: background .14s;
}
#statuslive ul li a:hover {
  background: #FFF3EF;
  color: var(--primary_color) !important;
}
#statuslive ul li a img {
  width: 44px; height: 44px;
  object-fit: cover;
  border-radius: var(--radius_sm);
  flex-shrink: 0;
  border: 1px solid #D7CCC8;
}
#statuslive ul li a .ls-name {
  font-weight: 700;
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--text_primary);
}
#statuslive ul li a .ls-price {
  color: #BF360C;
  font-weight: 800;
  font-size: .85rem;
  white-space: nowrap;
}

/* ---------- 6. HOMEPAGE BANNERS ---------- */
.main-banner, .home_banner, .banner-section, .main-slider {
  border-radius: var(--radius_md);
  overflow: hidden;
}

.promo_strip, .offer-strip, .promo-bar {
  background: linear-gradient(135deg, #3E2723 0%, #795548 50%, #FFCCBC 100%);
  color: #fff;
  text-align: center;
  padding: 9px;
  font-size: .83rem;
  font-weight: 700;
  letter-spacing: .5px;
}

.section-title, .section-heading {
  font-family: 'Playfair Display', serif;
  font-size: 1.55rem;
  font-weight: 700;
  color: var(--text_primary);
  position: relative;
  margin-bottom: 4px;
}
.section-title::after, .section-heading::after {
  content: '';
  display: block;
  width: 44px; height: 3px;
  background: linear-gradient(90deg, #A1887F, #FFCCBC);
  border-radius: 2px;
  margin-top: 8px;
}
.section-subtitle {
  color: var(--text_secondary);
  font-size: .88rem;
  margin-top: 4px;
}

/* ---------- 7. CATEGORY SECTION ---------- */
.cat_item, .category-card, .cat-box {
  background: #fff !important;
  border-radius: var(--radius_md) !important;
  box-shadow: var(--shadow_sm) !important;
  border: 1.5px solid #D7CCC8 !important;
  transition: transform .22s, box-shadow .22s, border-color .22s;
  overflow: hidden;
  text-align: center;
  cursor: pointer;
}
.cat_item:hover, .category-card:hover, .cat-box:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow_md) !important;
  border-color: #FFCCBC !important;
}
.cat_item img, .category-card img { width: 100%; object-fit: cover; }
.cat_item h6, .cat_item .cat-name,
.category-card .name {
  font-family: 'Nunito', sans-serif;
  font-weight: 700;
  font-size: .8rem;
  color: var(--text_primary);
  padding: 8px 6px;
  margin: 0;
}

.cat-filter-pill, .filter-pill {
  background: #FFF3EF;
  color: var(--text_primary);
  border: 1.5px solid #D7CCC8;
  border-radius: 50px;
  padding: 5px 16px;
  font-size: .82rem;
  font-weight: 600;
  cursor: pointer;
  transition: all .2s;
  white-space: nowrap;
}
.cat-filter-pill:hover, .cat-filter-pill.active,
.filter-pill:hover, .filter-pill.active {
  background: var(--secondary_color);
  color: #fff;
  border-color: var(--secondary_color);
}

/* ---------- 8. PRODUCT CARDS ---------- */
.product_card, .pro_card, .card.product-card {
  background: var(--card_bg) !important;
  border-radius: var(--radius_md) !important;
  border: 1.5px solid #D7CCC8 !important;
  box-shadow: var(--shadow_sm);
  transition: transform .22s, box-shadow .22s, border-color .22s;
  overflow: hidden;
  position: relative;
  height: 100%;
}
.product_card:hover, .pro_card:hover, .card.product-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow_md);
  border-color: #FFCCBC !important;
}

.product_card .img-wrap,
.product_card .pro-img,
.pro_card .img-wrap {
  overflow: hidden;
  background: #FFF8F5;
}
.product_card img, .pro_card img {
  transition: transform .38s ease;
  width: 100%;
  object-fit: cover;
}
.product_card:hover img, .pro_card:hover img { transform: scale(1.06); }

.product_card .card-body, .product_card .pro-info,
.pro_card .card-body {
  padding: 12px 14px 14px;
}

.product_card .pro-name, .product_card .product-title,
.pro_card .pro-title {
  font-family: 'Nunito', sans-serif;
  font-weight: 700;
  font-size: .87rem;
  color: var(--text_primary);
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 6px;
}

.product_card .price, .product_card .selling-price,
.pro_card .pro-price {
  color: #BF360C !important;
  font-weight: 800;
  font-size: 1rem;
}
.product_card .mrp, .product_card .old-price,
.pro_card .mrp {
  color: var(--text_secondary) !important;
  text-decoration: line-through;
  font-size: .78rem;
}
.product_card .discount-pct, .discount-badge {
  background: linear-gradient(135deg, #795548, #A1887F);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  padding: 2px 8px;
  border-radius: 50px;
}

.product_card .btn-cart, .pro_card .add-to-cart {
  background: var(--cta_color) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--radius_sm) !important;
  font-weight: 700;
  font-size: .8rem;
  padding: 7px 14px;
  width: 100%;
  transition: background .2s, transform .14s;
}
.product_card .btn-cart:hover, .pro_card .add-to-cart:hover {
  background: var(--cta_hover_color) !important;
  transform: translateY(-1px);
}

.wishlist-btn, .btn-wishlist {
  position: absolute;
  top: 10px; right: 10px;
  background: rgba(255,255,255,.90);
  border: none;
  width: 32px; height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #A1887F;
  font-size: .9rem;
  box-shadow: 0 2px 8px rgba(62,39,35,.12);
  transition: all .2s;
  cursor: pointer;
  z-index: 2;
}
.wishlist-btn:hover { background: #795548; color: #fff; }

.badge-overlay {
  position: absolute;
  top: 10px; left: 10px;
  z-index: 2;
}
.out-of-stock-badge {
  background: rgba(62,39,35,.78);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  padding: 3px 10px;
  border-radius: 50px;
  letter-spacing: .4px;
}

/* ---------- 9. OFFER BADGES ---------- */
.badge-offer, .offer-tag, .badge-sale {
  background: linear-gradient(135deg, #795548, #A1887F);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  padding: 3px 10px;
  border-radius: 50px;
  display: inline-block;
  letter-spacing: .3px;
  box-shadow: 0 2px 8px rgba(93,64,55,.28);
}
.badge-new {
  background: #FFCCBC;
  color: #5D4037;
  font-size: .68rem;
  font-weight: 800;
  padding: 3px 10px;
  border-radius: 50px;
  display: inline-block;
}
.badge-hot {
  background: linear-gradient(135deg, #5D4037, #795548);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  padding: 3px 10px;
  border-radius: 50px;
  display: inline-block;
}

/* ---------- 10. SINGLE PRODUCT PAGE ---------- */
.single-product-title, .product-detail h1, .product-name-h1 {
  font-family: 'Playfair Display', serif;
  font-size: 1.55rem;
  font-weight: 700;
  color: var(--text_primary);
  line-height: 1.35;
}
.single-product-price, .pro-selling-price {
  font-size: 1.75rem;
  font-weight: 800;
  color: #BF360C;
}
.single-product-mrp, .pro-old-price {
  font-size: .95rem;
  color: var(--text_secondary);
  text-decoration: line-through;
}
.product-meta-row {
  padding: 10px 0;
  border-top: 1px solid #D7CCC8;
  font-size: .87rem;
  color: var(--text_secondary);
}
.product-meta-row span { color: var(--text_primary); font-weight: 700; }

.qty-wrap {
  display: inline-flex;
  align-items: center;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_sm);
  overflow: hidden;
}
.qty-wrap button {
  background: #FFF3EF;
  border: none;
  padding: 7px 16px;
  color: var(--text_primary);
  font-weight: 800;
  font-size: 1rem;
  cursor: pointer;
  transition: background .15s;
  line-height: 1;
}
.qty-wrap button:hover { background: #FFCCBC; }
.qty-wrap input {
  border: none;
  border-left: 1px solid #D7CCC8;
  border-right: 1px solid #D7CCC8;
  text-align: center;
  width: 52px;
  font-weight: 700;
  color: var(--text_primary);
  font-size: 1rem;
}

.thumb-item {
  border: 2px solid #D7CCC8;
  border-radius: var(--radius_sm);
  cursor: pointer;
  transition: border-color .15s;
  overflow: hidden;
}
.thumb-item:hover, .thumb-item.active { border-color: var(--cta_color); }

.star-rating .star { color: #F9A825; }
.star-rating .star.empty { color: #D7CCC8; }

/* ---------- 11. MINI CART / CART BAG ---------- */
.right-cart-panel, .cart-drawer, .cart-sidebar {
  background: #fff;
  border-left: 1px solid #D7CCC8;
  box-shadow: var(--shadow_lg);
}
.right-cart-panel .cart-item {
  border-bottom: 1px solid #FFF0EA;
  padding: 12px 0;
}
.right-cart-panel .cart-total {
  background: linear-gradient(145deg, #FFF8F5, #FFF3EF);
  border-radius: var(--radius_sm);
  padding: 14px;
  font-weight: 700;
  color: var(--text_primary);
}
.right-cart-panel .cart-total .amount { color: #BF360C; font-size: 1.1rem; }

/* ---------- 12. FOOTER ---------- */
footer, .main-footer, .footer-wrapper, .site-footer {
  background: #3E2723 !important;
  color: rgba(255,255,255,.82) !important;
  border-top: 3px solid #795548 !important;
}

footer h5, footer h6, .footer-heading {
  font-family: 'Playfair Display', serif !important;
  color: #FFCCBC !important;
  font-size: .95rem !important;
  font-weight: 700 !important;
  letter-spacing: .4px;
  margin-bottom: 16px;
  text-transform: none;
}

footer a, .footer-link {
  color: rgba(255,255,255,.62) !important;
  font-size: .84rem;
  text-decoration: none;
  transition: color .15s;
  display: block;
  line-height: 2.1;
}
footer a:hover, .footer-link:hover { color: #FFCCBC !important; }

footer p, footer li, footer span:not(.badge) {
  color: rgba(255,255,255,.68) !important;
  font-size: .84rem;
}

.footer-bottom {
  border-top: 1px solid rgba(255,255,255,.10) !important;
  padding: 14px 0;
  font-size: .78rem;
  color: rgba(255,255,255,.42) !important;
  text-align: center;
}

.footer-social a {
  width: 34px; height: 34px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.68) !important;
  margin-right: 6px;
  margin-bottom: 6px;
  transition: all .2s;
  font-size: .85rem;
}
.footer-social a:hover {
  background: #795548;
  border-color: #795548;
  color: #fff !important;
  transform: translateY(-2px);
}

/* ---------- 13. CATEGORY PAGE ---------- */
.category-page-header, .cat-page-hero {
  background: linear-gradient(135deg, #5D4037 0%, #795548 100%);
  color: #fff;
  border-radius: var(--radius_lg);
  padding: 28px 24px;
  margin-bottom: 22px;
  position: relative;
  overflow: hidden;
}
.category-page-header::before {
  content: '';
  position: absolute;
  top: -40px; right: -40px;
  width: 140px; height: 140px;
  background: rgba(255,204,188,.12);
  border-radius: 50%;
}
.category-page-header h1 {
  font-family: 'Playfair Display', serif;
  color: #fff !important;
  font-size: 1.7rem;
  margin-bottom: 5px;
}
.category-page-header p {
  color: rgba(255,255,255,.75);
  font-size: .88rem;
  margin: 0;
}

.sort-filter-bar {
  background: #fff;
  border: 1px solid #D7CCC8;
  border-radius: var(--radius_sm);
  padding: 10px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  box-shadow: var(--shadow_sm);
}
.sort-filter-bar select {
  border: 1px solid #D7CCC8;
  border-radius: var(--radius_sm);
  padding: 5px 12px;
  color: var(--text_primary);
  font-size: .85rem;
  background: #FFF8F5;
  font-family: 'Nunito', sans-serif;
}

/* ---------- 14. ALL CATEGORY PAGE ---------- */
.all-cat-item {
  background: #fff;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_md);
  padding: 18px 12px;
  text-align: center;
  transition: all .22s;
  box-shadow: var(--shadow_sm);
  cursor: pointer;
}
.all-cat-item:hover {
  border-color: #FFCCBC;
  box-shadow: var(--shadow_md);
  transform: translateY(-4px);
}
.all-cat-item img {
  width: 60px; height: 60px;
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid #D7CCC8;
  margin-bottom: 10px;
  transition: border-color .2s;
}
.all-cat-item:hover img { border-color: #A1887F; }
.all-cat-item span, .all-cat-item p {
  font-size: .82rem;
  font-weight: 700;
  color: var(--text_primary);
  margin: 0;
}

/* ---------- 15. CART PAGE ---------- */
.cart-table thead th {
  background: #FFF3EF;
  color: var(--text_primary);
  font-weight: 800;
  border-color: #D7CCC8;
  text-transform: uppercase;
  font-size: .75rem;
  letter-spacing: .7px;
  font-family: 'Nunito', sans-serif;
}
.cart-table tbody tr { border-color: #D7CCC8; }
.cart-table tbody tr:hover { background: #FFF8F5; }

.cart-summary-box {
  background: #fff;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_md);
  padding: 22px;
  box-shadow: var(--shadow_sm);
}
.cart-summary-box .summary-row {
  display: flex;
  justify-content: space-between;
  padding: 9px 0;
  border-bottom: 1px solid #FFF3EF;
  font-size: .9rem;
  color: var(--text_secondary);
}
.cart-summary-box .summary-total {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--text_primary);
  border-bottom: none;
  padding-top: 14px;
}
.cart-summary-box .summary-total span { color: #BF360C; }

.coupon-wrap { display: flex; gap: 8px; }
.coupon-wrap input {
  border: 1.5px solid #D7CCC8 !important;
  border-radius: var(--radius_sm) !important;
  background: #FFF8F5;
  flex: 1;
}
.coupon-wrap input:focus {
  border-color: var(--cta_color) !important;
  box-shadow: 0 0 0 3px rgba(121,85,72,.10) !important;
}

/* ---------- 16. CHECKOUT PAGE ---------- */
.checkout-card {
  background: #fff;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_md);
  padding: 24px;
  margin-bottom: 20px;
  box-shadow: var(--shadow_sm);
}
.checkout-card h4, .checkout-card h5 {
  font-family: 'Playfair Display', serif;
  font-size: 1.1rem;
  color: var(--primary_color);
  border-bottom: 2px solid #FFCCBC;
  padding-bottom: 12px;
  margin-bottom: 20px;
}

.checkout-card .form-control,
.checkout-card .form-select,
.checkout-card textarea {
  border: 1.5px solid #D7CCC8 !important;
  border-radius: var(--radius_sm) !important;
  color: var(--text_primary);
  font-family: 'Nunito', sans-serif;
  background: #FFF8F5;
  transition: border-color .2s, box-shadow .2s;
}
.checkout-card .form-control:focus,
.checkout-card .form-select:focus,
.checkout-card textarea:focus {
  border-color: var(--cta_color) !important;
  box-shadow: 0 0 0 3px rgba(121,85,72,.10) !important;
  background: #fff;
}

.order-summary-panel {
  background: linear-gradient(145deg, #FFF8F5, #FFF3EF);
  border: 1.5px solid #FFCCBC;
  border-radius: var(--radius_md);
  padding: 22px;
  position: sticky;
  top: 20px;
}
.order-summary-panel h5 {
  font-family: 'Playfair Display', serif;
  color: var(--primary_color);
  font-size: 1.05rem;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid #FFCCBC;
}
.order-summary-panel .order-item {
  display: flex;
  justify-content: space-between;
  font-size: .86rem;
  padding: 6px 0;
  border-bottom: 1px solid #D7CCC8;
  color: var(--text_secondary);
}
.order-summary-panel .order-total {
  font-weight: 800;
  font-size: 1rem;
  color: var(--text_primary);
  border-bottom: none;
  padding-top: 12px;
}
.order-summary-panel .order-total span { color: #BF360C; }

.payment-option {
  border: 2px solid #D7CCC8;
  border-radius: var(--radius_sm);
  padding: 14px 16px;
  cursor: pointer;
  transition: all .2s;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 12px;
  background: #fff;
}
.payment-option:hover { border-color: #A1887F; background: #FFF8F5; }
.payment-option.selected {
  border-color: var(--cta_color);
  background: #FFF8F5;
  box-shadow: 0 0 0 2px rgba(121,85,72,.12);
}
.payment-option img { height: 28px; object-fit: contain; }
.payment-option span { font-weight: 700; font-size: .88rem; color: var(--text_primary); }

/* ---------- 17. LOGIN / REGISTER ---------- */
.auth-card, .login-card, .register-card {
  background: #fff;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_lg);
  padding: 32px;
  box-shadow: var(--shadow_md);
  max-width: 440px;
  margin: 32px auto;
}
.auth-card h3, .auth-card h2 {
  font-family: 'Playfair Display', serif;
  font-size: 1.55rem;
  color: var(--primary_color);
  margin-bottom: 4px;
}
.auth-card .subtitle { color: var(--text_secondary); font-size: .87rem; margin-bottom: 22px; }
.auth-card .form-control {
  border: 1.5px solid #D7CCC8 !important;
  border-radius: var(--radius_sm) !important;
  background: #FFF8F5;
  color: var(--text_primary);
  transition: border-color .2s;
}
.auth-card .form-control:focus {
  border-color: var(--cta_color) !important;
  box-shadow: 0 0 0 3px rgba(121,85,72,.10) !important;
  background: #fff;
}
.auth-card .divider {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--text_secondary);
  font-size: .8rem;
  margin: 16px 0;
}
.auth-card .divider::before,
.auth-card .divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: #D7CCC8;
}

/* ---------- 18. BREADCRUMBS ---------- */
.breadcrumb {
  background: transparent !important;
  padding: 0 !important;
  margin-bottom: 14px;
  font-size: .8rem;
}
.breadcrumb-item a { color: var(--cta_color); text-decoration: none; font-weight: 500; }
.breadcrumb-item a:hover { text-decoration: underline; }
.breadcrumb-item.active { color: var(--text_secondary); }
.breadcrumb-item + .breadcrumb-item::before {
  content: "›" !important;
  color: #A1887F;
  font-weight: 700;
  font-size: 1rem;
}

/* ---------- 19. TRUST BADGES ---------- */
.trust-bar, .trust-badges, .feature-bar {
  background: #fff;
  border: 1px solid #D7CCC8;
  border-radius: var(--radius_md);
  padding: 16px 20px;
  box-shadow: var(--shadow_sm);
}
.trust-item { display: flex; align-items: center; gap: 10px; }
.trust-item .t-icon {
  width: 38px; height: 38px;
  background: linear-gradient(135deg, #FFF3EF, #FFCCBC);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--cta_color);
  font-size: 1rem;
  flex-shrink: 0;
}
.trust-item .t-label { font-weight: 700; color: var(--text_primary); font-size: .82rem; display: block; line-height: 1.2; }
.trust-item .t-sub { font-size: .73rem; color: var(--text_secondary); display: block; }

/* ---------- 20. BRAND BOXES ---------- */
.brand-box, .brand-item {
  background: #fff;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_sm);
  padding: 14px;
  text-align: center;
  transition: all .22s;
  filter: grayscale(25%);
  opacity: .88;
}
.brand-box:hover, .brand-item:hover {
  border-color: #A1887F;
  filter: grayscale(0);
  opacity: 1;
  box-shadow: var(--shadow_sm);
  transform: translateY(-2px);
}

/* ---------- 21. SEARCH RESULTS PAGE ---------- */
.search-results-bar {
  background: linear-gradient(135deg, #FFF3EF, #FFF8F5);
  border: 1px solid #D7CCC8;
  border-radius: var(--radius_md);
  padding: 14px 18px;
  margin-bottom: 18px;
}
.search-results-bar h4, .search-results-bar h5 {
  font-family: 'Playfair Display', serif;
  color: var(--primary_color);
  font-size: 1.15rem;
  margin: 0;
}
.search-results-bar .keyword { color: #795548; font-weight: 800; }

/* ---------- 22. MOBILE MENU ---------- */
.mobile-nav, .offcanvas, .mobile-header-menu {
  background: var(--primary_color) !important;
}
.mobile-nav .nav-link,
.offcanvas a:not(.btn) {
  color: rgba(255,255,255,.88) !important;
  border-bottom: 1px solid rgba(255,255,255,.07);
  padding: 12px 16px !important;
}
.mobile-nav .nav-link:hover,
.offcanvas a:not(.btn):hover {
  background: rgba(255,204,188,.12);
  color: #FFCCBC !important;
}
.offcanvas-header {
  background: #3E2723 !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
}
.offcanvas-title, .offcanvas-header h5 {
  color: #FFCCBC !important;
  font-family: 'Playfair Display', serif;
}
.btn-close-white { filter: brightness(0) invert(1) !important; }

/* ---------- 23. FILTER SIDEBAR ---------- */
.filter-sidebar {
  background: #fff;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_md);
  padding: 18px;
  box-shadow: var(--shadow_sm);
}
.filter-sidebar .filter-group-title {
  font-weight: 800;
  color: var(--text_primary);
  text-transform: uppercase;
  font-size: .72rem;
  letter-spacing: .9px;
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 2px solid #D7CCC8;
}
.filter-sidebar .form-check-input:checked {
  background-color: var(--cta_color);
  border-color: var(--cta_color);
}
.filter-sidebar .form-range::-webkit-slider-thumb { background: var(--cta_color); }

/* ---------- 24. PROFILE / DASHBOARD ---------- */
.profile-card {
  background: #fff;
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_md);
  padding: 24px;
  box-shadow: var(--shadow_sm);
}
.profile-avatar {
  width: 72px; height: 72px;
  background: linear-gradient(135deg, #A1887F, #795548);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 700;
  border: 3px solid #fff;
  box-shadow: 0 3px 12px rgba(93,64,55,.25);
}
.profile-nav .nav-link {
  color: var(--text_secondary) !important;
  font-weight: 600;
  border-radius: var(--radius_sm) !important;
  padding: 9px 14px !important;
  margin-bottom: 3px;
  transition: all .15s;
}
.profile-nav .nav-link:hover,
.profile-nav .nav-link.active {
  background: #FFF3EF !important;
  color: var(--primary_color) !important;
}
.profile-nav .nav-link.active {
  font-weight: 700;
  box-shadow: inset 3px 0 0 var(--cta_color);
}

.order-status {
  padding: 3px 12px;
  border-radius: 50px;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .3px;
}
.order-status.pending   { background: #FFF3CD; color: #856404; }
.order-status.processing{ background: #FFF3EF; color: var(--primary_color); }
.order-status.shipped   { background: #E8F5E9; color: #2E7D32; }
.order-status.delivered { background: #E8F5E9; color: #1B5E20; }
.order-status.cancelled { background: #FFEBEE; color: #C62828; }

/* ---------- 25. THANK YOU / ORDER SUCCESS ---------- */
.thankyou-card {
  background: #fff;
  border: 2px solid #FFCCBC;
  border-radius: var(--radius_lg);
  padding: 40px 32px;
  text-align: center;
  box-shadow: var(--shadow_md);
  max-width: 560px;
  margin: 0 auto;
}
.thankyou-icon {
  width: 72px; height: 72px;
  background: linear-gradient(135deg, #A1887F, #5D4037);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  margin: 0 auto 20px;
  color: #fff;
}
.thankyou-card h2 { font-family: 'Playfair Display', serif; color: var(--primary_color); font-size: 1.7rem; }
.thankyou-card p { color: var(--text_secondary); font-size: .9rem; }

/* ---------- 26. FORM ELEMENTS (global) ---------- */
.form-control, .form-select {
  border: 1.5px solid #D7CCC8;
  border-radius: var(--radius_sm) !important;
  color: var(--text_primary);
  font-family: 'Nunito', sans-serif;
  background: #FFF8F5;
  transition: border-color .18s, box-shadow .18s;
}
.form-control:focus, .form-select:focus {
  border-color: var(--cta_color) !important;
  box-shadow: 0 0 0 3px rgba(121,85,72,.10) !important;
  background: #fff;
}
.form-label { font-weight: 700; font-size: .84rem; color: var(--text_primary); margin-bottom: 5px; }

.alert-success { background: #F0FFF4; border-color: #86EFAC; color: #14532D; border-radius: var(--radius_sm); }
.alert-danger  { background: #FFF0F0; border-color: #FCA5A5; color: #7F1D1D; border-radius: var(--radius_sm); }
.alert-info    { background: #FFF8F5; border-color: #FFCCBC; color: #5D4037; border-radius: var(--radius_sm); }

/* ---------- 27. MOBILE RESPONSIVE ---------- */
@media (max-width: 992px) { .order-summary-panel { position: static; } }

@media (max-width: 768px) {
  body { font-size: .93rem; }
  .section-title, .section-heading { font-size: 1.3rem; }
  .category-page-header, .cat-page-hero { padding: 20px 16px; border-radius: var(--radius_md); }
  .category-page-header h1 { font-size: 1.3rem; }
  .single-product-title, .product-detail h1 { font-size: 1.25rem; }
  .single-product-price { font-size: 1.4rem; }
  .checkout-card { padding: 16px; }
  .auth-card { padding: 22px 16px; margin: 16px 8px; }
  .cart-summary-box { padding: 16px; }
  .order-summary-panel { padding: 16px; }
  .trust-bar { overflow-x: auto; }
  .trust-item { min-width: 130px; display: inline-flex; }
  footer h5, footer h6 { font-size: .88rem; }
}

@media (max-width: 576px) {
  .product_card .card-body, .pro_card .card-body { padding: 8px 10px 10px; }
  .product_card .pro-name { font-size: .8rem; }
  .product_card .price { font-size: .92rem; }
  .promo_strip { font-size: .76rem; padding: 8px; }
  .cart-table thead th { font-size: .68rem; }
  .thankyou-card { padding: 28px 16px; }
  .thankyou-card h2 { font-size: 1.4rem; }
}

/* ============================================================
   CATEGORY / SUBCATEGORY / SEARCH / BRAND PAGES
   ============================================================ */

body { background: var(--background_color) !important; }

.b_single_page_page {
  background: #FFF8F5;
  min-height: 60vh;
  padding-top: 8px;
  padding-bottom: 32px;
}
.b_single_page_page .container { background: transparent; }

/* ---- CATEGORY / BRAND HEADER BANNER ---- */
.cat_page_header {
  background: linear-gradient(135deg, #5D4037 0%, #795548 55%, #A1887F 100%);
  height: 200px !important;
  position: relative;
  overflow: hidden !important;
}
.cat_page_header::before {
  content: '';
  position: absolute;
  top: -50px; right: -50px;
  width: 180px; height: 180px;
  background: rgba(255,204,188,.12);
  border-radius: 50%;
  pointer-events: none;
}
.cat_page_header::after {
  content: '';
  position: absolute;
  bottom: -30px; left: -30px;
  width: 120px; height: 120px;
  background: rgba(215,204,200,.10);
  border-radius: 50%;
  pointer-events: none;
}

.cat_info {
  position: absolute !important;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background: linear-gradient(135deg,
    rgba(62,39,35,.72) 0%,
    rgba(93,64,55,.45) 50%,
    rgba(161,136,127,.10) 100%) !important;
  display: flex !important;
  align-items: center;
}

.category_name {
  font-family: 'Playfair Display', serif !important;
  color: #fff !important;
  font-size: 1.9rem !important;
  font-weight: 700 !important;
  text-shadow: 0 2px 14px rgba(62,39,35,.30);
  margin: 0 0 6px !important;
  line-height: 1.25;
}

.category_title {
  color: rgba(255,255,255,.80) !important;
  font-size: .9rem !important;
  margin: 0 !important;
  font-family: 'Nunito', sans-serif !important;
}

.cat_info .container > h1::after,
.cat_info h1.category_name::after {
  content: '';
  display: block;
  width: 44px; height: 3px;
  background: linear-gradient(90deg, #FFCCBC, #D7CCC8);
  border-radius: 2px;
  margin-top: 10px;
}

/* ---- BREADCRUMB / PAGE NAV ---- */
.page_nav_section {
  background: #FFF8F5 !important;
  border-bottom: 1px solid #D7CCC8;
  padding: 6px 0 !important;
}
.page_nav { display: flex !important; align-items: center; gap: 4px; flex-wrap: wrap; margin: 8px 0 !important; }

.pm_home, .pm_cat, .page_nav a {
  font-family: 'Nunito', sans-serif !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  color: var(--cta_color) !important;
  text-decoration: none !important;
  transition: color .15s;
}
.pm_home:hover, .pm_cat:hover, .page_nav a:hover { color: var(--primary_color) !important; }

.page_nav > i { color: #A1887F !important; font-size: .75rem !important; margin: 0 2px; }
.page_nav span { font-family: 'Nunito', sans-serif; font-size: .82rem; color: var(--text_secondary); }

/* ---- SUBCATEGORY STRIP ---- */
.sbb {
  background: #FFF3EF !important;
  padding: 18px 0 24px !important;
  border-bottom: 1px solid #D7CCC8;
}
.sbb h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: var(--primary_color) !important;
  margin-bottom: 14px !important;
}

.sbbl_box {
  background: #fff !important;
  border: 1.5px solid #D7CCC8 !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 8px rgba(62,39,35,.07) !important;
  padding: 0 !important;
  height: auto !important;
  overflow: hidden;
  transition: transform .2s, border-color .2s, box-shadow .2s;
  position: relative;
}
.sbbl_box:hover {
  border-color: #FFCCBC !important;
  box-shadow: 0 5px 18px rgba(62,39,35,.14) !important;
  transform: translateY(-4px);
}
.sbbl_box a { color: var(--text_primary) !important; text-decoration: none; display: block; }
.sbbl_box a img {
  width: 100% !important;
  height: 80px !important;
  object-fit: cover !important;
  border-radius: 10px 10px 0 0 !important;
  display: block;
}
.sbbl_box a h3,
.cat_cub_cat_headnig {
  font-family: 'Nunito', sans-serif !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  color: var(--text_primary) !important;
  text-align: center !important;
  padding: 7px 6px 8px !important;
  height: auto !important;
  min-height: unset !important;
  overflow: hidden !important;
  position: static !important;
  -webkit-transform: none !important;
  transform: none !important;
  top: auto !important; left: auto !important; width: auto !important;
  line-height: 1.3 !important;
  margin: 0 !important;
}

/* ---- SORT / FILTER BAR ---- */
.cb_menu_sec {
  background: #fff !important;
  border: 1px solid #D7CCC8 !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 8px rgba(62,39,35,.06) !important;
  padding: 2px 14px !important;
  margin-bottom: 14px !important;
}
.cb_h_menu_list li a {
  font-family: 'Nunito', sans-serif !important;
  font-size: .88rem !important;
  font-weight: 600 !important;
  color: var(--text_secondary) !important;
  line-height: 50px !important;
}
.cb_h_menu_list li:hover > a { color: var(--primary_color) !important; text-decoration: none !important; }

/* ---- PRODUCT CARDS (actual classes) ---- */
.c_hpp_single_pro {
  background: #fff !important;
  border: 1.5px solid #D7CCC8 !important;
  border-radius: 14px !important;
  box-shadow: 0 2px 10px rgba(62,39,35,.08) !important;
  transition: transform .22s, box-shadow .22s, border-color .22s !important;
  overflow: hidden;
}
.c_hpp_single_pro:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 7px 24px rgba(62,39,35,.16) !important;
  border-color: #FFCCBC !important;
}

.c_hpps_thumb {
  height: 220px !important;
  overflow: hidden;
  position: relative;
  background: #FFF8F5 !important;
}
.c_hpps_thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .38s ease !important;
}
.c_hpp_single_pro:hover .c_hpps_thumb img { transform: scale(1.07) !important; }

/* Slide-up Add to Cart */
.c_hp_add_cart, .cmn_add_cart_btn {
  background: var(--cta_color) !important;
  color: #fff !important;
  font-family: 'Nunito', sans-serif !important;
  font-weight: 700 !important;
  font-size: .8rem !important;
  letter-spacing: .2px;
  padding: 11px 0 !important;
  position: absolute !important;
  bottom: -56px !important;
  width: 100% !important;
  text-align: center;
  display: block !important;
  transition: bottom .25s ease !important;
}
.c_hpp_single_pro:hover .c_hp_add_cart,
.c_hpp_single_pro:hover .cmn_add_cart_btn { bottom: 0 !important; }
.c_hp_add_cart:hover, .cmn_add_cart_btn:hover {
  background: var(--cta_hover_color) !important;
  color: #fff !important;
  text-decoration: none !important;
}
.c_hp_add_cart img, .cmn_add_cart_btn img {
  width: 18px !important;
  height: 18px !important;
  margin-right: 8px !important;
  filter: brightness(0) invert(1);
}

.c_hpps_info { padding: 10px 12px 12px !important; }
.c_hpps_info .name {
  font-family: 'Nunito', sans-serif !important;
  font-weight: 700 !important;
  font-size: .86rem !important;
  color: var(--text_primary) !important;
  line-height: 1.45 !important;
  height: auto !important;
  max-height: 2.5em;
  margin-top: 0 !important;
  margin-bottom: 6px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.c_hpps_info .name:hover { color: var(--cta_color) !important; }
.c_hpps_tags { height: auto !important; display: flex; align-items: center; gap: 6px; }
.c_hpps_info .price {
  color: #BF360C !important;
  font-weight: 800 !important;
  font-size: .98rem !important;
  line-height: 1.3 !important;
  width: auto !important;
  float: none !important;
  display: inline !important;
}

.c_hp_weight {
  background: #FFF3EF !important;
  padding: 2px 9px !important;
  border-radius: 50px !important;
}
.c_hp_weight span {
  color: var(--cta_color) !important;
  font-size: .72rem !important;
  font-weight: 700 !important;
}

/* ---- SEARCH RESULT PAGE ---- */
.b_single_page_page .cb_menu_sec span b,
.b_single_page_page .cb_menu_sec span { font-family: 'Nunito', sans-serif; color: var(--text_primary); font-size: .88rem; }
.b_single_page_page .cb_menu_sec span b { color: #795548; font-weight: 800; }

/* ---- FILTER SIDEBAR ---- */
.category_left_sideber {
  background: #fff !important;
  border: 1.5px solid #D7CCC8 !important;
  border-radius: 14px !important;
  padding: 18px !important;
  box-shadow: 0 2px 8px rgba(62,39,35,.07) !important;
}
.filter_title {
  font-family: 'Nunito', sans-serif !important;
  font-weight: 800 !important;
  color: var(--primary_color) !important;
  font-size: .82rem !important;
  text-transform: uppercase;
  letter-spacing: .7px;
  margin-bottom: 12px !important;
  padding-bottom: 8px;
  border-bottom: 2px solid #D7CCC8;
}

/* ---- LOAD MORE ---- */
.cat_load_more,
button.s_add_card.cat_load_more {
  background: transparent !important;
  border: 2px solid var(--cta_color) !important;
  color: var(--cta_color) !important;
  font-family: 'Nunito', sans-serif !important;
  font-weight: 700 !important;
  font-size: .88rem !important;
  border-radius: 50px !important;
  padding: 10px 32px !important;
  transition: all .2s;
  letter-spacing: .3px;
}
.cat_load_more:hover,
button.s_add_card.cat_load_more:hover {
  background: var(--cta_color) !important;
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(93,64,55,.25);
}

/* ---- TABS ---- */
.nav-tabs .nav-link {
  font-family: 'Nunito', sans-serif;
  font-weight: 600;
  font-size: .88rem;
  color: var(--text_secondary) !important;
  border: 1.5px solid transparent !important;
  border-radius: 8px 8px 0 0 !important;
  padding: 8px 18px !important;
  transition: all .15s;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-link:hover {
  color: var(--primary_color) !important;
  border-color: #D7CCC8 !important;
  background: #FFF8F5 !important;
}
.nav-tabs .nav-link.active { border-bottom-color: #FFF8F5 !important; }
.nav-tabs { border-bottom: 2px solid #D7CCC8 !important; }

/* ---- MOBILE (category pages) ---- */
@media (max-width: 768px) {
  .cat_page_header { height: 160px !important; }
  .category_name { font-size: 1.4rem !important; }
  .sbb { padding: 14px 0 18px !important; }
  .c_hpps_thumb { height: 160px !important; }
  .c_hpps_info .name { font-size: .80rem !important; }
  .c_hpps_info .price { font-size: .9rem !important; }
}
@media (max-width: 480px) {
  .cat_page_header { height: 140px !important; }
  .category_name { font-size: 1.2rem !important; }
  .c_hpps_thumb { height: 140px !important; }
}

/* ---- FOOTER SEO STRIP ---- */
.footer-seo-wrap {
  background: #3E2723;
  border-top: 1px solid rgba(255,255,255,.08);
  padding: 14px 0;
}
.footer-seo-lead { color: rgba(255,255,255,.68) !important; font-size: .83rem; line-height: 1.65; margin: 0; }
.footer-seo-lead strong { color: #FFCCBC !important; font-weight: 700; }

/* ============================================================
   COPYRIGHT FOOTER BAR
   ============================================================ */
.copyright_footer {
  background: #2D1B12 !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  padding: 20px 0 0 !important;
}

.payment_logo h3,
.social_links h3 {
  font-family: 'Nunito', sans-serif !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .8px !important;
  color: #FFCCBC !important;
  margin-bottom: 12px !important;
}

.payment_logo ul {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 0 !important;
  margin: 0 0 16px !important;
}
.payment_logo ul li {
  list-style: none !important;
  float: none !important;
  margin: 0 !important;
  background: rgba(255,255,255,.92);
  border-radius: 6px;
  padding: 3px 8px;
  display: flex;
  align-items: center;
}
.payment_logo ul li img { height: 22px !important; width: auto; display: block; margin: 0 !important; }

.social_links ul {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 !important;
  margin: 0 0 16px !important;
}
.social_links ul li { list-style: none !important; float: none !important; margin: 0 !important; }
.social_links ul li a {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.08) !important;
  border: 1.5px solid rgba(255,255,255,.18) !important;
  color: rgba(255,255,255,.80) !important;
  font-size: .95rem !important;
  line-height: 1 !important;
  transition: all .2s !important;
  text-decoration: none !important;
}
.social_links ul li a:hover {
  background: #795548 !important;
  border-color: #795548 !important;
  color: #fff !important;
  transform: translateY(-2px);
}
.social_links ul li a i { color: inherit !important; font-size: .95rem !important; }

.copyright { border-top: 1px solid rgba(255,255,255,.07) !important; margin-top: 4px; }
.copyright p {
  color: rgba(255,255,255,.38) !important;
  font-size: .75rem !important;
  text-align: center;
  padding: 10px 0 !important;
  margin: 0 !important;
}
.copyright p a { color: rgba(255,255,255,.52) !important; text-decoration: none; }
.copyright p a:hover { color: #FFCCBC !important; }

@media (max-width: 768px) {
  .payment_logo ul li img { height: 18px !important; }
  .social_links ul li a { width: 32px !important; height: 32px !important; font-size: .85rem !important; }
}

/* ============================================================
   PRODUCT PAGE — Buy Now & WhatsApp Buttons
   ============================================================ */
.sp_cart_btn .sp_buy_now {
  background: #fff !important;
  color: var(--cta_color) !important;
  border: 2px solid var(--cta_color) !important;
  font-weight: 700 !important;
  transition: background .22s, color .22s, box-shadow .22s, transform .15s !important;
}
.sp_cart_btn .sp_buy_now:hover {
  background: var(--cta_color) !important;
  color: #fff !important;
  box-shadow: 0 6px 20px rgba(93,64,55,.25) !important;
  transform: translateY(-2px) !important;
}
.sp_cart_btn .sp_buy_now:active { transform: translateY(0) !important; }

.whatsapp-order-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  background: #25D366;
  color: #fff !important;
  font-weight: 700;
  font-size: .92rem;
  padding: 12px 20px;
  border-radius: var(--radius_sm);
  text-decoration: none !important;
  box-shadow: 0 3px 12px rgba(37,211,102,.28);
  transition: background .22s, transform .15s, box-shadow .22s;
}
.whatsapp-order-btn:hover {
  background: #128C7E !important;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(37,211,102,.38);
  text-decoration: none !important;
}
.whatsapp-order-btn:active { transform: translateY(0); }
.whatsapp-order-btn .wa-icon { font-size: 1.2rem; flex-shrink: 0; }
.whatsapp-order-btn span { flex: 1; text-align: center; }

@media (max-width: 576px) {
  .whatsapp-order-btn { font-size: .84rem; padding: 11px 14px; gap: 8px; }
}

/* ============================================================
   FOOTER — Useful Links 2-column grid
   ============================================================ */
.fm_list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 12px;
}
.fm_list li a {
  color: rgba(255,255,255,.72) !important;
  font-size: .83rem;
  line-height: 2;
  text-decoration: none;
  transition: color .15s;
  display: block;
}
.fm_list li a:hover { color: #FFCCBC !important; text-decoration: none !important; }

@media (max-width: 576px) {
  .fm_list { grid-template-columns: 1fr 1fr; gap: 0 8px; }
  .fm_list li a { font-size: .80rem; line-height: 1.9; }
}
