/*
Theme Name: Posakbd.com
Theme URI: https://example.com
Author: Posakbd.com
Description: Custom WooCommerce child theme for Posakbd.com, a Bangladeshi Borkha, Jeans & Pants, and T-Shirt store. Built on top of the free Storefront theme.
Template: storefront
Version: 1.1.2
Text Domain: poshak
*/

:root {
  --poshak-ink: #161A2B;
  --poshak-paper: #FBF3E6;
  --poshak-paper-deep: #F2E6D0;
  --poshak-teal: #0F7A78;
  --poshak-teal-deep: #0A5654;
  --poshak-magenta: #D63B72;
  --poshak-magenta-deep: #A02752;
  --poshak-marigold: #EFA632;
  --poshak-maroon: #8C2A3A;
  --poshak-line: #DDCBA6;
}

/* Site-wide: widen every page (Storefront's core container class) and
   nudge the overall text size up a little. This affects the shop,
   category pages, cart, checkout, single product pages — everywhere. */
html {
  font-size: 107%;
}
.col-full,
.storefront-full-width-content .col-full,
.site-header .col-full,
.site-footer .col-full {
  max-width: 1300px !important;
}

body {
  background: var(--poshak-paper);
  color: var(--poshak-ink);
  font-family: 'Hind Siliguri', 'Inter', sans-serif;
  font-size: 16px;
}

h1, h2, h3, h4, .site-title, .poshak-hero-title {
  font-family: 'Baloo Da 2', 'Hind Siliguri', sans-serif;
}

a {
  color: var(--poshak-teal-deep);
}

.site-header {
  background: var(--poshak-paper);
  border-bottom: 1.5px solid var(--poshak-line);
  position: sticky;
  top: 0;
  z-index: 100;
  box-shadow: 0 2px 12px rgba(22, 26, 43, 0.08);
}

.site-title a {
  color: var(--poshak-teal-deep) !important;
  font-weight: 800;
  font-size: 26px;
  letter-spacing: -0.5px;
  background: linear-gradient(90deg, var(--poshak-teal-deep), var(--poshak-magenta));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.main-navigation ul li a {
  color: var(--poshak-ink);
  font-weight: 600;
  position: relative;
  padding-bottom: 4px;
  transition: color 0.2s ease;
}
.main-navigation ul li a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 0;
  height: 2px;
  background: var(--poshak-magenta);
  transition: width 0.25s ease;
}
.main-navigation ul li a:hover {
  color: var(--poshak-magenta-deep);
}
.main-navigation ul li a:hover::after {
  width: 100%;
}

.site-header-cart .cart-contents,
#site-header-cart .cart-contents {
  background: var(--poshak-teal) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 8px 16px !important;
  font-weight: 700 !important;
  transition: background 0.2s ease;
}
.site-header-cart .cart-contents:hover,
#site-header-cart .cart-contents:hover {
  background: var(--poshak-teal-deep) !important;
}

/* Hero banner, shown above the shop / front page content */
.poshak-hero {
  padding: 40px 20px 24px;
  max-width: 1300px;
  margin: 0 auto;
}
.poshak-hero-eyebrow {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--poshak-magenta-deep);
  text-transform: uppercase;
  margin-bottom: 8px;
}
.poshak-hero-title {
  font-size: clamp(28px, 6vw, 44px);
  font-weight: 800;
  margin: 0 0 14px;
  color: var(--poshak-ink);
}
.poshak-hero-sub {
  font-size: 15px;
  line-height: 1.6;
  color: #5B5545;
  max-width: 480px;
}
.poshak-hero-cta {
  display: inline-block;
  margin-top: 16px;
  background: var(--poshak-magenta);
  color: #fff !important;
  padding: 12px 24px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 14px;
  text-decoration: none;
}
.poshak-hero-cta:hover {
  background: var(--poshak-magenta-deep);
}

/* Hero row: main carousel + optional two stacked side banners
   (Falaq-Food-style layout). Falls back to the carousel alone taking
   full width when no side banners are set. */
.poshak-hero-row {
  display: flex;
  gap: 16px;
  max-width: 1300px;
  margin: 0 auto 8px;
  padding: 0 20px;
  align-items: stretch;
}
.poshak-hero-main {
  flex: 1 1 auto;
  min-width: 0;
}
.poshak-hero-row-with-side .poshak-hero-main {
  flex: 1 1 66%;
}
.poshak-hero-side {
  flex: 1 1 33%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.poshak-side-banner {
  display: block;
  flex: 1 1 0;
  border-radius: 14px;
  overflow: hidden;
  border: 1.5px solid var(--poshak-line);
}
.poshak-side-banner img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
@media (max-width: 900px) {
  .poshak-hero-row {
    flex-direction: column;
  }
  .poshak-hero-side {
    flex-direction: row;
  }
  .poshak-side-banner {
    aspect-ratio: 3 / 2;
  }
}

/* Hero carousel: full-width rotating banner shown instead of the text
   hero when the store owner has uploaded slide images. */
.poshak-hero-carousel {
  position: relative;
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  max-height: 420px;
  overflow: hidden;
  border-radius: 14px;
}
.poshak-hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.6s ease;
  display: block;
  pointer-events: none;
}
.poshak-hero-slide.is-active {
  opacity: 1;
  pointer-events: auto;
}
.poshak-hero-slide img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.poshak-hero-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: none;
  background: rgba(22, 26, 43, 0.45);
  color: #fff;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
}
.poshak-hero-prev { left: 14px; }
.poshak-hero-next { right: 14px; }
.poshak-hero-arrow:hover {
  background: rgba(22, 26, 43, 0.7);
}
.poshak-hero-dots {
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 2;
}
.poshak-hero-dot {
  width: 8px;
  height: 8px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.55);
  cursor: pointer;
}
.poshak-hero-dot.is-active {
  background: #fff;
}
@media (max-width: 700px) {
  .poshak-hero-carousel {
    aspect-ratio: 4 / 3;
    max-height: 320px;
  }
}

/* Category tiles */
.poshak-cat-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 14px;
  max-width: 1300px;
  margin: 8px auto 32px;
  padding: 0 20px;
}
.poshak-cat-tile {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 14px;
  padding: 20px 14px;
  text-align: center;
  text-decoration: none;
  color: var(--poshak-ink);
  transition: transform 0.15s ease, border-color 0.15s ease;
}
.poshak-cat-tile:hover {
  transform: translateY(-3px);
  border-color: var(--poshak-teal);
}
.poshak-cat-icon {
  display: block;
  font-size: 30px;
  margin-bottom: 8px;
}
.poshak-cat-name {
  display: block;
  font-family: 'Baloo Da 2', sans-serif;
  font-weight: 700;
  font-size: 15px;
}
.poshak-cat-count {
  display: block;
  font-size: 12px;
  color: #8A8370;
  margin-top: 2px;
}

/* Section headers (used above featured row and full catalog) */
.poshak-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 20px;
}
.poshak-section-head h2 {
  font-family: 'Baloo Da 2', sans-serif;
  font-size: 20px;
  margin: 0;
}
.poshak-section-head a {
  font-size: 13px;
  font-weight: 700;
  color: var(--poshak-teal-deep);
  text-decoration: none;
}

/* Featured / new arrivals row */
.poshak-featured-row {
  margin-bottom: 32px;
}
.poshak-featured-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 18px;
  max-width: 1400px;
  margin: 14px auto 0;
  padding: 0 24px;
}
.poshak-featured-card {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.poshak-featured-card:hover {
  border-color: var(--poshak-teal);
}
.poshak-featured-link {
  text-decoration: none;
  color: var(--poshak-ink);
  display: block;
}
.poshak-featured-img img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}
.poshak-featured-name {
  font-size: 14px;
  font-weight: 600;
  padding: 12px 12px 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.poshak-featured-price {
  font-size: 14px;
  font-weight: 700;
  padding: 0 12px 10px;
  color: var(--poshak-magenta-deep);
}
.poshak-featured-buy-now {
  display: block;
  margin: 0 12px 12px;
  text-align: center;
  padding: 9px 4px !important;
  font-size: 13px !important;
}

/* Promo banner */
.poshak-promo-banner {
  background: var(--poshak-ink);
  color: var(--poshak-paper);
  text-align: center;
  padding: 22px 20px;
  margin-bottom: 32px;
}
.poshak-promo-title {
  display: block;
  font-family: 'Hind Siliguri', sans-serif;
  font-weight: 700;
  font-size: 17px;
}
.poshak-promo-sub {
  display: block;
  font-size: 13px;
  opacity: 0.85;
  margin-top: 4px;
}

/* Footer */
.poshak-footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 24px;
  max-width: 1300px;
  margin: 0 auto;
  padding: 20px;
}
.poshak-footer-col h3 {
  font-family: 'Baloo Da 2', sans-serif;
  font-size: 14px;
  margin: 0 0 10px;
  color: var(--poshak-marigold);
}
.poshak-footer-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.poshak-footer-col li {
  margin-bottom: 6px;
}
.poshak-footer-col p {
  margin: 0 0 6px;
}
.poshak-payment-badges {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}
.poshak-footer-col .poshak-payment-badges .poshak-badge {
  display: inline-flex !important;
  align-items: center;
  gap: 5px;
  background: rgba(255,255,255,0.12) !important;
  border-radius: 6px;
  padding: 5px 10px !important;
  margin: 0 !important;
  font-size: 11px;
  white-space: nowrap;
}
.poshak-payment-badge img {
  height: 16px;
  width: auto;
  display: inline-block;
}
.poshak-footer-bottom {
  text-align: center;
  font-size: 12px;
  opacity: 0.7;
  padding: 14px 20px;
  border-top: 1px solid rgba(255,255,255,0.15);
  margin: 8px 0 0;
}

/* Product grid — explicit CSS Grid so column counts are reliable
   regardless of Storefront's own float-based grid math.
   Desktop: 5 columns. Tablet & mobile (≤992px): 2 columns. */
.woocommerce ul.products,
.woocommerce-page ul.products {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 16px !important;
}
@media (max-width: 992px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 14px;
  padding: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
}

.woocommerce ul.products li.product img {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-weight: 700;
  color: var(--poshak-ink);
}

.woocommerce ul.products li.product .price ins {
  color: var(--poshak-ink);
  text-decoration: none;
}
.woocommerce ul.products li.product .price del {
  color: #A69C7F;
}

/* Two action buttons per product card, side by side */
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product a.poshak-buy-now-btn {
  display: inline-block;
  width: 48%;
  box-sizing: border-box;
  text-align: center;
  padding: 9px 4px !important;
  font-size: 12px !important;
}
.woocommerce ul.products li.product a.add_to_cart_button {
  margin-right: 4%;
}
.poshak-buy-now-btn {
  background: var(--poshak-teal) !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  border: none !important;
  text-decoration: none;
}
.poshak-buy-now-btn:hover {
  background: var(--poshak-teal-deep) !important;
}
.poshak-buy-now-single {
  margin-left: 10px;
}
.poshak-buy-now-btn[aria-disabled="true"],
.poshak-buy-now-btn.disabled {
  background: #C9C2A8 !important;
  color: #7A735C !important;
  cursor: not-allowed;
  pointer-events: none;
}

/* Buttons */
.woocommerce a.button, .woocommerce button.button, .woocommerce #respond input#submit,
.woocommerce-page a.button, .woocommerce-page button.button,
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt {
  background: var(--poshak-magenta) !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  border: none !important;
}
.woocommerce a.button:hover, .woocommerce button.button:hover {
  background: var(--poshak-magenta-deep) !important;
}

/* Single product page: Add to Cart + Buy Now as big pill buttons side by side */
.single-product form.cart {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.single-product form.cart .quantity {
  margin-right: 0;
  flex: 0 0 auto;
}
.single-product .woocommerce a.button,
.single-product .woocommerce button.button {
  flex: 1 1 0;
  padding: 14px 20px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  text-align: center;
}
.single-product .poshak-buy-now-single {
  flex: 1 1 0;
  margin-left: 0 !important;
  padding: 14px 20px !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  text-align: center;
}

/* ভেরিয়েবল প্রোডাক্টে (সাইজ-সিলেক্ট থাকা প্রোডাক্ট) WooCommerce নিজেই
   Add to Cart বাটনটাকে একটা আলাদা .woocommerce-variation-add-to-cart
   div-এর ভেতরে বসায় (আর আমাদের Buy Now বাটনও একই hook দিয়ে এই একই
   div-এর ভেতরে যোগ হয়) — এই div-টা flex container না হওয়ায় বাটন দুটো
   আগে সংকুচিত/ছোট দেখাচ্ছিল। এখন এটাকেও একই flex আচরণ দেওয়া হলো, যাতে
   simple আর variable — দুই ধরনের প্রোডাক্টেই বাটন একই রকম full-width,
   সমান মাপের দেখায়। */
.single-product .woocommerce-variation-add-to-cart {
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  width: 100%;
}
.single-product .single_variation_wrap {
  width: 100%;
}

/* Call / WhatsApp order row — same size/shape as Add to Cart + Buy Now
   above, so all four buttons read as one consistent 2x2 block. */
.poshak-contact-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 10px 0 16px;
}
.poshak-contact-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: none;
  border-radius: 999px;
  padding: 14px 16px;
  text-decoration: none;
  text-align: center;
  background: var(--poshak-ink);
  color: #fff !important;
}
.poshak-contact-btn:hover {
  opacity: 0.9;
}
.poshak-contact-icon {
  font-size: 17px;
}
.poshak-contact-title {
  display: inline;
  font-weight: 700;
  font-size: 14.5px;
  color: #fff;
}
.poshak-contact-sub {
  display: none; /* বাটনগুলো uniform/কম্প্যাক্ট রাখতে subtitle লুকানো হলো */
}
.poshak-contact-whatsapp {
  background: #25D366;
}
.poshak-contact-whatsapp .poshak-contact-title {
  color: #fff;
}

/* Trust badges */
.poshak-trust-badges {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin: 18px 0 6px;
  text-align: center;
}
.poshak-trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
}
.poshak-trust-icon {
  font-size: 22px;
  margin-bottom: 2px;
}
.poshak-trust-item strong {
  font-size: 12px;
  color: var(--poshak-ink);
}
.poshak-trust-item span:last-child {
  font-size: 11px;
  color: #8A8370;
}
@media (max-width: 480px) {
  .poshak-trust-badges { grid-template-columns: 1fr; }
}

/* খুব ছোট স্ক্রিনে (পুরনো/সস্তা Android ফোন, ~380px বা তার কম প্রস্থ)
   দুই-কলামে বাটন গুলো এত সংকুচিত হয়ে যায় যে লেখা কেটে যায় বা
   বিশ্রীভাবে wrap করে। তাই এই প্রস্থে সব কয়টা বাটন (Add to Cart,
   Buy Now, Call, WhatsApp) একটার নিচে একটা — পুরো width নিয়ে দেখাবে। */
@media (max-width: 380px) {
  .single-product form.cart {
    flex-direction: column;
    align-items: stretch;
  }
  .single-product form.cart .quantity {
    align-self: flex-start;
  }
  .single-product .woocommerce a.button,
  .single-product .woocommerce button.button,
  .single-product .poshak-buy-now-single {
    flex: 1 1 100%;
    width: 100%;
  }
  .single-product .woocommerce-variation-add-to-cart {
    flex-direction: column;
    align-items: stretch;
  }
  .poshak-contact-row {
    grid-template-columns: 1fr;
  }
}

/* ৩৮১px থেকে ট্যাবলেট পর্যন্ত — দুই-কলাম বজায় থাকবে, শুধু প্যাডিং/ফন্ট
   একটু কমিয়ে আনা হলো যাতে টেক্সট আরামে বসে। */
@media (min-width: 381px) and (max-width: 600px) {
  .single-product .woocommerce a.button,
  .single-product .woocommerce button.button,
  .single-product .poshak-buy-now-single {
    padding: 12px 10px !important;
    font-size: 13.5px !important;
  }
  .poshak-contact-btn {
    padding: 12px 8px;
  }
  .poshak-contact-title {
    font-size: 13px;
  }
  .poshak-contact-icon {
    font-size: 15px;
  }
}

/* বড় ট্যাবলেট/ডেস্কটপে (৭৬৮px+) বাটন যেন দুই পাশে অতিরিক্ত চওড়া হয়ে
   বিশ্রী না দেখায়, তাই সর্বোচ্চ একটা যুক্তিসঙ্গত প্রস্থে সীমাবদ্ধ রাখা হলো
   এবং মাঝ বরাবর align করা হলো। */
@media (min-width: 768px) {
  .single-product form.cart {
    max-width: 520px;
  }
  .poshak-contact-row {
    max-width: 520px;
  }
}

/* Fix: WooCommerce/Storefront adds a ::before/::after clearfix to
   ul.products (leftover from float-based layouts). Since the grid
   below turns ul.products into a CSS Grid, that ::before pseudo-
   element gets counted as a real (empty) grid item, showing up as a
   blank tile before the first product. Disable it. */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
  display: none !important;
  content: none !important;
}

/* Safety net: hide any leftover empty subcategory tile in the product grid */
.woocommerce ul.products li.product-category.product,
.woocommerce ul.products li.product-category,
.woocommerce-page ul.products li.product-category,
.woocommerce ul.products li.product:not(:has(.woocommerce-loop-product__title)),
.woocommerce-page ul.products li.product:not(:has(.woocommerce-loop-product__title)),
.woocommerce ul.products li.product:not(:has(.price)):not(:has(a.add_to_cart_button)),
.woocommerce-page ul.products li.product:not(:has(.price)):not(:has(a.add_to_cart_button)) {
  display: none !important;
}

/* Checkout: product thumbnail beside item name */
.poshak-order-item {
  display: flex;
  align-items: center;
  gap: 10px;
}
.poshak-order-item-img img {
  width: 52px;
  height: 52px;
  border-radius: 8px;
  object-fit: cover;
  border: 1px solid var(--poshak-line);
  flex-shrink: 0;
}
.poshak-order-item-name {
  font-weight: 600;
  font-size: 14px;
}

/* Checkout: card-style order summary */
.woocommerce-checkout-review-order-table,
#order_review {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 14px;
  padding: 4px;
  border-collapse: separate !important;
}
.woocommerce-checkout-review-order-table thead th {
  background: var(--poshak-ink);
  color: #fff;
  padding: 12px 14px !important;
  font-size: 13px;
  border: none !important;
}
.woocommerce-checkout-review-order-table thead th:first-child {
  border-top-left-radius: 10px;
}
.woocommerce-checkout-review-order-table thead th:last-child {
  border-top-right-radius: 10px;
}
.woocommerce-checkout-review-order-table td {
  padding: 12px 14px !important;
  border-bottom: 1px solid var(--poshak-line) !important;
}
.woocommerce-checkout-review-order-table .order-total td {
  font-weight: 800;
  font-size: 16px;
  color: var(--poshak-magenta-deep);
  border-bottom: none !important;
}
.woocommerce-checkout-review-order-table tr:last-child td {
  border-bottom: none !important;
}

/* Checkout: billing/shipping form card */
.woocommerce-billing-fields,
.woocommerce-checkout .col2-set {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 14px;
  padding: 20px;
}
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout textarea,
.woocommerce-checkout select {
  border-radius: 8px !important;
  border: 1.5px solid var(--poshak-line) !important;
  padding: 10px 12px !important;
}
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  outline: none;
  border-color: var(--poshak-teal) !important;
  box-shadow: 0 0 0 2px rgba(15,122,120,0.15);
}

/* Checkout: shipping method options as cards */
ul#shipping_method {
  list-style: none;
  margin: 0;
  padding: 0;
}
ul#shipping_method li {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 8px;
}
ul#shipping_method li:has(input:checked) {
  border-color: var(--poshak-teal);
  background: #F3FBF5;
}

/* Checkout: payment method box */
.woocommerce-checkout #payment {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 14px;
  padding: 4px;
}
.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: none !important;
  padding: 14px !important;
}
.woocommerce-checkout #payment div.payment_box {
  background: var(--poshak-paper-deep) !important;
  border-radius: 8px;
  margin: 10px 14px 14px !important;
}
.woocommerce-checkout #payment div.payment_box::before {
  display: none;
}

/* Checkout: hide "Ship to a different address?" section and the
   privacy policy notice — CSS fallback in case the PHP filters don't
   catch every checkout rendering path (e.g. the block-based checkout). */
.woocommerce-shipping-fields,
.woocommerce-privacy-policy-text,
#ship-to-different-address {
  display: none !important;
}

/* Checkout: pull "আপনার অর্ডার" heading into the same card as the
   order table, so it looks like one bordered box (matches the billing
   details box on the left). */
#order_review_heading {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-bottom: none;
  border-radius: 14px 14px 0 0;
  padding: 16px 18px 8px;
  margin: 0 !important;
  font-family: 'Baloo Da 2', sans-serif;
  font-size: 18px;
}
#order_review {
  border-top: none !important;
  border-radius: 0 0 14px 14px !important;
  margin-top: 0 !important;
}

/* Checkout: on desktop, vertically center the billing column against
   the (taller) order-review column instead of top-aligning them. */
@media (min-width: 768px) {
  .woocommerce-checkout form.checkout {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    column-gap: 32px;
    align-items: center;
  }
  .woocommerce-checkout form.checkout .col2-set,
  .woocommerce-checkout form.checkout #customer_details {
    grid-column: 1;
    grid-row: 1 / span 2;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
  }
  .woocommerce-checkout form.checkout #order_review_heading {
    grid-column: 2;
    grid-row: 1;
    float: none !important;
    width: 100% !important;
  }
  .woocommerce-checkout form.checkout #order_review {
    grid-column: 2;
    grid-row: 2;
    float: none !important;
    width: 100% !important;
  }
}

/* Checkout: now that the privacy-policy notice is gone, close up the
   empty gap it left above the "Place order" button. */
.woocommerce-terms-and-conditions-wrapper:empty,
.woocommerce-privacy-policy-text:empty {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.woocommerce-checkout #payment .form-row.place-order {
  margin-top: 0 !important;
  padding-top: 12px !important;
}

/* Checkout: Place order button, full width and prominent */
#place_order {
  width: 100%;
  padding: 16px !important;
  font-size: 16px !important;
  border-radius: 12px !important;
}

/* General responsive safety net */
@media (max-width: 600px) {
  .poshak-hero-title { font-size: 26px !important; }
  .poshak-section-head { flex-direction: column; align-items: flex-start; gap: 4px; }
  .poshak-featured-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .poshak-cat-tiles { grid-template-columns: repeat(2, 1fr) !important; }
}
img { max-width: 100%; height: auto; }
table { max-width: 100%; }


/* Price filter widget */
.woocommerce .widget_price_filter .ui-slider .ui-slider-range,
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
  background-color: var(--poshak-teal) !important;
  border-color: var(--poshak-teal) !important;
}

/* Category chips widget list */
.woocommerce ul.product-categories a {
  color: var(--poshak-ink);
}

/* Testimonials */
.poshak-testimonials {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  max-width: 1300px;
  margin: 32px auto;
  padding: 0 20px;
}
.poshak-testimonial-card {
  background: #fff;
  border: 1.5px solid var(--poshak-line);
  border-radius: 14px;
  padding: 16px 18px;
}
.poshak-testimonial-card p {
  font-size: 14px;
  line-height: 1.6;
  color: #4A4536;
  margin: 0 0 10px;
}
.poshak-testimonial-card strong {
  font-size: 13px;
  color: var(--poshak-teal-deep);
}

/* Full-width shop pages (sidebar removed via functions.php, this is a safety net) */
body.woocommerce #secondary,
body.woocommerce-page #secondary {
  display: none !important;
}
body.woocommerce #primary,
body.woocommerce-page #primary {
  width: 100% !important;
  float: none !important;
}
.site-footer {
  background: var(--poshak-ink) !important;
  color: var(--poshak-paper) !important;
}
.site-footer a {
  color: var(--poshak-paper) !important;
}
.poshak-store-info {
  max-width: 1300px;
  margin: 0 auto;
  padding: 20px 20px 0;
  font-size: 14px;
  opacity: 0.9;
}
.poshak-store-info p {
  margin: 0 0 6px;
}
