.elementor-669830 .elementor-element.elementor-element-1d05994{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}body.elementor-page-669830:not(.elementor-motion-effects-element-type-background), body.elementor-page-669830 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FDF9E8;}/* Start custom CSS for shortcode, class: .elementor-element-113b30d *//* ============================================================
   Remedywala — Product Archive Styles (UPDATED)
   Paste this in: Appearance > Customize > Additional CSS
   OR enqueue via functions.php / Code Snippets
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Nunito:wght@300;400;500;600;700&display=swap');

/* ── ROOT VARIABLES ─────────────────────────────────────── */
:root {
  --rw-cream:     #FAFAD7;
  --rw-cream2:    #f5f0c0;
  --rw-red:       #DD0000;
  --rw-dark-red:  #900000;
  --rw-bg:        #fdf9e8;
  --rw-bg2:       #f7f1d0;
  --rw-card-bg:   #fffef2;
  --rw-text:      #3a1000;
  --rw-text2:     #6b2a0a;
  --rw-text3:     #9a5020;
  --rw-border:    rgba(144,0,0,0.13);
  --rw-border2:   rgba(144,0,0,0.28);
  --rw-gold:      #c8860a;
}

/* ── WRAPPER ─────────────────────────────────────────────── */
.rw-archive-wrap {
  font-family: 'Nunito', sans-serif;
  background: var(--rw-bg);
  color: var(--rw-text);
  width: 100%;
  min-height: 100vh;  /* FIX: Cover full viewport height */
  display: flex;
  border-radius: 20px;
  flex-direction: column;
}

/* ── HERO ────────────────────────────────────────────────── */
.rw-hero {
  background: linear-gradient(110deg, var(--rw-dark-red) 0%, #b00000 45%, var(--rw-red) 100%);
  padding: 2.8rem 2rem 2.4rem;
  position: relative;
  overflow: hidden;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
 
}
/* Background watermark — now dynamic via PHP (symbol shown via .rw-hero-om) */
/* Keeping the CSS ::after for fallback on All Products page */
.rw-hero::after {
  content: attr(data-symbol);
  position: absolute;
  right: 3rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 110px;
  color: rgba(250,250,215,0.06);
  line-height: 1;
  pointer-events: none;
}
.rw-hero-shimmer {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--rw-cream), #ffd700, var(--rw-cream), transparent);
}
.rw-hero-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid rgba(250,250,215,0.35);
  color: rgba(250,250,215,0.85);
  font-size: 10px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  padding: 4px 14px;
  border-radius: 20px;
  margin-bottom: .9rem;
}
.rw-hero-om {
  font-size: 24px;
  color: var(--rw-cream);
  margin-bottom: .3rem;
  opacity: .9;
}
.rw-hero-title {
  font-family: 'Cinzel', serif;
  font-size: 36px;
  font-weight: 700;
  color: var(--rw-cream);
  line-height: 1.1;
  margin: 0 0 .5rem;
}

/* ── UPDATED: Description width increased 380px → 650px ── */
.rw-hero-sub {
  font-size: 12.5px;
  color: rgba(250,250,215,0.7);
  line-height: 1.8;
  max-width: 650px;
  font-weight: 300;
  margin-bottom: 1.6rem;
}

.rw-hero-pills {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.rw-hero-pill {
  display: flex;
  align-items: center;
  gap: 5px;
  background: rgba(250,250,215,0.12);
  border: 1px solid rgba(250,250,215,0.22);
  color: rgba(250,250,215,0.85);
  font-size: 11px;
  padding: 5px 14px;
  border-radius: 20px;
}

/* ── BREADCRUMB ──────────────────────────────────────────── */
.rw-breadcrumb {
  background: var(--rw-cream2);
  border-bottom: 1px solid var(--rw-border);
  padding: .55rem 2rem;
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 11.5px;
  color: var(--rw-text3);
  flex-wrap: wrap;
}
.rw-breadcrumb a {
  color: var(--rw-text3);
  text-decoration: none;
}
.rw-breadcrumb a:hover { color: var(--rw-dark-red); }
.rw-cur {
  color: var(--rw-dark-red);
  font-weight: 600;
}

/* ── TOOLBAR ─────────────────────────────────────────────── */
.rw-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: .75rem 2rem;
  background: var(--rw-bg2);
  border-bottom: 1px solid var(--rw-border);
  flex-wrap: wrap;
}
.rw-tb-lbl {
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--rw-text3);
  font-weight: 700;
}
.rw-tb-btn {
  font-size: 11px;
  font-family: 'Nunito', sans-serif;
  padding: 5px 13px;
  border-radius: 20px;
  border: 1px solid var(--rw-border2);
  background: transparent;
  color: var(--rw-text2);
  cursor: pointer;
  font-weight: 600;
  transition: all .2s;
}
.rw-tb-btn.rw-on,
.rw-tb-btn:focus {
  background: var(--rw-dark-red);
  color: var(--rw-cream);
  border-color: var(--rw-dark-red);
  outline: none;
}
.rw-tb-btn:hover:not(.rw-on) {
  border-color: var(--rw-red);
  color: var(--rw-red);
}
.rw-tb-right {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 8px;
}
.rw-tb-count {
  font-size: 11px;
  color: var(--rw-text3);
  font-weight: 500;
}
.rw-tb-sort {
  font-size: 11px;
  color: var(--rw-text3);
  display: flex;
  align-items: center;
  gap: 4px;
  border: 1px solid var(--rw-border2);
  padding: 4px 10px;
  border-radius: 4px;
  background: var(--rw-card-bg);
}

/* ── GRID ────────────────────────────────────────────────── */
.rw-grid-section { padding: 1.4rem 2rem 1rem; flex: 1; }

.rw-grid {
  display: grid;
  gap: 14px;
  align-items: stretch;
}
.rw-cols-4 { grid-template-columns: repeat(4, 1fr); }
.rw-cols-3 { grid-template-columns: repeat(3, 1fr); }
.rw-cols-2 { grid-template-columns: repeat(2, 1fr); }

/* ── CARD ────────────────────────────────────────────────── */
.rw-card {
  background: var(--rw-card-bg);
  border-radius: 10px;
  border: 1px solid var(--rw-border);
  overflow: hidden;
  position: relative;
  transition: all .28s;
  box-shadow: 0 1px 8px rgba(144,0,0,0.06);
  display: flex;
  flex-direction: column;
}
.rw-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 30px rgba(144,0,0,0.14);
  border-color: rgba(144,0,0,0.32);
}

/* ── IMAGE — UPDATED: Square via aspect-ratio ────────────── */
.rw-c-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;   /* Perfect 1:1 square — replaces fixed height */
  height: auto;
  flex-shrink: 0;
  display: block;
  overflow: hidden;
  background: linear-gradient(145deg, #fff8e1, #fde8a0);
  text-decoration: none;
}
.rw-c-img-wrap .rw-prod-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}
.rw-card:hover .rw-prod-img { transform: scale(1.04); }

.rw-no-img {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, #fff8e1, #fde8a0);
  font-size: 48px;
  color: rgba(144,0,0,0.15);
}
.rw-c-img-line {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 2.5px;
  background: linear-gradient(90deg, transparent, var(--rw-red), var(--rw-dark-red), transparent);
  z-index: 2;
}

/* BADGES */
.rw-badge {
  position: absolute;
  top: 9px; right: 9px;
  font-size: 9px;
  letter-spacing: .8px;
  text-transform: uppercase;
  padding: 3px 7px;
  font-weight: 700;
  border-radius: 3px;
  z-index: 3;
  font-family: 'Nunito', sans-serif;
}
.rw-b-sale   { background: var(--rw-dark-red); color: var(--rw-cream); }
.rw-b-new    { background: var(--rw-gold);     color: #fff8e0; }
.rw-b-hot    { background: #c55000;            color: #fff; }
.rw-b-energy { background: var(--rw-red);      color: #fff; }

/* WISHLIST */
.rw-wl {
  position: absolute;
  top: 8px; left: 8px;
  width: 27px; height: 27px;
  background: rgba(255,255,255,0.92);
  border: 1px solid var(--rw-border2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 3;
  transition: background .2s;
  padding: 0;
}
.rw-wl:hover { background: #fff0f0; }
.rw-wl .ti   { font-size: 13px; color: var(--rw-red); }

/* CARD BODY */
.rw-c-body {
  padding: 11px 12px 13px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.rw-c-cat {
  font-size: 9px;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: var(--rw-red);
  margin-bottom: 4px;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rw-c-name-link { text-decoration: none; }
.rw-c-name {
  font-family: 'Cinzel', serif;
  font-size: 13px;
  font-weight: 600;
  color: var(--rw-text);
  line-height: 1.4;
  margin-bottom: 5px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 36px;
}
.rw-c-benefit {
  font-size: 10.5px;
  color: var(--rw-text3);
  line-height: 1.5;
  margin-bottom: 7px;
  display: flex;
  gap: 4px;
  align-items: flex-start;
  flex: 1;
}
.rw-c-benefit .ti {
  font-size: 10px;
  color: var(--rw-gold);
  margin-top: 2px;
  flex-shrink: 0;
}
.rw-c-benefit span {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.rw-c-rating {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 9px;
}
.rw-stars  { color: var(--rw-gold); font-size: 10.5px; letter-spacing: .5px; }
.rw-rcount { font-size: 10px; color: var(--rw-text3); }

/* CARD FOOTER */
.rw-c-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 9px;
  border-top: 1px solid rgba(144,0,0,0.09);
  margin-top: auto;
  gap: 6px;
}
.rw-price-block {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.rw-price-main {
  font-family: 'Cinzel', serif;
  font-size: 15px;
  font-weight: 600;
  color: var(--rw-dark-red);
}
.rw-price-main .woocommerce-Price-amount { font-size: inherit; color: inherit; }
.rw-price-old {
  font-size: 10px;
  color: var(--rw-text3);
  text-decoration: line-through;
}

/* CART BUTTON */
.rw-cart-btn {
  background: var(--rw-dark-red);
  border: none;
  color: var(--rw-cream) !important;
  padding: 7px 11px;
  font-size: 10.5px;
  font-family: 'Nunito', sans-serif;
  cursor: pointer;
  border-radius: 5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  transition: background .2s;
  white-space: nowrap;
  flex-shrink: 0;
  text-decoration: none !important;
  line-height: 1;
}
.rw-cart-btn:hover { background: var(--rw-red) !important; color: var(--rw-cream) !important; }
.rw-cart-btn .ti   { font-size: 13px; }

/* NO PRODUCTS */
.rw-no-products {
  grid-column: 1 / -1;
  text-align: center;
  padding: 3rem 2rem;
  color: var(--rw-text3);
  font-size: 15px;
}
.rw-no-products .ti { font-size: 36px; display: block; margin-bottom: .5rem; opacity: .5; }

/* ── PAGINATION ──────────────────────────────────────────── */
.rw-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem 1.8rem;
}
.rw-pagination .page-numbers {
  display: flex;
  align-items: center;
  gap: 5px;
  list-style: none;
  padding: 0; margin: 0;
}
.rw-pagination .page-numbers li a,
.rw-pagination .page-numbers li span {
  width: 33px; height: 33px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--rw-border2);
  color: var(--rw-text2);
  font-size: 12px;
  cursor: pointer;
  font-family: 'Nunito', sans-serif;
  border-radius: 4px;
  font-weight: 600;
  background: var(--rw-card-bg);
  transition: all .2s;
  text-decoration: none;
}
.rw-pagination .page-numbers li a:hover {
  border-color: var(--rw-red);
  color: var(--rw-red);
}
.rw-pagination .page-numbers li span.current {
  background: var(--rw-dark-red);
  color: var(--rw-cream);
  border-color: var(--rw-dark-red);
}
.rw-pagination .page-numbers li .dots {
  border: none;
  background: transparent;
  color: var(--rw-text3);
}

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media (max-width: 1024px) {
  .rw-cols-4 { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 768px) {
  .rw-cols-4,
  .rw-cols-3 { grid-template-columns: repeat(2, 1fr); }
  .rw-hero-title { font-size: 26px; }
  .rw-hero-sub   { max-width: 100%; }
  .rw-toolbar { gap: 6px; }
  .rw-grid-section { padding: 1rem; }
}
@media (max-width: 480px) {
  .rw-cols-4,
  .rw-cols-3,
  .rw-cols-2 { grid-template-columns: repeat(2, 1fr); }
  .rw-hero { padding: 2rem 1rem 1.8rem; }
  /* aspect-ratio handles square automatically — no height override needed */
  .rw-c-img-wrap { aspect-ratio: 1 / 1; }
}/* End custom CSS */