/* ============================================================
   Rational Picks – Brand Design System v9
   Navy / Amber / Cream — Playfair Display + DM Sans
   v7: adds full dark-theme styling for the /blog/ archive page
   v8: adds full dark-theme styling for single blog posts (body.single)
   v9: darkens the single-post article card (.post-inner / .rh-post-wrapper
       were still white) and themes the post sidebar widgets
   v10: SITE-WIDE dark theme. Earlier versions only darkened blog/single, so
       shop, product, category, about, contact, terms, privacy all rendered as
       light ReHub pages with a dark nav on top (inconsistent). The universal
       dark layer at the END of this file (search "UNIVERSAL DARK LAYER") darkens
       the body, content wrappers, content cards, product cards, sidebar widgets,
       breadcrumbs, headings, text, links and forms across every front-end
       template, so the whole site is consistently dark navy.
   v14: OPTION C — Clean White & Navy shop/category pages. Appended at the
       very end so these rules win on source order. Scoped exclusively to
       body.archive.woocommerce, body.post-type-archive-product,
       body.tax-product_cat, and body.woocommerce (non-single). No changes to
       single-product, blog, homepage, or other page types.
   v15: OPTION D — Warm Cream Upgraded shop/category pages. Replaces the
       Option C archive block. Warm cream background (#f8f5f0), white cards
       with amber accents, pill why-blurbs, amber nav border, deeper amber price.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;900&family=DM+Sans:wght@300;400;500;600&display=swap');

:root {
  --rp-navy:        #0f1e35;
  --rp-navy-mid:    #162845;
  --rp-navy-light:  #1e3a5f;
  --rp-amber:       #e8a020;
  --rp-amber-light: #f5b84a;
  --rp-amber-pale:  #fdf3e0;
  --rp-cream:       #faf8f4;
  --rp-white:       #ffffff;
  --rp-slate:       #4a5568;
  --rp-slate-light: #718096;
  --rp-border:      #e8e4dc;
  --rp-green:       #1a7a45;
  --rp-green-pale:  #e8f5ee;
  --rp-text:        #1a1a2e;
  --rp-radius-sm:   6px;
  --rp-radius-md:   10px;
  --rp-radius-lg:   16px;
  /* Blog dark palette */
  --rp-blog-bg:        #0a0f1e;
  --rp-blog-surface:   #111827;
  --rp-blog-card:      #1a2235;
  --rp-blog-card-hover:#1f2d45;
  --rp-blog-border:    rgba(255,255,255,0.08);
  --rp-blog-text:      #e2e8f0;
  --rp-blog-muted:     #94a3b8;
}

/* ── Body ── */
body {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
  background: var(--rp-cream) !important;
  color: var(--rp-text) !important;
  -webkit-font-smoothing: antialiased !important;
}

/* ── Header / Nav: dark navy, IDENTICAL on every page, from first paint ──
   v10 root-cause fix: theming is now 100% server-side CSS. We style the NATIVE
   ReHub header (#main_header, rendered server-side on every template) dark navy
   here, instead of letting rp-image-swap.js hide it and inject a per-page JS nav
   (which made home white / categories navy and caused a flash on every load).
   These rules apply on ALL pages — home included — so the header is pixel-
   identical before the first paint with zero JS involvement. */
#header, #main_header, .rh-header-wrap, .site-header,
#main_header .header_wrap, #main_header .logo_section_wrap,
.is-sticky .logo_section_wrap, .sticky-active.logo_section_wrap,
.header-v1, .header-v2, .header-v3 {
  background: var(--rp-navy) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: none !important;
}
/* Sticky header keeps the same navy (ReHub clones it on scroll) */
#main_header.rh-stickme, .rh-sticky-header, .rh-stickme.is-sticky {
  background: var(--rp-navy) !important;
}

/* ── Nav links: light on navy, amber on hover ── */
#access a, .main-nav a, .top_menu a,
#menu-main-menu a, nav.navigation a, .rh-menu-wrap a,
.menu-item a {
  color: rgba(255,255,255,0.82) !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  transition: color 0.15s, background 0.15s !important;
}
#access a:hover, .main-nav a:hover, #menu-main-menu a:hover,
nav.navigation a:hover, .top_menu a:hover,
#menu-main-menu .current-menu-item > a {
  color: var(--rp-amber-light) !important;
  background: rgba(255,255,255,0.06) !important;
  border-radius: var(--rp-radius-sm) !important;
}
/* Header icons (search / wishlist) light on navy */
#main_header .rh-header-icon, #main_header .rh-header-icon i,
#main_header .re-icon-search, #main_header .rhi-search {
  color: rgba(255,255,255,0.82) !important;
}

/* ── Hero / page header ── */
.rh-page-head, .page-header, .woorepick_header,
.archive-header, .term-description-wrap {
  background: var(--rp-navy) !important;
  color: var(--rp-white) !important;
  padding: 48px 24px !important;
}
.rh-page-head h1, .page-header h1, .archive-header h1 {
  font-family: 'Playfair Display', serif !important;
  font-weight: 900 !important;
  color: var(--rp-white) !important;
  letter-spacing: -1px !important;
}

/* ── Section headings ── */
h2.section-title, .woocommerce-loop-product__title,
.widget-title, .rh-widget-title {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-navy) !important;
  font-weight: 700 !important;
}
/* Don't override h1 globally — JS hero sets it white */

/* ── Product grid ── */
/* Use auto-fill + minmax so the number of columns follows the ACTUAL container
   width (the shop archive has a sidebar, so its content box is ~860px — a fixed
   4-column rule overflowed and squeezed titles to one word per line). */
.rh-flex-eq-height.products,
.col_wrap_three.products,
.products.grid_woo,
ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
  gap: 20px !important;
}
@media (max-width: 480px) {
  .rh-flex-eq-height.products, .col_wrap_three.products,
  .products.grid_woo, ul.products { grid-template-columns: 1fr !important; }
}

/* Each card must fill its grid cell. ReHub's .col_item carries a float + a
   fixed narrow width from its own (non-grid) column system, which collapsed the
   cards to ~80px and wrapped titles one word per line inside the CSS grid. */
.rh-flex-eq-height.products > .product,
.col_wrap_three.products > .product,
.products.grid_woo > .product,
ul.products > li.product {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  float: none !important;
}

/* ── Hide leftover demo "spec" zone in product cards ──
   The ReHub demo import configured a spec list (Camera / Flight time (m)) that
   belonged to a drone site; those fields are empty ("–") for our products, so
   suppress the whole loop spec zone rather than show blank rows. */
.woo_code_zone_loop {
  display: none !important;
}

/* ── Product card base ── */
article.repick_item,
.rh-woopost-wrap,
li.product {
  background: var(--rp-white) !important;
  border-radius: var(--rp-radius-lg) !important;
  border: 1px solid var(--rp-border) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  padding: 0 !important;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s !important;
  display: flex !important;
  flex-direction: column !important;
}
article.repick_item:hover,
.rh-woopost-wrap:hover,
li.product:hover {
  border-color: #c8c3b8 !important;
  box-shadow: 0 4px 24px rgba(15,30,53,0.08) !important;
  transform: translateY(-2px) !important;
}

/* ── Product figure / image area ── */
article.repick_item figure,
.rh-woopost-wrap .post-thumb {
  margin: 0 !important;
  padding: 0 !important;
  background: var(--rp-white) !important;
  border-bottom: 1px solid var(--rp-border) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 200px !important;
  overflow: hidden !important;
}

/* ── Product image ── */
article.repick_item figure img,
.rh-woopost-wrap img,
[data-post_id] img,
li.product img {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
  display: block !important;
}

/* ── Card body area ── */
article.repick_item .rh-wooitem-info,
article.repick_item .entry-summary,
article.repick_item > *:not(figure):not(.rh-label-wrap) {
  padding: 14px 16px !important;
}

/* ── Product title ── */
article.repick_item h2,
article.repick_item h3,
article.repick_item .entry-title,
article.repick_item .woocommerce-loop-product__title {
  display: block !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--rp-navy) !important;
  line-height: 1.4 !important;
  margin: 12px 16px 6px !important;
  padding: 0 !important;
}

/* ── Price ── */
article.repick_item .woocommerce-Price-amount,
article.repick_item .price,
.woocommerce-Price-amount bdi {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-navy) !important;
  font-weight: 700 !important;
  font-size: 18px !important;
}
article.repick_item .price del,
article.repick_item .price del .woocommerce-Price-amount {
  color: var(--rp-slate-light) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  font-family: 'DM Sans', sans-serif !important;
  text-decoration: line-through !important;
}

/* ── Buy / View Deal button — match ReHub customizer specificity ── */
.woocommerce a.woo_loop_btn,
.woocommerce a.woo_loop_btn:hover,
.woocommerce a.woo_loop_btn:active,
.woocommerce .btn_offer_block,
.woocommerce a.btn_offer_block,
.woocommerce a.re_track_btn,
article.repick_item a.button,
article.repick_item .add_to_cart_button,
article.repick_item .rh-btn,
a.re_track_btn.woo_loop_btn,
a.btn_offer_block,
.woo_column_item a.button {
  background: var(--rp-navy) !important;
  background-color: var(--rp-navy) !important;
  color: var(--rp-white) !important;
  border-radius: var(--rp-radius-md) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 10px 16px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  width: calc(100% - 32px) !important;
  display: block !important;
  text-align: center !important;
  margin: 8px 16px 16px !important;
  text-decoration: none !important;
  transition: background 0.15s !important;
  border: none !important;
}
.woocommerce a.woo_loop_btn:hover,
article.repick_item a.button:hover,
article.repick_item .add_to_cart_button:hover {
  background: var(--rp-navy-light) !important;
  background-color: var(--rp-navy-light) !important;
  color: var(--rp-white) !important;
}

/* ── Category badge (top-right overlay) ── */
.rh-label-wrap, .rh-cat,
article.repick_item .cat-links,
.woocommerce-loop-product__category {
  background: var(--rp-navy) !important;
  color: rgba(255,255,255,0.9) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  padding: 4px 9px !important;
  border-radius: 5px !important;
  text-decoration: none !important;
}

/* ── Sale / featured badge ── */
.onsale, .featured-badge {
  background: #e63946 !important;
  color: var(--rp-white) !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  border-radius: 5px !important;
  padding: 4px 9px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

/* ── Filter/category tabs ── */
ul.def_btn_link_tabs, .wpsm_woogrid_tabs,
.rh-filter-wrap, .rehub_filter {
  border-bottom: 2px solid var(--rp-border) !important;
  margin-bottom: 28px !important;
}
ul.def_btn_link_tabs li a,
.wpsm_woogrid_tabs li a {
  color: var(--rp-slate-light) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  padding: 10px 18px !important;
  border-bottom: 2px solid transparent !important;
  margin-bottom: -2px !important;
  transition: color 0.15s, border-color 0.15s !important;
  text-decoration: none !important;
}
ul.def_btn_link_tabs li.active a,
ul.def_btn_link_tabs li a:hover,
.wpsm_woogrid_tabs li.active a {
  color: var(--rp-navy) !important;
  border-bottom-color: var(--rp-amber) !important;
}

/* ── Trust bar (if present) ── */
.rp-trust-bar {
  background: var(--rp-amber-pale) !important;
  border-bottom: 1px solid #f0e5cc !important;
  padding: 12px 24px !important;
}

/* ── Footer ── */
/* v15: the native ReHub widget footer (.footer-bottom) duplicates our editorial
   #rp4-footer. Hide it site-wide so exactly ONE footer renders everywhere; our
   #rp4-footer is the single source of footer chrome. We intentionally do NOT
   reserve any space — #rp4-footer is appended after it, so there is no gap. */
.footer-bottom {
  display: none !important;
}
#footer, .site-footer, #footer_wrap,
.rh-footer, footer.footer {
  background: var(--rp-navy) !important;
  color: rgba(255,255,255,0.55) !important;
  border-top: none !important;
}
#footer a, .site-footer a, .rh-footer a {
  color: rgba(255,255,255,0.5) !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
}
#footer a:hover, .site-footer a:hover {
  color: rgba(255,255,255,0.85) !important;
}
#footer .widget-title, .site-footer .widget-title,
.rh-footer .widget-title {
  color: var(--rp-white) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.8px !important;
  text-transform: uppercase !important;
  margin-bottom: 14px !important;
}

/* ── Blog post cards (generic — keep for single post pages) ── */
.post-item, article.post, .blog-post-card {
  background: var(--rp-white) !important;
  border-radius: var(--rp-radius-lg) !important;
  border: 1px solid var(--rp-border) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
}
.post-item:hover, article.post:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 24px rgba(15,30,53,0.08) !important;
}

/* ── Blog typography (single post) ── */
.entry-content h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(20px, 2.5vw, 28px) !important;
  font-weight: 700 !important;
  color: var(--rp-navy) !important;
  margin-top: 36px !important;
  margin-bottom: 12px !important;
}
.entry-content p {
  font-size: 16px !important;
  line-height: 1.75 !important;
  color: #334155 !important;
  margin-bottom: 16px !important;
}
.entry-content a {
  color: var(--rp-amber) !important;
  text-decoration: underline !important;
}

/* ── Hide clutter on repick cards ── */
.social_icon_inimage,
.hover_anons.meta_enabled,
.heart_thumb_wrap,
.post_thumbs_wrap,
.button_action .compare_for_grid,
.repick_item .button_action,
.woo_column_item .button_action,
.repick_item .rehub-author,
.repick_item .rh-meta,
.repick_item .hotcountbtn,
.repick_item .thumbscount,
.repick_item .rh-comment-wrap,
.repick_item .rh-like-wrap { display: none !important; }

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--rp-cream); }
::-webkit-scrollbar-thumb { background: var(--rp-amber); border-radius: 3px; }

/* ── Tagline ── */
.site-description, .rh-tagline, .logo_subtitle {
  overflow: visible !important;
  white-space: normal !important;
  font-size: 11px !important;
  letter-spacing: 0.15em !important;
  color: var(--rp-slate-light) !important;
}

/* ============================================================
   BLOG ARCHIVE PAGE — dark navy theme
   Scoped to body.blog to avoid affecting other pages
   ============================================================ */

/* ── Page background ── */
body.blog,
body.blog .rh-outer-wrap,
body.blog .rh-container,
body.blog .rh-content-wrap {
  background: var(--rp-blog-bg) !important;
  color: var(--rp-blog-text) !important;
}

/* ── Blog page title (h1 "Blog") ── */
body.blog .main-side > h1,
body.blog h1.wpsm-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  font-weight: 900 !important;
  color: var(--rp-white) !important;
  letter-spacing: -0.5px !important;
  margin-bottom: 32px !important;
  padding-bottom: 16px !important;
  border-bottom: 2px solid var(--rp-blog-border) !important;
}

/* ── Blog post card — the news-community wrapper ── */
body.blog .news-community {
  background: var(--rp-blog-card) !important;
  border-radius: var(--rp-radius-lg) !important;
  border: 1px solid var(--rp-blog-border) !important;
  margin-bottom: 20px !important;
  overflow: hidden !important;
  transition: background 0.2s, border-color 0.2s, transform 0.2s !important;
  display: flex !important;
  gap: 0 !important;
}
body.blog .news-community:hover {
  background: var(--rp-blog-card-hover) !important;
  border-color: rgba(255,255,255,0.15) !important;
  transform: translateY(-2px) !important;
}

/* ── Post image block ── */
body.blog .news-community .newsimage,
body.blog .news-community .rh_gr_img,
body.blog .news-community .rh_grid_image_wrapper {
  background: var(--rp-blog-surface) !important;
  border-right: 1px solid var(--rp-blog-border) !important;
}
body.blog .news-community figure {
  margin: 0 !important;
  background: var(--rp-blog-surface) !important;
}
body.blog .news-community .newsimage img,
body.blog .news-community .rh_gr_img img {
  object-fit: cover !important;
  display: block !important;
  width: 160px !important;
  height: 160px !important;
  min-width: 160px !important;
  filter: brightness(0.9) !important;
}

/* ── All newsdetail blocks — transparent bg ── */
body.blog .news-community .newsdetail {
  background: transparent !important;
}

/* ── Post title area (.newsdetail.newstitleblock.rh_gr_right_sec) ── */
body.blog .news-community .newsdetail.newstitleblock {
  padding: 16px 18px 4px !important;
}
body.blog .news-community .newsdetail.newstitleblock h2,
body.blog .news-community .newsdetail.newstitleblock h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--rp-white) !important;
  line-height: 1.35 !important;
  margin: 0 0 8px !important;
}
body.blog .news-community .newsdetail.newstitleblock h2 a,
body.blog .news-community .newsdetail.newstitleblock h3 a {
  color: var(--rp-white) !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
}
body.blog .news-community .newsdetail.newstitleblock h2 a:hover,
body.blog .news-community .newsdetail.newstitleblock h3 a:hover {
  color: var(--rp-amber-light) !important;
}

/* ── Post excerpt area (.newsdetail.rh_gr_right_desc) ── */
body.blog .news-community .newsdetail.rh_gr_right_desc {
  padding: 0 18px 8px !important;
}
body.blog .news-community .newsdetail.rh_gr_right_desc p {
  color: var(--rp-blog-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin: 0 0 8px !important;
}

/* ── Post meta + Read More area (.newsdetail.newsbtn.rh_gr_right_btn) ── */
body.blog .news-community .newsdetail.newsbtn {
  padding: 0 18px 14px !important;
}
body.blog .news-community .meta.post-meta,
body.blog .news-community .post-meta {
  color: var(--rp-blog-muted) !important;
  font-size: 12px !important;
  font-family: 'DM Sans', sans-serif !important;
}
body.blog .news-community .post-meta a,
body.blog .news-community .meta.post-meta a {
  color: var(--rp-blog-muted) !important;
  text-decoration: none !important;
}

/* ── "READ MORE +" link/button ── */
/* ReHub renders the archive read-more as a.btn_more (outlined). Older builds
   used a.more-link / .rh-read-more. Cover all, on blog + archive templates. */
body.blog a.btn_more,
body.archive a.btn_more,
body.blog .news-community a.more-link,
body.blog .news-community .newsdetail.newsbtn a.rh_btn,
body.blog .news-community .rh-read-more,
body.archive a.more-link {
  color: var(--rp-amber) !important;
  background: transparent !important;
  border: 1px solid var(--rp-amber) !important;
  border-radius: 8px !important;
  padding: 7px 16px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background 0.15s, color 0.15s !important;
}
body.blog a.btn_more:hover,
body.archive a.btn_more:hover,
body.blog .news-community a.more-link:hover,
body.archive a.more-link:hover {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
}

/* ── Hot meter / vote buttons — hide on blog archive ── */
body.blog .hotmeter_wrap,
body.blog .hotmeter,
body.blog .favorrightside,
body.blog .heart_thumb_wrap,
body.blog .wishonimage {
  display: none !important;
}

/* ── Sidebar — dark styling ── */
body.blog .sidebar,
body.blog aside.sidebar {
  background: var(--rp-blog-surface) !important;
  border-radius: var(--rp-radius-lg) !important;
  border: 1px solid var(--rp-blog-border) !important;
  padding: 20px !important;
  color: var(--rp-blog-text) !important;
}

/* ── Sidebar widgets ── */
body.blog .sidebar .widget,
body.blog .sidebar .widget_block {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin-bottom: 28px !important;
  color: var(--rp-blog-text) !important;
}
body.blog .sidebar .widget:last-child {
  margin-bottom: 0 !important;
}

/* ── Sidebar headings (Recent Posts, Recent Comments, etc.) ── */
body.blog .sidebar .wp-block-heading,
body.blog .sidebar h2.wp-block-heading,
body.blog .sidebar .widget-title,
body.blog .sidebar .widgettitle {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--rp-amber) !important;
  margin: 0 0 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid var(--rp-blog-border) !important;
}

/* ── Recent Posts list ── */
body.blog .sidebar .wp-block-latest-posts,
body.blog .sidebar .wp-block-latest-posts__list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.blog .sidebar .wp-block-latest-posts li,
body.blog .sidebar .wp-block-latest-posts__list li {
  padding: 6px 0 !important;
  border-bottom: 1px solid var(--rp-blog-border) !important;
}
body.blog .sidebar .wp-block-latest-posts li:last-child,
body.blog .sidebar .wp-block-latest-posts__list li:last-child {
  border-bottom: none !important;
}
body.blog .sidebar .wp-block-latest-posts__post-title,
body.blog .sidebar .wp-block-latest-posts a {
  color: var(--rp-blog-text) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
}
body.blog .sidebar .wp-block-latest-posts__post-title:hover,
body.blog .sidebar .wp-block-latest-posts a:hover {
  color: var(--rp-amber-light) !important;
}

/* ── Recent Comments text ── */
body.blog .sidebar .wp-block-group p,
body.blog .sidebar .widget p {
  color: var(--rp-blog-muted) !important;
  font-size: 13px !important;
}

/* ── Search widget ── */
body.blog .sidebar .wp-block-search__label {
  color: var(--rp-blog-muted) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
}
body.blog .sidebar .wp-block-search__input {
  background: var(--rp-blog-bg) !important;
  border: 1px solid var(--rp-blog-border) !important;
  border-radius: var(--rp-radius-sm) !important;
  color: var(--rp-blog-text) !important;
  padding: 8px 12px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.blog .sidebar .wp-block-search__input::placeholder {
  color: var(--rp-blog-muted) !important;
}
body.blog .sidebar .wp-block-search__button {
  background: var(--rp-navy-mid) !important;
  color: var(--rp-white) !important;
  border: none !important;
  border-radius: var(--rp-radius-sm) !important;
  padding: 8px 14px !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  margin-top: 6px !important;
}

/* ── "Most Popular This Month" widget (top_offers) ── */
body.blog .sidebar .widget.top_offers,
body.blog .sidebar .widget.cegg_widget_products {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}
/* Override the inline style injected by the widget */
body.blog .sidebar .widget.top_offers,
body.blog .sidebar .widget.top_offers *[style*="background: #fff"],
body.blog .sidebar .widget.top_offers *[style*="background:#fff"] {
  background: transparent !important;
}
body.blog .sidebar .top_offers .title,
body.blog .sidebar .top_offers .mb25 {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--rp-amber) !important;
  margin-bottom: 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid var(--rp-blog-border) !important;
}
/* Product rows in the Most Popular widget */
body.blog .sidebar .top_offers .offers_list_widget,
body.blog .sidebar .top_offers .widget-top-item {
  background: transparent !important;
  border-bottom: 1px solid var(--rp-blog-border) !important;
  padding: 10px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
body.blog .sidebar .top_offers .widget-top-item:last-child {
  border-bottom: none !important;
}
body.blog .sidebar .top_offers .widget-top-item img {
  width: 48px !important;
  height: 48px !important;
  object-fit: cover !important;
  border-radius: var(--rp-radius-sm) !important;
  flex-shrink: 0 !important;
}
body.blog .sidebar .top_offers h5,
body.blog .sidebar .top_offers .top_item_title {
  color: var(--rp-blog-text) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  margin: 0 0 4px !important;
}
body.blog .sidebar .top_offers h5 a,
body.blog .sidebar .top_offers .top_item_title a {
  color: var(--rp-blog-text) !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
}
body.blog .sidebar .top_offers h5 a:hover,
body.blog .sidebar .top_offers .top_item_title a:hover {
  color: var(--rp-amber-light) !important;
}
body.blog .sidebar .top_offers .price_widget,
body.blog .sidebar .top_offers .widget-price {
  color: var(--rp-amber) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  font-family: 'Playfair Display', serif !important;
}
/* The ReHub `top_offers` widget actually renders prices as .rh-deal-price >
   .woocommerce-Price-amount in the theme's default red (rgb(255,65,54)), which
   clashed with the dark amber sidebar. Re-colour the real markup to amber so the
   "Most popular this month" figures match the rest of the site. (Every product
   has a price in WooCommerce — verified via WC REST — so these always render a
   real figure; this rule is purely the colour/typography fix.) */
body.blog .sidebar .top_offers .rh-deal-price,
body.blog .sidebar .top_offers .rh-deal-price .price,
body.blog .sidebar .top_offers .rh-deal-price .woocommerce-Price-amount,
body.blog .sidebar .top_offers .rh-deal-price .woocommerce-Price-amount bdi,
body.blog .sidebar .top_offers .rh-deal-price .woocommerce-Price-currencySymbol {
  color: var(--rp-amber) !important;
  font-weight: 700 !important;
  font-family: 'Playfair Display', serif !important;
}

/* ── Newsletter / Price Alert sidebar widgets ── */
body.blog .sidebar .widget_custom_html,
body.blog .sidebar .widget_text {
  background: var(--rp-blog-card) !important;
  border-radius: var(--rp-radius-md) !important;
  border: 1px solid var(--rp-blog-border) !important;
  padding: 16px !important;
}
body.blog .sidebar .widget_custom_html p,
body.blog .sidebar .widget_text p {
  color: var(--rp-blog-muted) !important;
}
body.blog .sidebar .widget_custom_html h3,
body.blog .sidebar .widget_text h3 {
  color: var(--rp-white) !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin: 4px 0 8px !important;
}
body.blog .sidebar .widget_custom_html input[type="email"],
body.blog .sidebar .widget_text input[type="email"] {
  background: var(--rp-blog-bg) !important;
  border: 1px solid var(--rp-blog-border) !important;
  border-radius: var(--rp-radius-sm) !important;
  color: var(--rp-blog-text) !important;
  padding: 8px 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin-bottom: 8px !important;
}
body.blog .sidebar .widget_custom_html button,
body.blog .sidebar .widget_text button {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
  border: none !important;
  border-radius: var(--rp-radius-sm) !important;
  padding: 9px 16px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  cursor: pointer !important;
  width: 100% !important;
}

/* ── Scrollbar (dark for blog) ── */
body.blog ::-webkit-scrollbar-track { background: var(--rp-blog-bg) !important; }

/* ============================================================
   SINGLE POST PAGE — dark navy theme
   Scoped to body.single to avoid affecting product/shop pages
   ============================================================ */

/* ── Page background ── */
body.single,
body.single .rh-outer-wrap,
body.single .rh-container,
body.single .rh-content-wrap,
body.single #page {
  background: var(--rp-blog-bg) !important;
  color: var(--rp-blog-text) !important;
}

/* v10: the old rule that hid #main_header on single posts (because the JS
   overlay used to inject its own nav) has been REMOVED. The native header is now
   styled dark navy by CSS and must stay visible on every template, including
   single posts and single products. */

/* ── Post content area ── */
body.single .content-area,
body.single .main-side,
body.single #primary,
body.single .rh-container-in,
body.single .rh-content-left {
  background: var(--rp-blog-surface) !important;
  border-radius: var(--rp-radius-lg) !important;
  padding: 32px !important;
}

/* The actual article card and its ReHub wrapper were still white — darken them.
   .rh-post-wrapper is a transparent shell; .post-inner is the visible card. */
body.single .rh-post-wrapper {
  background: transparent !important;
}
body.single article.post,
body.single .post-inner,
body.single .single-post-content {
  background: var(--rp-blog-surface) !important;
  color: var(--rp-blog-text) !important;
}
body.single .post-inner a {
  color: var(--rp-amber) !important;
}

/* ── Post title ── */
body.single .entry-title,
body.single h1.entry-title,
body.single h1.posttitle,
body.single .title_single_area h1,
body.single .title_single_area,
body.single .post-inner > h1,
body.single article.post > h1 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(24px, 3.5vw, 38px) !important;
  font-weight: 900 !important;
  color: var(--rp-white) !important;
  line-height: 1.25 !important;
  margin-bottom: 20px !important;
}

/* ── Post meta (author, date) ── */
body.single .entry-meta,
body.single .post-meta,
body.single .rh-meta,
body.single .meta_above_title {
  color: var(--rp-blog-muted) !important;
  font-size: 13px !important;
}
body.single .entry-meta a,
body.single .post-meta a {
  color: var(--rp-blog-muted) !important;
  text-decoration: none !important;
}

/* ── Post body content ── */
body.single .entry-content,
body.single .post-content,
body.single article .entry-content {
  color: var(--rp-blog-text) !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
}
body.single .entry-content h2,
body.single .entry-content h3,
body.single .entry-content h4 {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-white) !important;
  margin-top: 32px !important;
  margin-bottom: 12px !important;
}
/* Some posts have body content placed directly inside article.post-inner
   without an .entry-content wrapper. Theme those headings/text/links too,
   excluding the post title H1 (already styled) and any UI chrome. */
body.single .post-inner > h2,
body.single .post-inner > h3,
body.single .post-inner > h4,
body.single article.post > h2,
body.single article.post > h3,
body.single article.post > h4 {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-white) !important;
  margin-top: 32px !important;
  margin-bottom: 12px !important;
}
body.single .post-inner > p,
body.single .post-inner > ul,
body.single .post-inner > ol,
body.single article.post > p,
body.single article.post > ul,
body.single article.post > ol {
  color: var(--rp-blog-text) !important;
}
body.single .post-inner > p a,
body.single .post-inner > ul a,
body.single .post-inner > ol a,
body.single article.post > p a,
body.single article.post > ul a {
  color: var(--rp-amber) !important;
}
body.single .post-inner > p strong,
body.single article.post > p strong {
  color: var(--rp-white) !important;
}
body.single .entry-content a {
  color: var(--rp-amber) !important;
  text-decoration: underline !important;
}
body.single .entry-content a:hover {
  color: var(--rp-amber-light) !important;
}
body.single .entry-content p {
  color: var(--rp-blog-text) !important;
  margin-bottom: 16px !important;
}
body.single .entry-content ul,
body.single .entry-content ol {
  color: var(--rp-blog-text) !important;
  padding-left: 24px !important;
}
body.single .entry-content li {
  margin-bottom: 6px !important;
}
body.single .entry-content strong {
  color: var(--rp-white) !important;
}
body.single .entry-content blockquote {
  background: var(--rp-blog-card) !important;
  border-left: 4px solid var(--rp-amber) !important;
  padding: 16px 20px !important;
  margin: 24px 0 !important;
  border-radius: 0 var(--rp-radius-sm) var(--rp-radius-sm) 0 !important;
}

/* ── Sidebar (dark) ── */
body.single .sidebar,
body.single aside.sidebar,
body.single .rh-content-right {
  background: var(--rp-blog-surface) !important;
  border-radius: var(--rp-radius-lg) !important;
  border: 1px solid var(--rp-blog-border) !important;
  padding: 20px !important;
  color: var(--rp-blog-text) !important;
}

/* ── Sidebar widget titles ── */
body.single .sidebar .widget-title,
body.single .sidebar .widgettitle,
body.single .sidebar h2,
body.single .sidebar .wp-block-heading {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--rp-amber) !important;
  margin: 0 0 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid var(--rp-blog-border) !important;
}

/* ── Sidebar links ── */
body.single .sidebar a,
body.single .sidebar li a {
  color: var(--rp-blog-text) !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
}
body.single .sidebar a:hover,
body.single .sidebar li a:hover {
  color: var(--rp-amber-light) !important;
}

/* ── Sidebar search ── */
body.single .sidebar .wp-block-search__input,
body.single .sidebar input[type="search"],
body.single .sidebar input[type="text"] {
  background: var(--rp-blog-bg) !important;
  border: 1px solid var(--rp-blog-border) !important;
  border-radius: var(--rp-radius-sm) !important;
  color: var(--rp-blog-text) !important;
  padding: 8px 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.single .sidebar .wp-block-search__button,
body.single .sidebar input[type="submit"] {
  background: var(--rp-navy-mid) !important;
  color: var(--rp-white) !important;
  border: none !important;
  border-radius: var(--rp-radius-sm) !important;
  padding: 8px 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  margin-top: 6px !important;
}

/* ── "Most Popular" product widget in sidebar ── */
body.single .sidebar .top_offers .widget-top-item,
body.single .sidebar .top_offers .offers_list_widget {
  background: transparent !important;
  border-bottom: 1px solid var(--rp-blog-border) !important;
  padding: 10px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
body.single .sidebar .top_offers h5,
body.single .sidebar .top_offers .top_item_title {
  color: var(--rp-blog-text) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
body.single .sidebar .top_offers h5 a {
  color: var(--rp-blog-text) !important;
}
body.single .sidebar .top_offers .price_widget {
  color: var(--rp-amber) !important;
  font-weight: 700 !important;
}

/* ── Social sharing (hide or dark) ── */
body.single .rh-social-share,
body.single .sharedaddy,
body.single .sd-sharing,
body.single .sd-social-official {
  background: transparent !important;
}
body.single .rh-social-share a,
body.single .sd-button {
  background: var(--rp-blog-card) !important;
  color: var(--rp-blog-text) !important;
  border: 1px solid var(--rp-blog-border) !important;
  border-radius: var(--rp-radius-sm) !important;
}

/* ── Comments section ── */
body.single #comments,
body.single .comments-area {
  background: var(--rp-blog-surface) !important;
  border-radius: var(--rp-radius-lg) !important;
  padding: 24px !important;
  margin-top: 24px !important;
}
body.single #comments h2,
body.single .comments-title {
  color: var(--rp-white) !important;
  font-family: 'Playfair Display', serif !important;
}
body.single .comment-content,
body.single .comment-body {
  color: var(--rp-blog-text) !important;
}

/* ── Breadcrumbs ── */
body.single .breadcrumbs,
body.single .breadcrumb,
body.single .rh-breadcrumb {
  color: var(--rp-blog-muted) !important;
  font-size: 12px !important;
}
body.single .breadcrumbs a,
body.single .breadcrumb a {
  color: var(--rp-blog-muted) !important;
  text-decoration: none !important;
}
body.single .breadcrumbs a:hover {
  color: var(--rp-amber-light) !important;
}

/* ── Hide hotmeter/social vote buttons on single post ── */
body.single .hotmeter_wrap,
body.single .hotmeter,
body.single .favorrightside,
body.single .heart_thumb_wrap {
  display: none !important;
}

/* ── Scrollbar (dark for single posts) ── */
body.single ::-webkit-scrollbar-track { background: var(--rp-blog-bg) !important; }
body.single ::-webkit-scrollbar-thumb { background: var(--rp-amber) !important; }


/* ============================================================
   UNIVERSAL LIGHT LAYER (v10)
   v10 redesign (option B): theming is 100% server-side CSS and every product
   listing is LIGHT so products read clearly. Dark navy is reserved for the
   header (styled above on the native #main_header) and the hero/page-title band.
   This replaces the old "UNIVERSAL DARK LAYER" that forced category / shop /
   product / generic pages full-navy with navy-on-navy cards. Blog archive
   (body.blog) and single blog POSTS (body.single, not single-product) keep
   their dark theme; everything else here is light.
   ============================================================ */

/* ── Page body + structural wrappers: light cream ── */
body.page:not(.home),
body.woocommerce,
body.archive:not(.home),
body.tax-product_cat,
body.post-type-archive,
body.search,
body.error404 {
  background: var(--rp-cream) !important;
  color: var(--rp-text) !important;
}
body.page:not(.home) .rh-outer-wrap,
body.page:not(.home) .rh-container,
body.page:not(.home) .rh-content-wrap,
body.page:not(.home) #wrapper,
body.page:not(.home) #content,
body.woocommerce .rh-outer-wrap,
body.woocommerce .rh-container,
body.woocommerce .rh-content-wrap,
body.woocommerce #wrapper,
body.woocommerce #content,
body.archive:not(.home) .rh-outer-wrap,
body.archive:not(.home) .rh-container,
body.archive:not(.home) .rh-content-wrap,
body.archive:not(.home) #wrapper,
body.archive:not(.home) #content,
body.tax-product_cat .rh-outer-wrap,
body.tax-product_cat .rh-container,
body.tax-product_cat .rh-content-wrap,
body.tax-product_cat #wrapper,
body.tax-product_cat #content {
  background: transparent !important;
}

/* ── Dark navy hero / archive-title band ──
   The page title strip (shop, category, generic page) is the one place dark navy
   is allowed besides the header. ReHub renders the archive H1 as .arc-main-title
   inside .rh_woo_main_archive; generic pages use .arc-main-title / .page-title. */
body.woocommerce .rh_woo_main_archive .arc-main-title,
body.tax-product_cat .rh_woo_main_archive .arc-main-title,
body.archive:not(.home) .arc-main-title,
body.page:not(.home) .arc-main-title,
body.page:not(.home) .page-title,
.arc-main-title, .archive-title, .page-title, .rh-archive-title {
  color: var(--rp-navy) !important;
  font-family: 'Playfair Display', serif !important;
  font-weight: 900 !important;
  letter-spacing: -0.5px !important;
}

/* ── Generic content article / page card → light surface ── */
body.page:not(.home) .rh-post-wrapper,
body.woocommerce .rh-post-wrapper,
body.archive:not(.home) .rh-post-wrapper,
body.tax-product_cat .rh-post-wrapper {
  background: transparent !important;
}
body.page:not(.home) article.post,
body.page:not(.home) .post-inner,
body.page:not(.home) .single-post-content,
body.page:not(.home) .page-content,
body.page:not(.home) .entry-content,
body.page:not(.home) .rh-page-content {
  background: var(--rp-white) !important;
  color: var(--rp-text) !important;
  border-radius: var(--rp-radius-lg) !important;
  border: 1px solid var(--rp-border) !important;
}

/* ── Headings (page titles, archive titles, content headings) → navy ── */
body.page:not(.home) h1, body.page:not(.home) h2, body.page:not(.home) h3,
body.page:not(.home) h4, body.page:not(.home) h5,
body.woocommerce:not(.single-product) h1, body.woocommerce h2,
body.archive:not(.home) h1, body.archive:not(.home) h2,
body.tax-product_cat h1, body.tax-product_cat h2 {
  color: var(--rp-navy) !important;
}
body.page:not(.home) .entry-content h2,
body.page:not(.home) .entry-content h3 {
  font-family: 'Playfair Display', serif !important;
}

/* ── Body copy + paragraphs + lists → dark text ── */
body.page:not(.home) p, body.page:not(.home) li, body.page:not(.home) span,
body.page:not(.home) td, body.page:not(.home) label,
body.woocommerce p, body.woocommerce li,
body.archive:not(.home) p, body.tax-product_cat p,
body.tax-product_cat .term-description p {
  color: var(--rp-text) !important;
}

/* ── Content links → amber-on-light (use the deeper amber for contrast) ── */
body.page:not(.home) .entry-content a,
body.page:not(.home) .page-content a,
body.woocommerce .term-description a {
  color: var(--rp-amber) !important;
}

/* ── Breadcrumbs → muted slate on light ── */
.woocommerce-breadcrumb,
body.page:not(.home) .rh_breadcrumbs,
body.woocommerce .rh_breadcrumbs,
body.archive:not(.home) .rh_breadcrumbs,
body.tax-product_cat .rh_breadcrumbs,
.woocommerce-breadcrumb a,
body.page:not(.home) .rh_breadcrumbs a,
body.woocommerce .rh_breadcrumbs a,
body.tax-product_cat .rh_breadcrumbs a {
  color: var(--rp-slate-light) !important;
}
.woocommerce-breadcrumb a:hover,
body.tax-product_cat .rh_breadcrumbs a:hover {
  color: var(--rp-amber) !important;
}

/* ── WooCommerce product cards (shop / category / related) → LIGHT ──
   This is the core readability fix. The cards were forced --rp-blog-card (navy)
   with white text, sitting on a navy page = navy-on-navy. Now: white card,
   light border, dark title, muted category, amber price. Matches the homepage
   product loop (which uses the same article.repick_item / li.product markup). */
body.woocommerce .product.col_item,
body.archive:not(.home) .product.col_item,
body.tax-product_cat .product.col_item,
body.woocommerce ul.products li.product,
body.archive:not(.home) ul.products li.product,
body.tax-product_cat ul.products li.product,
body.woocommerce .rh-flex-eq-height .product,
body.tax-product_cat .rh-flex-eq-height .product,
body.woocommerce article.repick_item,
body.tax-product_cat article.repick_item {
  background: var(--rp-white) !important;
  border: 1px solid var(--rp-border) !important;
  border-radius: var(--rp-radius-md) !important;
  color: var(--rp-text) !important;
  overflow: hidden !important;
}
/* Product card title → navy */
body.woocommerce .product.col_item h3,
body.tax-product_cat .product.col_item h3,
body.woocommerce .product .rh-product-title,
body.woocommerce .product .woocommerce-loop-product__title,
body.tax-product_cat .product h3 a,
body.woocommerce .product.col_item h3 a,
body.woocommerce article.repick_item h2 a,
body.woocommerce article.repick_item h3 a,
body.tax-product_cat article.repick_item h3 a {
  color: var(--rp-navy) !important;
}
/* Category label → muted slate */
body.woocommerce .product .grid_taxonomy_cat,
body.tax-product_cat .product .grid_taxonomy_cat,
body.woocommerce .product .product-loop-category,
body.woocommerce .product .term-badge,
body.tax-product_cat .product .grid_taxonomy_cat a,
body.woocommerce .product .cat_for_grid a.woocat,
body.tax-product_cat .product .cat_for_grid a.woocat,
body.woocommerce .cat_for_grid .woocat,
body.tax-product_cat .cat_for_grid .woocat {
  color: var(--rp-slate-light) !important;
}
body.woocommerce .product .cat_for_grid a.woocat:hover,
body.tax-product_cat .cat_for_grid .woocat:hover {
  color: var(--rp-amber) !important;
}
body.woocommerce .product .border-top,
body.tax-product_cat .product .border-top,
body.woocommerce .product .abp {
  border-color: var(--rp-border) !important;
}

/* ── Card footer: price + "View on" must NOT collide (carried from v9) ──
   ReHub renders the loop footer as `.abposbot` (absolutely pinned to the card
   bottom) with the price `floatleft` and the buy button `floatright`. On our
   narrower cards the float price slid UNDER the button. Re-flow the footer as a
   normal in-flow flex row: price on the left (bold amber), button on the right. */
body.woocommerce .product .border-top.abposbot,
body.tax-product_cat .product .border-top.abposbot,
body.woocommerce .product .abposbot,
body.tax-product_cat .product .abposbot {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  margin-top: auto !important;
}
body.woocommerce .product .price_for_grid,
body.tax-product_cat .product .price_for_grid {
  float: none !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
  line-height: 1.2 !important;
}
/* Price → solid amber on the light card (incl. the <bdi> digits ReHub paints) */
body.woocommerce .product .price_for_grid,
body.tax-product_cat .product .price_for_grid,
body.woocommerce .product .price_for_grid .price,
body.tax-product_cat .product .price_for_grid .price,
body.woocommerce .product .price_for_grid .amount,
body.tax-product_cat .product .price_for_grid .amount,
body.woocommerce .product .price_for_grid .woocommerce-Price-amount,
body.tax-product_cat .product .price_for_grid .woocommerce-Price-amount,
body.woocommerce .product .price_for_grid .woocommerce-Price-amount bdi,
body.tax-product_cat .product .price_for_grid .woocommerce-Price-amount bdi,
body.woocommerce .product .price_for_grid bdi,
body.tax-product_cat .product .price_for_grid bdi,
body.woocommerce .product .price_for_grid .woocommerce-Price-currencySymbol,
body.tax-product_cat .product .price_for_grid .woocommerce-Price-currencySymbol,
body.woocommerce .product .price, body.tax-product_cat .product .price,
body.woocommerce .product .price .amount, body.tax-product_cat .product .price .amount {
  color: var(--rp-amber) !important;
  font-weight: 700 !important;
  font-size: 18px !important;
  white-space: nowrap !important;
}
body.woocommerce .product del,
body.tax-product_cat .product del {
  color: var(--rp-slate-light) !important;
}
body.woocommerce .product .btn_for_grid,
body.tax-product_cat .product .btn_for_grid {
  float: none !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
}
body.woocommerce .product .btn_for_grid a.woo_loop_btn,
body.tax-product_cat .product .btn_for_grid a.woo_loop_btn {
  background: var(--rp-navy) !important;
  color: var(--rp-white) !important;
  font-weight: 700 !important;
}
body.woocommerce .product .btn_for_grid a.woo_loop_btn svg,
body.tax-product_cat .product .btn_for_grid a.woo_loop_btn svg {
  fill: var(--rp-white) !important;
}
/* Card image area: white so product photos read well */
body.woocommerce .product .rh_offers_grid_image,
body.tax-product_cat .product .rh_offers_grid_image,
body.woocommerce .product .product_loop_img,
body.woocommerce .product .col_grid_image {
  background: #ffffff !important;
}
/* "View on" / buy buttons keep amber accent */
body.woocommerce .product a.button,
body.tax-product_cat .product a.button,
body.woocommerce .product .rh_offers_grid_btn a {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
  border: none !important;
}

/* ── Single product page surfaces → LIGHT ── */
body.single-product .product .summary,
body.single-product .product .entry-summary,
body.single-product .woocommerce-product-gallery,
body.single-product .product_meta,
body.single-product .woocommerce-tabs {
  color: var(--rp-text) !important;
}
body.single-product .product .product_title,
body.single-product .product h1,
body.single-product .woocommerce-tabs h2 {
  color: var(--rp-navy) !important;
}
body.single-product .product .price,
body.single-product .product .price .amount,
body.single-product .product .price .amount bdi,
body.single-product .product .price bdi {
  color: var(--rp-amber) !important;
}
body.single-product .product .summary a,
body.single-product .product .entry-summary a,
body.single-product .yith-wcwl-add-to-wishlist a,
body.single-product .compare-button a,
body.single-product .woocommerce-product-details__short-description,
body.single-product .product .stock {
  color: var(--rp-slate) !important;
}
body.single-product .comparelabel,
body.single-product .wishlistlabel,
body.single-product .wpsm-button-new-compare,
body.woocommerce .comparelabel,
body.tax-product_cat .comparelabel,
body.woocommerce .wishlistlabel,
body.tax-product_cat .wishlistlabel,
body.woocommerce .compare_for_grid .wpsm-button,
body.tax-product_cat .compare_for_grid .wpsm-button {
  color: var(--rp-slate-light) !important;
}
body.single-product .comparelabel:hover,
body.woocommerce .comparelabel:hover,
body.tax-product_cat .comparelabel:hover {
  color: var(--rp-amber) !important;
}
body.single-product .woocommerce-breadcrumb,
body.single-product .woocommerce-breadcrumb a {
  color: var(--rp-slate-light) !important;
}
body.single-product .woocommerce-breadcrumb a:hover {
  color: var(--rp-amber) !important;
}
body.single-product .product .summary a:hover,
body.single-product .yith-wcwl-add-to-wishlist a:hover,
body.single-product .compare-button a:hover {
  color: var(--rp-amber) !important;
}
body.single-product .product .summary .posted_in a,
body.single-product .product .product_meta a {
  color: var(--rp-amber) !important;
}
body.single-product .product .summary p,
body.single-product .product .entry-summary p,
body.single-product .woocommerce-product-details__short-description p {
  color: var(--rp-text) !important;
}
body.single-product .woocommerce-product-gallery__image,
body.single-product .woocommerce-product-gallery img {
  background: #ffffff !important;
  border-radius: var(--rp-radius-md) !important;
}
body.single-product .woocommerce-tabs ul.tabs li {
  background: var(--rp-cream) !important;
  border-color: var(--rp-border) !important;
}
body.single-product .woocommerce-tabs ul.tabs li a {
  color: var(--rp-navy) !important;
}
body.single-product .woocommerce-Tabs-panel {
  background: var(--rp-white) !important;
  color: var(--rp-text) !important;
  border-radius: var(--rp-radius-md) !important;
  padding: 20px !important;
  border: 1px solid var(--rp-border) !important;
}

/* ── Sidebar widgets (shop / category / page) → light ── */
body.page:not(.home) .sidebar, body.page:not(.home) aside.sidebar,
body.woocommerce .sidebar, body.woocommerce aside.sidebar,
body.archive:not(.home) .sidebar, body.tax-product_cat .sidebar,
body.tax-product_cat aside.sidebar {
  background: transparent !important;
}
body.page:not(.home) .sidebar .widget,
body.woocommerce .sidebar .widget,
body.archive:not(.home) .sidebar .widget,
body.tax-product_cat .sidebar .widget {
  background: var(--rp-white) !important;
  border: 1px solid var(--rp-border) !important;
  border-radius: var(--rp-radius-md) !important;
  padding: 18px !important;
  margin-bottom: 20px !important;
  color: var(--rp-text) !important;
}
body.page:not(.home) .sidebar .widget-title,
body.page:not(.home) .sidebar .widgettitle,
body.page:not(.home) .sidebar h2.wp-block-heading,
body.page:not(.home) .sidebar .widget > .title,
body.woocommerce .sidebar .widget-title,
body.woocommerce .sidebar .widgettitle,
body.woocommerce .sidebar .widget > .title,
body.woocommerce .widget_price_filter .title,
body.tax-product_cat .sidebar .widget-title,
body.tax-product_cat .sidebar .widgettitle,
body.tax-product_cat .sidebar .widget > .title,
body.tax-product_cat .widget_price_filter .title {
  color: var(--rp-navy) !important;
  font-family: 'Playfair Display', serif !important;
}
/* Price-filter widget: amber/navy accent on light */
body.woocommerce .widget_price_filter .price_slider_amount .button,
body.woocommerce .widget_price_filter button,
body.archive:not(.home) .widget_price_filter .price_slider_amount .button,
body.tax-product_cat .widget_price_filter .price_slider_amount .button,
body.tax-product_cat .widget_price_filter button {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
  border: none !important;
  border-radius: var(--rp-radius-sm) !important;
  font-weight: 700 !important;
}
body.woocommerce .widget_price_filter .price_slider_amount .button:hover,
body.tax-product_cat .widget_price_filter .price_slider_amount .button:hover,
body.tax-product_cat .widget_price_filter button:hover {
  background: var(--rp-amber-light) !important;
}
body.woocommerce .widget_price_filter .ui-slider .ui-slider-range,
body.archive:not(.home) .widget_price_filter .ui-slider .ui-slider-range,
body.tax-product_cat .widget_price_filter .ui-slider .ui-slider-range {
  background: var(--rp-amber) !important;
}
body.woocommerce .widget_price_filter .ui-slider,
body.tax-product_cat .widget_price_filter .ui-slider {
  background: var(--rp-border) !important;
}
body.woocommerce .widget_price_filter .ui-slider .ui-slider-handle,
body.tax-product_cat .widget_price_filter .ui-slider .ui-slider-handle {
  background: var(--rp-navy) !important;
  border: 2px solid var(--rp-amber) !important;
}
body.woocommerce .widget_price_filter .price_label,
body.tax-product_cat .widget_price_filter .price_label,
body.woocommerce .widget_price_filter .price_label span,
body.tax-product_cat .widget_price_filter .price_label span {
  color: var(--rp-text) !important;
}
/* Sidebar links → navy, amber on hover */
body.page:not(.home) .sidebar a,
body.woocommerce .sidebar a,
body.archive:not(.home) .sidebar a,
body.tax-product_cat .sidebar a,
body.page:not(.home) .sidebar .wp-block-latest-posts a,
body.page:not(.home) .sidebar li a,
body.page:not(.home) .sidebar .widget_recent_entries a {
  color: var(--rp-navy) !important;
  text-decoration: none !important;
}
body.page:not(.home) .sidebar a:hover,
body.woocommerce .sidebar a:hover,
body.tax-product_cat .sidebar a:hover,
body.page:not(.home) .sidebar li a:hover {
  color: var(--rp-amber) !important;
}
body.page:not(.home) .sidebar li,
body.woocommerce .sidebar li,
body.tax-product_cat .sidebar li {
  border-color: var(--rp-border) !important;
  color: var(--rp-text) !important;
}

/* ── Search + form inputs → light ── */
body.page:not(.home) input[type="text"],
body.page:not(.home) input[type="email"],
body.page:not(.home) input[type="search"],
body.page:not(.home) input.search-field,
body.page:not(.home) .widget_search input,
body.page:not(.home) .wp-block-search__input,
body.page:not(.home) textarea,
body.woocommerce input[type="text"],
body.woocommerce input[type="search"],
body.woocommerce input.search-field,
body.woocommerce .widget_search input,
body.woocommerce .wp-block-search__input,
body.tax-product_cat input[type="text"],
body.tax-product_cat input[type="search"],
body.tax-product_cat input.search-field,
body.tax-product_cat .widget_search input,
body.tax-product_cat .wp-block-search__input {
  background: var(--rp-white) !important;
  border: 1px solid var(--rp-border) !important;
  color: var(--rp-text) !important;
  border-radius: var(--rp-radius-sm) !important;
}
body.page:not(.home) input::placeholder,
body.page:not(.home) textarea::placeholder {
  color: var(--rp-slate-light) !important;
}
body.page:not(.home) input[type="submit"],
body.page:not(.home) .wpcf7-submit,
body.page:not(.home) button[type="submit"] {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
  border: none !important;
  border-radius: var(--rp-radius-sm) !important;
  font-weight: 600 !important;
  padding: 12px 28px !important;
  cursor: pointer !important;
}
body.page:not(.home) .wpcf7-form label {
  color: var(--rp-text) !important;
  display: block !important;
  margin-bottom: 14px !important;
}
.wpcf7-contact-form-not-found { display: none !important; }

/* WooCommerce ordering dropdown + result count → light */
body.woocommerce select.orderby,
body.tax-product_cat select.orderby,
body.woocommerce .woocommerce-ordering select,
body.tax-product_cat .woocommerce-ordering select {
  background: var(--rp-white) !important;
  color: var(--rp-text) !important;
  border: 1px solid var(--rp-border) !important;
  border-radius: var(--rp-radius-sm) !important;
  padding: 8px 12px !important;
}
body.woocommerce .nice-select,
body.tax-product_cat .nice-select,
body.woocommerce .nice-select .list,
body.tax-product_cat .nice-select .list,
body.woocommerce .nice-select .option,
body.tax-product_cat .nice-select .option {
  background: var(--rp-white) !important;
  color: var(--rp-text) !important;
  border-color: var(--rp-border) !important;
}
body.woocommerce .nice-select .option:hover,
body.tax-product_cat .nice-select .option:hover,
body.woocommerce .nice-select .option.selected,
body.tax-product_cat .nice-select .option.selected {
  background: var(--rp-cream) !important;
  color: var(--rp-navy) !important;
}
body.woocommerce .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count {
  color: var(--rp-slate-light) !important;
}

/* "Top offers" sidebar deal widget → light on category/page (kept dark on single posts) */
body.page:not(.home) .widget.top_offers,
body.woocommerce .widget.top_offers,
body.tax-product_cat .widget.top_offers,
body.page:not(.home) .widget.top_offers .rh_deal_block,
body.woocommerce .widget.top_offers .rh_deal_block {
  background: var(--rp-white) !important;
  color: var(--rp-text) !important;
}
body.page:not(.home) .widget.top_offers .title,
body.woocommerce .widget.top_offers .title {
  color: var(--rp-navy) !important;
}

/* ── Single-post clean-up (gaps found on live verify) ── */
/* "N Views" meta was bright red — mute it */
body.single .postview_meta,
body.single .postviewcomm,
body.single .postviewcomm a,
body.single .postcommentnum {
  color: var(--rp-blog-muted) !important;
}
/* Prev/next post navigation card was white */
body.single .inner-prevnext,
body.single .postnavprev,
body.single .postnavnext,
body.single .post-prev-next {
  background: var(--rp-blog-card) !important;
  color: var(--rp-blog-text) !important;
  border: 1px solid var(--rp-blog-border) !important;
  border-radius: var(--rp-radius-md) !important;
}
body.single .inner-prevnext a,
body.single .postnavprev a,
body.single .postnavnext a,
body.single .inner-prevnext .headline,
body.single .inner-prevnext h4,
body.single .postnavprev h4,
body.single .postnavnext h4,
body.single .inner-prevnext span,
body.single .inner-prevnext .prevlink,
body.single .inner-prevnext .nextlink {
  color: var(--rp-blog-text) !important;
}
/* ── "Related Articles" grid at the foot of single posts ──
   ReHub renders .columned_grid_module > article.col_item cards with transparent
   bg and red (rgb(255,65,54)) title links. Theme them as dark cards. */
body.single .columned_grid_module article.col_item {
  background: var(--rp-blog-card) !important;
  border: 1px solid var(--rp-blog-border) !important;
  border-radius: var(--rp-radius-md) !important;
  overflow: hidden !important;
}
body.single .columned_grid_module article.col_item .content_constructor {
  padding: 14px 16px !important;
}
body.single .columned_grid_module .content_constructor h2,
body.single .columned_grid_module .content_constructor h3,
body.single .columned_grid_module .content_constructor h2 a,
body.single .columned_grid_module .content_constructor h3 a {
  color: var(--rp-white) !important;
  font-family: 'Playfair Display', serif !important;
}
body.single .columned_grid_module .content_constructor h2 a:hover,
body.single .columned_grid_module .content_constructor h3 a:hover {
  color: var(--rp-amber) !important;
}
body.single .columned_grid_module .col_item .meta,
body.single .columned_grid_module .col_item .post-meta,
body.single .columned_grid_module .col_item .postdate,
body.single .columned_grid_module .col_item time {
  color: var(--rp-blog-muted) !important;
}

/* "Top offers" sidebar deal widget had a forced white background */
body.single .widget.top_offers,
body.single .widget.top_offers .rh_deal_block,
body.page:not(.home) .widget.top_offers,
body.page:not(.home) .widget.top_offers .rh_deal_block {
  background: var(--rp-blog-surface) !important;
  color: var(--rp-blog-text) !important;
}
body.single .widget.top_offers .title,
body.page:not(.home) .widget.top_offers .title {
  color: var(--rp-white) !important;
}
/* Comment form inputs on single posts were white */
body.single #commentform input[type="text"],
body.single #commentform input[type="email"],
body.single #commentform input[type="url"],
body.single #commentform textarea,
body.single .comment-form input[type="text"],
body.single .comment-form input[type="email"],
body.single .comment-form textarea {
  background: var(--rp-blog-card) !important;
  border: 1px solid var(--rp-blog-border) !important;
  color: var(--rp-blog-text) !important;
  border-radius: var(--rp-radius-sm) !important;
}
body.single .comment-form label,
body.single #commentform label {
  color: var(--rp-blog-text) !important;
}
body.single #commentform input[type="submit"],
body.single .comment-form input[type="submit"],
body.single .comment-form button {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
  border: none !important;
  border-radius: var(--rp-radius-sm) !important;
}
/* Comment-form notes / cookie consent text legible */
body.single .comment-form .comment-notes,
body.single .comment-form .comment-form-cookies-consent label,
body.single .comment-respond p {
  color: var(--rp-blog-muted) !important;
}
/* The .comment-respond wrapper itself rendered light grey (rgb(246,246,246)).
   Make it part of the dark comments card. */
body.single .comment-respond,
body.single #respond,
body.single .comment-respond .comment-form {
  background: transparent !important;
}
body.single .comment-reply-title,
body.single #reply-title {
  color: var(--rp-white) !important;
  font-family: 'Playfair Display', serif !important;
}

/* ============================================================
   SINGLE-PRODUCT LIGHT OVERRIDES (v10)
   A single-product page is BOTH body.single-product AND body.single, so the
   single blog-POST dark rules above also matched it and left the sidebar deal
   widgets (.top_offers / latest-comparisons) dark navy on an otherwise light
   page. These last-wins overrides keep the product page fully light.
   ============================================================ */
body.single-product .sidebar .widget,
body.single-product .sidebar .widget.top_offers,
body.single-product .sidebar .rh_latest_compare_widget,
body.single-product .sidebar .top_offers .widget-top-item,
body.single-product .sidebar .top_offers .offers_list_widget,
body.single-product .widget.top_offers .rh_deal_block,
body.single-product .widget.top_offers {
  background: var(--rp-white) !important;
  border: 1px solid var(--rp-border) !important;
  color: var(--rp-text) !important;
}
body.single-product .sidebar .widget-title,
body.single-product .sidebar .widgettitle,
body.single-product .sidebar .top_offers .title,
body.single-product .sidebar .top_offers h5,
body.single-product .sidebar .top_offers .top_item_title,
body.single-product .sidebar .top_offers h5 a {
  color: var(--rp-navy) !important;
}
body.single-product .sidebar a,
body.single-product .sidebar li a {
  color: var(--rp-navy) !important;
}
body.single-product .sidebar a:hover,
body.single-product .sidebar li a:hover {
  color: var(--rp-amber) !important;
}
/* Deal price inside the widget stays amber for emphasis */
body.single-product .sidebar .top_offers .price_widget,
body.single-product .sidebar .top_offers .price_widget .amount,
body.single-product .sidebar .top_offers .price_widget bdi {
  color: var(--rp-amber) !important;
}
/* Widget item rows: light separators */
body.single-product .sidebar .top_offers li,
body.single-product .sidebar .top_offers .widget-top-item {
  border-color: var(--rp-border) !important;
}

/* ============================================================
   BESPOKE SITE CHROME (v11) — server-side rendered sections
   The distinctive Rational Picks design (hero band, price-intelligence
   insight band, "Just Dropped" mini-grid and branded navy footer) is
   recreated here. The MARKUP is printed server-side by the mu-plugin
   (rp-auth-fix.php) into the initial HTML — BEFORE first paint — so there
   is no post-load repaint/flash. rp-image-swap.js stays inert. These
   classes use the rp4- prefix to avoid clashing with the old (now dead)
   rp2- JS classes. Real product data (titles + prices) is queried in PHP
   and printed into the markup; nothing here ships fake prices.

   Layout (v4.1): the mu-plugin injects the hero AFTER the theme header (via
   output buffering, spliced just before the rh-container content opener), so the
   order on the home page is header (top), then hero, then content. The HERO is
   HOME-ONLY (the earlier inner-page
   compact variant rendered as a broken fragment, so it was dropped). The insight
   band, "Just Dropped" grid and branded footer render SITE-WIDE (printed in
   wp_footer, after content), giving inner pages the bespoke chrome without a
   hero burying their product grid.
   ============================================================ */

/* ── HERO (full, home) ───────────────────────────────────── */
.rp4-hero {
  background: var(--rp-navy);
  color: #fff;
  padding: 64px 2rem 72px;
  position: relative;
  overflow: hidden;
}
.rp4-hero::before {
  content: '';
  position: absolute;
  top: -80px; right: -80px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(232,160,32,0.12) 0%, transparent 70%);
  pointer-events: none;
}
.rp4-hin {
  max-width: 1160px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
  position: relative;
  z-index: 1;
}
.rp4-hbadge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(232,160,32,0.15);
  border: 1px solid rgba(232,160,32,0.3);
  color: var(--rp-amber-light);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 20px;
  margin-bottom: 20px;
}
.rp4-ht {
  font-family: 'Playfair Display', serif !important;
  font-size: 50px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: -1.5px !important;
  margin: 0 0 20px !important;
  color: #fff !important;
}
.rp4-ht em { font-style: normal; color: var(--rp-amber); }
.rp4-hsub {
  font-size: 17px;
  color: rgba(255,255,255,0.65) !important;
  font-weight: 300;
  line-height: 1.7;
  margin-bottom: 32px;
  max-width: 440px;
}
.rp4-proof { display: flex; gap: 32px; align-items: center; }
.rp4-pi { display: flex; flex-direction: column; gap: 2px; }
.rp4-pn {
  font-family: 'Playfair Display', serif;
  font-size: 28px;
  font-weight: 700;
  color: var(--rp-amber) !important;
  line-height: 1;
}
.rp4-pl {
  font-size: 12px;
  color: rgba(255,255,255,0.45) !important;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-weight: 500;
}
.rp4-pdiv { width: 1px; height: 36px; background: rgba(255,255,255,0.15); }
.rp4-hr { display: flex; flex-direction: column; gap: 12px; }
.rp4-hc {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  padding: 16px 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
  transition: all 0.2s;
  position: relative;
  overflow: hidden;
}
.rp4-hc:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(232,160,32,0.4);
  transform: translateX(4px);
}
.rp4-hc.feat { border-color: rgba(232,160,32,0.5); background: rgba(232,160,32,0.08); }
.rp4-hci {
  width: 54px; height: 54px;
  background: var(--rp-navy-light);
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; overflow: hidden;
}
.rp4-hci img { width: 54px; height: 54px; object-fit: cover; border-radius: 10px; }
.rp4-hcb { flex: 1; min-width: 0; }
.rp4-hcn {
  font-size: 14px; font-weight: 500; color: #fff !important;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.rp4-hcm { font-size: 12px; color: rgba(255,255,255,0.45) !important; margin-top: 2px; }
.rp4-hcp { text-align: right; flex-shrink: 0; }
.rp4-hcnow { font-size: 16px; font-weight: 600; color: var(--rp-amber-light) !important; }
.rp4-hcwas { font-size: 11px; color: rgba(255,255,255,0.35) !important; text-decoration: line-through; }
.rp4-hcbadge {
  position: absolute; top: 10px; right: 10px;
  background: var(--rp-amber); color: var(--rp-navy);
  font-size: 10px; font-weight: 700; padding: 2px 7px;
  border-radius: 4px; text-transform: uppercase;
}

/* Hero is HOME-ONLY (v4.1) — no compact inner-page variant. Inner pages get the
   bespoke chrome via the insight band, "Just Dropped" grid and branded footer. */

/* ── INSIGHT band ────────────────────────────────────────── */
.rp4-insight-wrap { max-width: 1160px; margin: 0 auto; padding: 0 2rem; }
.rp4-insight {
  background: var(--rp-navy);
  border-radius: 16px;
  padding: 28px 32px;
  margin: 40px 0;
  display: flex;
  align-items: center;
  gap: 24px;
  color: #fff;
}
.rp4-iico { font-size: 36px; flex-shrink: 0; }
.rp4-ibody { flex: 1; }
.rp4-ilbl {
  font-size: 11px; font-weight: 600; color: var(--rp-amber) !important;
  text-transform: uppercase; letter-spacing: 0.8px; margin-bottom: 4px;
}
.rp4-itxt { font-size: 16px; color: rgba(255,255,255,0.85) !important; line-height: 1.5; }
.rp4-itxt strong { color: #fff !important; }
.rp4-icta {
  background: var(--rp-amber); color: var(--rp-navy) !important;
  border: none; padding: 11px 22px; border-radius: 10px;
  font-family: 'DM Sans', sans-serif; font-weight: 700; font-size: 14px;
  white-space: nowrap; flex-shrink: 0; text-decoration: none;
}
.rp4-icta:hover { background: var(--rp-amber-light); color: var(--rp-navy) !important; }

/* ── JUST DROPPED mini-grid ──────────────────────────────── */
.rp4-just-wrap { max-width: 1160px; margin: 0 auto; padding: 8px 2rem 8px; }
.rp4-jsh {
  display: flex; align-items: flex-end; justify-content: space-between;
  margin-bottom: 20px; margin-top: 12px;
}
.rp4-jstitle {
  font-family: 'Playfair Display', serif !important;
  font-size: 26px !important; font-weight: 700 !important;
  color: var(--rp-navy) !important; letter-spacing: -0.5px !important; margin: 0 !important;
}
.rp4-jssub { font-size: 14px; color: var(--rp-slate-light) !important; margin-top: 4px; }
.rp4-mgrid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 14px;
}
.rp4-mc {
  background: #fff;
  border: 1px solid var(--rp-border);
  border-radius: 10px;
  padding: 14px;
  display: flex;
  gap: 12px;
  align-items: center;
  text-decoration: none;
  transition: all 0.15s;
}
.rp4-mc:hover { border-color: #c8c3b8; box-shadow: 0 2px 12px rgba(15,30,53,0.06); }
.rp4-mico {
  width: 44px; height: 44px;
  background: var(--rp-cream);
  border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; flex-shrink: 0; overflow: hidden;
}
.rp4-mico img { width: 44px; height: 44px; object-fit: cover; border-radius: 6px; }
.rp4-mb { flex: 1; min-width: 0; }
.rp4-mn {
  font-size: 13px; font-weight: 600; color: var(--rp-navy) !important;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-bottom: 2px;
}
.rp4-mp { font-size: 14px; font-weight: 700; color: var(--rp-navy) !important; }
.rp4-mbadge {
  font-size: 10px; font-weight: 700; color: var(--rp-amber) !important;
  background: var(--rp-amber-pale); border: 1px solid #f0d8a0;
  padding: 2px 6px; border-radius: 4px; flex-shrink: 0;
  text-transform: uppercase; letter-spacing: 0.5px; align-self: flex-start;
}

/* ── BRANDED FOOTER ──────────────────────────────────────── */
#rp4-footer {
  background: var(--rp-navy);
  color: rgba(255,255,255,0.55) !important;
  padding: 48px 2rem 32px;
  margin-top: 56px;
}
.rp4-fin { max-width: 1160px; margin: 0 auto; }
.rp4-ftop {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 3rem;
  margin-bottom: 40px;
}
.rp4-fbrand { display: flex; flex-direction: column; gap: 12px; }
.rp4-flogo { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.rp4-flm {
  width: 32px; height: 32px;
  background: var(--rp-amber);
  border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Playfair Display', serif; font-weight: 700; font-size: 16px;
  color: var(--rp-navy) !important;
}
.rp4-fln { font-weight: 600; font-size: 15px; color: #fff !important; }
.rp4-fdesc { font-size: 13px; line-height: 1.7; max-width: 280px; color: rgba(255,255,255,0.55) !important; }
.rp4-fdisc {
  font-size: 11px; line-height: 1.6;
  background: rgba(255,255,255,0.06);
  border-radius: 6px;
  padding: 10px 14px;
  border-left: 2px solid rgba(232,160,32,0.4);
  color: rgba(255,255,255,0.55) !important;
}
.rp4-fct {
  font-size: 12px; font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.8px; color: #fff !important; margin-bottom: 14px;
}
.rp4-fl { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.rp4-fl li { margin: 0; }
.rp4-fl a { font-size: 13px; color: rgba(255,255,255,0.5) !important; text-decoration: none; transition: color 0.15s; }
.rp4-fl a:hover { color: rgba(255,255,255,0.85) !important; }
.rp4-fbot {
  border-top: 1px solid rgba(255,255,255,0.08);
  padding-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  color: rgba(255,255,255,0.55) !important;
}

/* ReHub renders its own footer (#footer / .rh-footer); hide it so our branded
   footer is the only one. Our markup is appended at the end of <body>. */
#footer, .rh-footer, .footer-wrap, #colophon { display: none !important; }

/* ── Section header for the native product loop ("Top Picks Right Now")
   This is printed server-side just before the WooCommerce/ReHub product loop
   on the homepage. ── */
.rp4-sh-wrap { max-width: 1160px; margin: 0 auto; padding: 40px 2rem 0; }
.rp4-sh {
  display: flex; align-items: flex-end; justify-content: space-between;
  margin-bottom: 4px;
}
.rp4-stitle {
  font-family: 'Playfair Display', serif !important;
  font-size: 28px !important; font-weight: 700 !important;
  color: var(--rp-navy) !important; letter-spacing: -0.5px !important; margin: 0 !important;
}
.rp4-ssub { font-size: 14px; color: var(--rp-slate-light) !important; margin-top: 4px; font-weight: 400; }
.rp4-va {
  font-size: 13px; font-weight: 600; color: var(--rp-navy) !important;
  text-decoration: none; padding: 6px 14px;
  border: 1px solid var(--rp-border); border-radius: 8px; transition: all 0.15s;
  white-space: nowrap;
}
.rp4-va:hover { background: #fff; border-color: #c8c3b8; }

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 900px) {
  .rp4-hin { grid-template-columns: 1fr; }
  .rp4-hr { display: none; }
  .rp4-ht { font-size: 38px !important; }
  .rp4-ftop { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .rp4-insight { flex-wrap: wrap; }
}
@media (max-width: 640px) {
  .rp4-ht { font-size: 30px !important; }
  .rp4-proof { gap: 18px; }
  .rp4-ftop { grid-template-columns: 1fr; }
  .rp4-jsh { flex-direction: column; align-items: flex-start; gap: 8px; }
}


/* ============================================================
   v12 — LOGO LOCKUP + PROFESSIONAL POLISH PASS
   Appended last so these rules win on source order. Two parts:
   (1) CSS web-font logo lockup replacing the broken baked-in PNG
       (dark text + clipped tagline) with a crisp light-on-navy
       Playfair wordmark + letter-spaced DM Sans tagline.
   (2) Whole-shop polish: premium product cards, clearer
       typography/hierarchy, calmer layout/density, cohesive
       navy/amber/cream styling — listing AND single product.
   100% server-side CSS on existing ReHub markup. Flash-free,
   no JS re-skinning. Light cards everywhere. British English.
   ============================================================ */

/* ──────────────────────────────────────────────────────────
   PART 1 — LOGO LOCKUP (desktop .logo_image + mobile .logo_image_mobile)
   The header logo is a baked-in raster (logo.png) with dark
   "Rational" text and the tagline rendered INSIDE the image, so
   it reads near-invisible on navy and the tagline clips. We hide
   the PNG and paint a real text lockup on the anchor via
   ::before (wordmark) and ::after (tagline) — no markup change,
   so it works on every template, flash-free. The anchor keeps a
   sensible click target / height so the header never collapses.
   ────────────────────────────────────────────────────────── */

/* Hide the broken raster (desktop, mobile and mobile-panel copies) */
.logo_image img,
.logo_image_mobile img,
#main_header .logo img,
#mobpanelimg {
  display: none !important;
}

/* The logo anchor becomes the lockup container. white-space:nowrap +
   overflow:visible on a width:auto anchor guarantees the tagline line
   renders full-width and never clips. */
.logo_image,
.logo_image_mobile {
  display: inline-flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  width: auto !important;
  max-width: none !important;
  min-height: 50px !important;
  height: auto !important;
  padding: 6px 0 !important;
  overflow: visible !important;
  text-decoration: none !important;
  line-height: 1 !important;
}

/* Wordmark — "Rational Picks". Playfair, white, with "Picks" amber.
   ::before paints "Rational " white; a nested amber span isn't available
   (no markup change), so we render the full wordmark white and tint the
   second word with a gradient clip fallback is brittle — instead we use
   two pseudo-runs: ::before = full wordmark white, then an amber accent
   underline. Simpler + robust: full wordmark white, amber dot separator
   in the tagline. To get "Picks" amber without extra markup we use a
   linear-gradient text fill scoped to the wordmark. */
.logo_image::before,
.logo_image_mobile::before {
  content: "Rational Picks";
  display: block;
  font-family: 'Playfair Display', serif !important;
  font-weight: 700 !important;
  font-size: 26px !important;
  line-height: 1.05 !important;
  letter-spacing: -0.5px !important;
  color: #ffffff !important;
  white-space: nowrap !important;
  /* Amber accent on the trailing word via gradient text fill:
     white up to ~62% of the width (covers "Rational "), amber after. */
  background: linear-gradient(90deg,
    #ffffff 0%, #ffffff 62%,
    var(--rp-amber-light) 62%, var(--rp-amber-light) 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* Tagline — "SMART DEALS · HONEST PICKS". DM Sans, letter-spaced,
   light grey on navy. Full-width, no clipping. */
.logo_image::after,
.logo_image_mobile::after {
  content: "SMART DEALS \00B7 HONEST PICKS";
  display: block;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 500 !important;
  font-size: 9.5px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.72) !important;
  white-space: nowrap !important;
  margin-top: 4px !important;
}

/* Mobile logo variant: slightly smaller wordmark, tagline still shown
   in full (the mobile header has room once the PNG width constraint is
   gone). */
.logo_image_mobile::before { font-size: 22px !important; }
.logo_image_mobile::after  { font-size: 8.5px !important; letter-spacing: 0.14em !important; }

/* Keep the lockup vertically centred within the ReHub logo cell and
   stop any inherited ReHub max-width/height squashing it. */
#main_header .logo,
#main_header .logo-section,
.logo.hideontablet {
  max-width: none !important;
  width: auto !important;
  overflow: visible !important;
}

/* ──────────────────────────────────────────────────────────
   PART 2 — PRODUCT LISTING CARDS (shop / category / related)
   Refines the v10/v11 light layer into a premium card: stronger
   framing, consistent image tile, clearer title→price→CTA
   hierarchy, calmer spacing, cohesive navy/amber.
   ────────────────────────────────────────────────────────── */

/* Grid: comfortable gutters, equal-height cells */
body.woocommerce .products.grid_woo,
body.tax-product_cat .products.grid_woo,
body.woocommerce ul.products,
body.tax-product_cat ul.products,
body.woocommerce .rh-flex-eq-height.products,
body.tax-product_cat .rh-flex-eq-height.products {
  gap: 24px !important;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
}

/* The card itself — premium framing + lift on hover */
body.woocommerce .product.col_item,
body.tax-product_cat .product.col_item,
body.woocommerce ul.products li.product,
body.tax-product_cat ul.products li.product,
body.woocommerce article.repick_item,
body.tax-product_cat article.repick_item {
  background: var(--rp-white) !important;
  border: 1px solid var(--rp-border) !important;
  border-radius: var(--rp-radius-lg) !important;
  /* Mockup A: a clearly visible resting frame so EVERY card reads as fully
     bounded — fixes the complaint that the leftmost/rightmost cards looked
     unbounded/floating against the cream background. */
  box-shadow: 0 2px 10px rgba(15,30,53,0.05) !important;
  padding: 16px 16px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  transition: box-shadow 0.18s ease, transform 0.18s ease, border-color 0.18s ease !important;
}
body.woocommerce .product.col_item:hover,
body.tax-product_cat .product.col_item:hover,
body.woocommerce ul.products li.product:hover,
body.tax-product_cat ul.products li.product:hover {
  box-shadow: 0 10px 28px rgba(15,30,53,0.10) !important;
  border-color: #d9d3c6 !important;
  transform: translateY(-3px) !important;
}

/* Image tile: consistent aspect, contain so varied shots align, soft
   cream backdrop so cut-outs and white-bg photos both read cleanly. */
body.woocommerce .product figure,
body.tax-product_cat .product figure,
body.woocommerce .product .img-centered-flex,
body.tax-product_cat .product .img-centered-flex {
  margin: 0 0 14px !important;
  background: var(--rp-cream) !important;
  border-radius: var(--rp-radius-md) !important;
  aspect-ratio: 1 / 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
body.woocommerce .product figure img,
body.tax-product_cat .product figure img,
body.woocommerce .product .img-centered-flex img,
body.tax-product_cat .product .img-centered-flex img {
  max-width: 86% !important;
  max-height: 86% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  mix-blend-mode: multiply !important;
}

/* Title: DM Sans 600 navy, clamped to two lines for even card heights */
body.woocommerce .product h3,
body.tax-product_cat .product h3,
body.woocommerce .product h3 a,
body.tax-product_cat .product h3 a {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  color: var(--rp-navy) !important;
  letter-spacing: -0.1px !important;
}
body.woocommerce .product h3,
body.tax-product_cat .product h3 {
  margin: 0 0 10px !important;
  min-height: 42px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
body.woocommerce .product h3 a:hover,
body.tax-product_cat .product h3 a:hover { color: var(--rp-amber) !important; }

/* Badge ("Featured!") → flat amber pill, not the loud ReHub ribbon */
body.woocommerce .product .re-ribbon-badge,
body.tax-product_cat .product .re-ribbon-badge,
body.woocommerce .product .re-ribbon-badge span,
body.tax-product_cat .product .re-ribbon-badge span {
  background: var(--rp-amber-pale) !important;
  color: #9a6b12 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 600 !important;
  font-size: 10px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 999px !important;
  padding: 3px 10px !important;
}
body.woocommerce .product .re-ribbon-badge::before,
body.woocommerce .product .re-ribbon-badge::after,
body.tax-product_cat .product .re-ribbon-badge::before,
body.tax-product_cat .product .re-ribbon-badge::after { display: none !important; }

/* ── HIDE the redundant ReHub "Featured!" ribbon on archive/shop/category cards ──
   Decision (approved): every product on this curated affiliate site is hand-picked,
   so a "Featured!" flag on every card is noise — and the homepage curated cards
   don't carry it. The ribbon is `.re-ribbon-badge.badge_2`, whose ReHub stylesheet
   sets a FIXED 100x100 circle that the pill restyle above never overrode (it set
   border-radius/padding but not width/height), so it rendered as a cream circle
   bleeding over the product photo. Remove it outright on the loop pages.
   This targets ONLY the "Featured" ribbon — `.onsale` and any genuine sale /
   discount badge are deliberately NOT matched here, so a real WC sale still
   surfaces its saving %. */
body.woocommerce .product .re-ribbon-badge,
body.tax-product_cat .product .re-ribbon-badge,
body.post-type-archive-product .product .re-ribbon-badge,
body.woocommerce-page .product .re-ribbon-badge {
  display: none !important;
}

/* Footer (Mockup A): price on its own line, full-width SOLID AMBER CTA stacked
   beneath it. Column-stack + align-items:stretch so the CTA spans the whole card
   width — replaces the old price-left / small-navy-pill-right row. */
body.woocommerce .product .abposbot,
body.tax-product_cat .product .abposbot {
  position: static !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 10px !important;
  width: 100% !important;
  margin-top: auto !important;
  padding-top: 14px !important;
  border-top: 1px solid var(--rp-border) !important;
}
body.woocommerce .product .price_for_grid,
body.tax-product_cat .product .price_for_grid,
body.woocommerce .product .price_for_grid .amount,
body.tax-product_cat .product .price_for_grid .amount,
body.woocommerce .product .price_for_grid bdi,
body.tax-product_cat .product .price_for_grid bdi,
body.woocommerce .product .price_for_grid .woocommerce-Price-amount,
body.tax-product_cat .product .price_for_grid .woocommerce-Price-amount,
body.woocommerce .product .price_for_grid .woocommerce-Price-currencySymbol,
body.tax-product_cat .product .price_for_grid .woocommerce-Price-currencySymbol {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-amber) !important;
  font-weight: 700 !important;
  font-size: 21px !important;
  white-space: nowrap !important;
}

/* CTA (Mockup A): full-width SOLID AMBER button — the loud, confident action.
   Replaces the old weak dark-navy pill. Centred label, generous tap target,
   amber-shadow lift; brightens to amber-light on hover. The parent .btn_for_grid
   is forced full-width so the button fills the card edge-to-edge. */
body.woocommerce .product .btn_for_grid,
body.tax-product_cat .product .btn_for_grid {
  width: 100% !important;
  display: block !important;
  float: none !important;
  margin: 0 !important;
}
body.woocommerce .product .btn_for_grid a.woo_loop_btn,
body.tax-product_cat .product .btn_for_grid a.woo_loop_btn,
body.woocommerce .product a.re_track_btn.woo_loop_btn,
body.tax-product_cat .product a.re_track_btn.woo_loop_btn {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 14.5px !important;
  letter-spacing: 0.01em !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 13px 16px !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  text-align: center !important;
  box-shadow: 0 4px 12px rgba(232,160,32,0.32) !important;
  transition: background 0.15s ease, box-shadow 0.15s ease !important;
}
body.woocommerce .product .btn_for_grid a.woo_loop_btn:hover,
body.tax-product_cat .product .btn_for_grid a.woo_loop_btn:hover,
body.woocommerce .product a.re_track_btn.woo_loop_btn:hover,
body.tax-product_cat .product a.re_track_btn.woo_loop_btn:hover {
  background: var(--rp-amber-light) !important;
  color: var(--rp-navy) !important;
  box-shadow: 0 6px 18px rgba(232,160,32,0.45) !important;
}
body.woocommerce .product a.re_track_btn.woo_loop_btn svg,
body.tax-product_cat .product a.re_track_btn.woo_loop_btn svg { fill: currentColor !important; }

/* Strike-through "was" price → muted slate, smaller */
body.woocommerce .product del,
body.tax-product_cat .product del,
body.woocommerce .product del .amount,
body.tax-product_cat .product del .amount {
  color: var(--rp-slate-light) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

/* ──────────────────────────────────────────────────────────
   PART 3 — SINGLE PRODUCT PAGE POLISH
   Same design system on the product detail view: Playfair navy
   title, amber Playfair price, framed gallery, navy CTA, tidy
   meta — all on light surfaces.
   ────────────────────────────────────────────────────────── */

body.single-product .product .product_title.entry-title,
body.single-product .product h1.product_title {
  font-family: 'Playfair Display', serif !important;
  font-weight: 900 !important;
  font-size: clamp(26px, 3vw, 34px) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.5px !important;
  color: var(--rp-navy) !important;
  margin-bottom: 14px !important;
}

/* Gallery framed on a cream tile to match the listing cards */
body.single-product .woocommerce-product-gallery,
body.single-product .woocommerce-product-gallery__wrapper,
body.single-product .woocommerce-product-gallery__image {
  background: var(--rp-cream) !important;
  border-radius: var(--rp-radius-lg) !important;
  border: 1px solid var(--rp-border) !important;
  overflow: hidden !important;
}
body.single-product .woocommerce-product-gallery__image img {
  mix-blend-mode: multiply !important;
}

/* Price (deal price + summary price) → big Playfair amber */
body.single-product .product .rh-deal-price,
body.single-product .product .price,
body.single-product .product .price .amount,
body.single-product .product .price .amount bdi,
body.single-product .product .price bdi,
body.single-product .product .rh-deal-price .amount,
body.single-product .product .rh-deal-price bdi {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-amber) !important;
  font-weight: 700 !important;
}
body.single-product .product .price,
body.single-product .product .rh-deal-price {
  font-size: 30px !important;
  line-height: 1.2 !important;
}
body.single-product .product .price del,
body.single-product .product del {
  color: var(--rp-slate-light) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
}

/* Main CTA ("View on Amazon" external button) → solid navy pill */
body.single-product .product a.re_track_btn.woo_loop_btn,
body.single-product .product .single_add_to_cart_button.button,
body.single-product .product a.single_add_to_cart_button {
  background: var(--rp-navy) !important;
  color: #ffffff !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 14px 30px !important;
  box-shadow: 0 6px 18px rgba(15,30,53,0.16) !important;
  transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease !important;
}
body.single-product .product a.re_track_btn.woo_loop_btn:hover,
body.single-product .product .single_add_to_cart_button.button:hover,
body.single-product .product a.single_add_to_cart_button:hover {
  background: var(--rp-amber) !important;
  color: var(--rp-navy) !important;
  box-shadow: 0 8px 22px rgba(232,160,32,0.28) !important;
}

/* Summary column + meta on a tidy light surface */
body.single-product .product .summary.entry-summary {
  color: var(--rp-text) !important;
}
body.single-product .product_meta {
  border-top: 1px solid var(--rp-border) !important;
  margin-top: 20px !important;
  padding-top: 16px !important;
  font-size: 13px !important;
  color: var(--rp-slate) !important;
}
body.single-product .product_meta a { color: var(--rp-slate) !important; }
body.single-product .product_meta a:hover { color: var(--rp-amber) !important; }

/* Tabs: navy active tab, Playfair tab headings */
body.single-product .woocommerce-tabs .tabs li.active a,
body.single-product .woocommerce-tabs ul.tabs li.active a {
  color: var(--rp-navy) !important;
  border-bottom: 2px solid var(--rp-amber) !important;
  font-weight: 600 !important;
}
body.single-product .woocommerce-tabs h2,
body.single-product .woocommerce-tabs .panel h2 {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-navy) !important;
}

/* ── v12 responsive tweaks ── */
@media (max-width: 782px) {
  .logo_image::before, .logo_image_mobile::before { font-size: 21px !important; }
  .logo_image::after,  .logo_image_mobile::after  { font-size: 8px !important; letter-spacing: 0.12em !important; }
}
@media (max-width: 480px) {
  body.woocommerce .products.grid_woo,
  body.tax-product_cat .products.grid_woo {
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
  }
  body.woocommerce .product.col_item,
  body.tax-product_cat .product.col_item { padding: 12px !important; }
  body.woocommerce .product .price_for_grid,
  body.tax-product_cat .product .price_for_grid { font-size: 18px !important; }
}


/* ── v12 addendum: seat the "Featured" pill inside the card corner ── */

/* Seat the "Featured" pill neatly INSIDE the card's rounded corner rather
   than letting ReHub's absolute ribbon coords push it past the radius. The
   card already establishes a positioning context (flex column); the figure
   below is position-relative, so pin the badge to the card's padding box. */
body.woocommerce .product,
body.tax-product_cat .product,
body.single-product .columned_grid_module article.col_item { position: relative !important; }
body.woocommerce .product .re-ribbon-badge,
body.tax-product_cat .product .re-ribbon-badge,
body.single-product .columned_grid_module .re-ribbon-badge {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  left: auto !important;
  transform: none !important;
  z-index: 3 !important;
}

/* ── v12 addendum: sidebar offer-widget title bars ──
   ReHub paints .widget.top_offers .title (and the latest-comparisons widget)
   with a near-black (#111) bar AND dark navy title text = dark-on-dark,
   unreadable. Re-skin the bar to brand navy with light text so it reads and
   matches the chrome. (Confirmed live: titleBg rgb(17,17,17), text rgb(15,30,53).) */
body .sidebar .widget.top_offers .title,
body .sidebar .widget.rh_latest_compare_widget .title,
body .sidebar .widget.cegg_widget_products .title,
.widget.top_offers .title,
.widget.rh_latest_compare_widget .title,
.widget.cegg_widget_products .title {
  background: var(--rp-navy) !important;
  color: #ffffff !important;
  font-family: 'Playfair Display', serif !important;
  font-weight: 700 !important;
  border-radius: var(--rp-radius-sm) !important;
  padding: 10px 14px !important;
}


/* ============================================================
   v13 — HOMEPAGE EDITORIAL REBUILD
   Builds the full mockup architecture the live site only half-shipped:
   TRUST BAR under the hero, a SHORT curated TOP-PICKS grid (1 double-width
   Editor's Pick + 5 rich cards, NOT a 12-card wall) with a "View all deals"
   link, and the cleaner/lighter "Why we picked it" treatment on the inner-page
   (category/single) card system. All markup is server-side (rp-auth-fix.php),
   rendered into the initial HTML before first paint — no after-load JS, no
   flash. Real WC data only; sparse cards (image/category/title/price/CTA) are
   designed to still read as deliberate and premium. British English.
   ============================================================ */

/* ── TRUST BAR (under the hero, home) ─────────────────────── */
.rp4-trust {
  background: var(--rp-amber-pale);
  border-bottom: 1px solid #f0e5cc;
  padding: 12px 2rem;
}
.rp4-trust-in {
  max-width: 1160px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}
.rp4-trust-item {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 13px;
  color: var(--rp-slate);
  line-height: 1.4;
}
.rp4-trust-item strong { color: var(--rp-navy) !important; font-weight: 600; }
.rp4-trust-dot {
  width: 3px; height: 3px;
  background: #c8b89a;
  border-radius: 50%;
  flex-shrink: 0;
}
.rp4-trust-disc {
  margin-left: auto;
  font-size: 11px;
  color: var(--rp-slate-light) !important;
  max-width: 320px;
  line-height: 1.4;
}

/* The native ReHub home loop is REPLACED server-side by the curated grid, but
   ReHub also prints an orphaned "Show next" AJAX pager (.re_ajax_pagination)
   AFTER the loop wrapper that targets the now-removed loop container. Hide it on
   home so the curated grid ends cleanly at "View all deals". Also hide any
   stray ReHub filter-tab row, should the template emit one. */
body.home .re_ajax_pagination,
body.home .masonry_grid_fullwidth.re_aj_pag_auto_wrap,
body.home ul.def_btn_link_tabs.woofilter_tabs,
body.home .rh-filter-tabs,
body.home .filter_home_pick,
body.home .re_filter_panel { display: none !important; }

/* ── CURATED TOP-PICKS GRID ───────────────────────────────── */
.rp4-picks-wrap { max-width: 1160px; margin: 0 auto; padding: 24px 2rem 8px; }
.rp4-picks-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.rp4-picks-foot {
  display: flex;
  justify-content: center;
  margin-top: 28px;
}
.rp4-picks-viewall {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 600;
  color: var(--rp-navy) !important;
  text-decoration: none;
  padding: 11px 24px;
  border: 1px solid var(--rp-border);
  border-radius: 999px;
  background: #fff;
  transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s;
}
.rp4-picks-viewall:hover {
  border-color: var(--rp-amber);
  box-shadow: 0 4px 16px rgba(15,30,53,0.08);
  transform: translateY(-1px);
  color: var(--rp-navy) !important;
}

/* ── A curated rich card ──────────────────────────────────── */
.rp4-pick {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--rp-border);
  border-radius: var(--rp-radius-lg);
  overflow: hidden;
  text-decoration: none;
  transition: box-shadow 0.18s ease, transform 0.18s ease, border-color 0.18s ease;
  position: relative;
}
.rp4-pick:hover {
  border-color: #d9d3c6;
  box-shadow: 0 10px 28px rgba(15,30,53,0.10);
  transform: translateY(-3px);
}
.rp4-pick-img {
  position: relative;
  background: var(--rp-cream);
  aspect-ratio: 16 / 11;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.rp4-pick-img img {
  max-width: 78%;
  max-height: 78%;
  width: auto;
  height: auto;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.rp4-pick-cat {
  position: absolute;
  top: 12px; right: 12px;
  background: var(--rp-navy);
  color: rgba(255,255,255,0.92);
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  padding: 4px 9px;
  border-radius: 5px;
}
.rp4-pick-deal {
  position: absolute;
  top: 12px; left: 12px;
  background: var(--rp-green);
  color: #fff;
  font-family: 'DM Sans', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 4px 9px;
  border-radius: 5px;
}
.rp4-pick-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 16px 18px 18px;
  border-top: 1px solid var(--rp-border);
}
.rp4-pick-elabel {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  font-weight: 700;
  color: var(--rp-amber);
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 8px;
}
.rp4-pick-elabel::before { content: '\2605'; font-size: 13px; }
.rp4-pick-name {
  font-family: 'DM Sans', sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: var(--rp-navy) !important;
  line-height: 1.4;
  letter-spacing: -0.1px;
  margin-bottom: 8px;
}
.rp4-pick-rating {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 10px;
}
.rp4-stars { color: var(--rp-amber); font-size: 13px; letter-spacing: -1px; }
.rp4-rnum { font-size: 13px; font-weight: 600; color: var(--rp-slate); }
.rp4-rcount { font-size: 12px; color: var(--rp-slate-light); }
.rp4-pick-why {
  display: flex;
  gap: 6px;
  align-items: flex-start;
  font-size: 13px;
  color: var(--rp-slate);
  line-height: 1.55;
  margin-bottom: 14px;
}
.rp4-why-i { flex-shrink: 0; margin-top: 1px; }
/* Price row: the focal element on a sparse card — give it room + weight */
.rp4-pick-prow {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: auto;
  margin-bottom: 14px;
}
.rp4-pick-now {
  font-family: 'Playfair Display', serif;
  font-size: 24px;
  font-weight: 700;
  color: var(--rp-navy) !important;
  line-height: 1;
}
.rp4-pick-now .woocommerce-Price-amount,
.rp4-pick-now .woocommerce-Price-currencySymbol,
.rp4-pick-now bdi {
  font-family: 'Playfair Display', serif !important;
  color: var(--rp-navy) !important;
  font-weight: 700 !important;
  font-size: 24px !important;
}
.rp4-pick-was {
  font-size: 14px;
  color: var(--rp-slate-light) !important;
  text-decoration: line-through;
}
.rp4-pick-was .woocommerce-Price-amount,
.rp4-pick-was bdi { color: var(--rp-slate-light) !important; font-size: 14px !important; }
.rp4-pick-save {
  font-size: 12px;
  font-weight: 600;
  color: var(--rp-green);
  background: var(--rp-green-pale);
  padding: 2px 7px;
  border-radius: 4px;
  margin-left: auto;
}
.rp4-pick-cta { margin-top: auto; }
.rp4-pick-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  background: var(--rp-navy);
  color: #fff;
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 11px 16px;
  border-radius: 999px;
  transition: background 0.15s ease, color 0.15s ease;
}
.rp4-pick:hover .rp4-pick-btn { background: var(--rp-amber); color: var(--rp-navy); }

/* ── EDITOR'S PICK: double-width, horizontal split (anchors the grid) ── */
.rp4-pick-editor {
  grid-column: span 2;
  border: 2px solid var(--rp-amber);
  flex-direction: row;
}
.rp4-pick-editor .rp4-pick-img {
  aspect-ratio: auto;
  width: 44%;
  min-width: 0;
  border-top: none;
  border-right: 1px solid var(--rp-border);
}
.rp4-pick-editor .rp4-pick-img img { max-width: 82%; max-height: 82%; }
.rp4-pick-editor .rp4-pick-body {
  flex: 1;
  border-top: none;
  padding: 26px 28px;
  justify-content: center;
}
.rp4-pick-editor .rp4-pick-name { font-size: 21px; line-height: 1.3; margin-bottom: 10px; }
.rp4-pick-editor .rp4-pick-why { font-size: 14px; line-height: 1.6; margin-bottom: 18px; }
.rp4-pick-editor .rp4-pick-now,
.rp4-pick-editor .rp4-pick-now .woocommerce-Price-amount,
.rp4-pick-editor .rp4-pick-now bdi { font-size: 30px !important; }
.rp4-pick-editor .rp4-pick-btn { width: auto; align-self: flex-start; padding: 12px 26px; }

/* ── Sparse-card polish: when there is no Why/rating, the price+CTA must not
   float in dead space. The body is a flex column with margin-top:auto on the
   price row, so the title sits up top and price/CTA anchor the bottom — the
   card reads deliberate, not broken, with just image/cat/title/price/CTA. ── */
.rp4-pick-body { min-height: 132px; }
.rp4-pick-editor .rp4-pick-body { min-height: 0; }

/* ── CLEANER/LIGHTER inner-page "Why" blurb (category + single) ──
   Same field, lighter footprint than the home rich card. */
.rp4-loop-why {
  display: flex;
  gap: 5px;
  align-items: flex-start;
  font-size: 12.5px;
  color: var(--rp-slate-light) !important;
  line-height: 1.5;
  margin: 0 0 10px !important;
}
.rp4-loop-why .rp4-why-i { font-size: 12px; }
.rp4-single-why {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  background: var(--rp-amber-pale);
  border-left: 3px solid var(--rp-amber);
  border-radius: 0 var(--rp-radius-sm) var(--rp-radius-sm) 0;
  padding: 12px 16px;
  margin: 4px 0 18px;
  font-size: 14px;
  color: var(--rp-slate);
  line-height: 1.6;
}

/* ── v13 responsive ── */
@media (max-width: 900px) {
  .rp4-picks-grid { grid-template-columns: repeat(2, 1fr); }
  .rp4-pick-editor { grid-column: span 2; flex-direction: column; }
  .rp4-pick-editor .rp4-pick-img { width: 100%; aspect-ratio: 16 / 9; border-right: none; border-bottom: 1px solid var(--rp-border); }
  .rp4-pick-editor .rp4-pick-body { padding: 20px; }
  .rp4-pick-editor .rp4-pick-btn { align-self: stretch; width: 100%; }
  .rp4-trust-disc { margin-left: 0; max-width: none; flex-basis: 100%; }
}
@media (max-width: 600px) {
  .rp4-picks-grid { grid-template-columns: 1fr; }
  .rp4-pick-editor { grid-column: span 1; }
  .rp4-picks-wrap { padding: 16px 1rem 8px; }
}

/* ════════════════════════════════════════════════════════════════════
   v15 — SHOP / CATEGORY LAYOUT
   Live-DOM findings (1280px viewport): .rh-container is 1200px centred
   (x=40), but #content.main-side was only 840px while .sidebar took 336px
   at x=904, and the product grid bled to x=28 (a ReHub negative side-margin
   that pushed it LEFT of the 40px container edge). Net effect: the grid
   jammed left and the page read cramped / left-heavy.

   Fix: (a) slim the sidebar so the content column is wider and the whole
   thing reads contained/centred; (b) kill the grid's negative-margin bleed
   so cards align inside the content box; (c) let the wider column carry one
   more card per row. The richer card styling already lives in the v12/v13
   blocks above (white tile, navy clamped title, .rp4-loop-why hook, amber
   price as the loudest element, navy CTA, soft shadow + hover lift) — we do
   NOT restyle the card here, only give it room to breathe.

   NOTE: the sidebar holds ONLY the price filter (widget_price_filter) — the
   "redundant text widgets" seen earlier live in the native .footer-bottom
   footer, which v15 fix #1 already hides. So we touch NOTHING in the sidebar
   except its width; the price filter is left fully intact and styled.
   ──────────────────────────────────────────────────────────────────── */

/* (a) Content column wider, sidebar slimmer, on shop + category. */
body.woocommerce #content.main-side,
body.archive:not(.home) #content.main-side,
body.tax-product_cat #content.main-side {
  width: 73% !important;
  max-width: 73% !important;
}
body.woocommerce .sidebar,
body.woocommerce aside.sidebar,
body.archive:not(.home) .sidebar,
body.tax-product_cat .sidebar,
body.tax-product_cat aside.sidebar {
  width: 24% !important;
  max-width: 24% !important;
}

/* (b) Kill the negative-margin left bleed: ReHub gives .products a small
   negative side-margin to "undo" card gutters from its float system. With our
   CSS-grid loop there are no float gutters, so that negative margin only drags
   the grid out of the content box. Reset it so the grid sits flush at the
   content-box left edge (x≈40), aligned with the page title and breadcrumb. */
body.woocommerce .products.grid_woo,
body.tax-product_cat .products.grid_woo,
body.archive:not(.home) .products.grid_woo,
body.woocommerce ul.products,
body.tax-product_cat ul.products,
body.woocommerce .col_wrap_three.products,
body.tax-product_cat .col_wrap_three.products,
body.woocommerce .rh-flex-eq-height.products,
body.tax-product_cat .rh-flex-eq-height.products {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* (c) The wider column comfortably fits more cards; keep auto-fill so the
   column count follows the real width and the cards never squeeze. */
body.woocommerce .products.grid_woo,
body.tax-product_cat .products.grid_woo,
body.archive:not(.home) .products.grid_woo {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 22px !important;
}

/* The .rp4-loop-why hook sits between the clamped title and the price footer.
   Mockup A: render it as a soft amber-pale PILL (not a bare grey line) so the
   curated "why we picked it" note reads as an intentional editorial element.
   Keep the 💡 icon and clamp the copy to 2 lines so card heights stay even;
   the price row still anchors the bottom (margin-top:auto), so the pill stays
   tight under the title. Scoped to archive/shop cards only — single keeps its
   own .rp4-single-why callout, home keeps .rp4-pick-why. */
body.woocommerce .product .rp4-loop-why,
body.tax-product_cat .product .rp4-loop-why,
body.archive:not(.home) .product .rp4-loop-why {
  display: flex !important;
  gap: 7px !important;
  align-items: flex-start !important;
  background: var(--rp-amber-pale) !important;
  color: var(--rp-slate) !important;
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  margin: 0 0 14px !important;
}
/* Clamp only the text node (the second <span>), not the 💡 icon (.rp4-why-i),
   so the pill never grows past 2 lines and all cards line up. The markup is
   `<div class="rp4-loop-why"><span class="rp4-why-i">💡</span><span>…</span></div>`
   — target the non-icon span without needing a PHP markup change. */
body.woocommerce .product .rp4-loop-why span:not(.rp4-why-i),
body.tax-product_cat .product .rp4-loop-why span:not(.rp4-why-i),
body.archive:not(.home) .product .rp4-loop-why span:not(.rp4-why-i) {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
/* Keep the 💡 icon from shrinking when the text wraps. */
body.woocommerce .product .rp4-loop-why .rp4-why-i,
body.tax-product_cat .product .rp4-loop-why .rp4-why-i,
body.archive:not(.home) .product .rp4-loop-why .rp4-why-i {
  flex: 0 0 auto !important;
  line-height: 1.45 !important;
}

@media (max-width: 1024px) {
  body.woocommerce #content.main-side,
  body.archive:not(.home) #content.main-side,
  body.tax-product_cat #content.main-side,
  body.woocommerce .sidebar,
  body.tax-product_cat .sidebar {
    width: 100% !important;
    max-width: 100% !important;
  }
}



/* ═══════════════════════════════════════════════════════
   OPTION D — Warm Cream Shop/Archive (v17)
   Scoped to WooCommerce archive/shop/category pages only
   ═══════════════════════════════════════════════════════ */

/* Page background */
body.woocommerce,
body.post-type-archive-product,
body.tax-product_cat,
body.archive.woocommerce {
  background-color: #f8f5f0 !important;
}

body.woocommerce #page,
body.woocommerce .site,
body.woocommerce #content,
body.woocommerce #primary,
body.woocommerce .main-side,
body.woocommerce .rh-container,
body.post-type-archive-product #page,
body.post-type-archive-product .main-side,
body.tax-product_cat #page,
body.tax-product_cat .main-side {
  background-color: #f8f5f0 !important;
}

/* Product cards */
body.woocommerce ul.products li.product,
body.woocommerce .col_wrap_three .col_item,
body.woocommerce .products.grid_woo .col_item,
body.woocommerce .woo_grid_compact,
body.post-type-archive-product ul.products li.product,
body.post-type-archive-product .col_item,
body.tax-product_cat ul.products li.product,
body.tax-product_cat .col_item {
  background: #ffffff !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 20px rgba(15,30,53,0.10) !important;
  border: 1px solid #ede9e3 !important;
  overflow: hidden !important;
  transition: box-shadow 0.2s ease, transform 0.2s ease !important;
  padding: 0 !important;
}

body.woocommerce ul.products li.product:hover,
body.woocommerce .col_item:hover,
body.post-type-archive-product .col_item:hover,
body.tax-product_cat .col_item:hover {
  box-shadow: 0 8px 32px rgba(15,30,53,0.16) !important;
  transform: translateY(-2px) !important;
}

/* Card inner padding (not image area) */
body.woocommerce .woo_grid_compact .rh_item_info,
body.woocommerce .col_item .rh_item_info,
body.woocommerce .col_item .woo_grid_inner,
body.post-type-archive-product .col_item .rh_item_info,
body.tax-product_cat .col_item .rh_item_info {
  padding: 12px 16px 16px !important;
  background: #ffffff !important;
}

/* Product title */
body.woocommerce .col_item h3,
body.woocommerce .col_item h2.woocommerce-loop-product__title,
body.woocommerce .woo_grid_compact h3,
body.post-type-archive-product .col_item h3,
body.tax-product_cat .col_item h3 {
  color: #1a1a2e !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
}

/* Category label */
body.woocommerce .col_item .woocat,
body.woocommerce .col_item .cat_for_grid a,
body.woocommerce .col_item span.cat_for_grid,
body.post-type-archive-product .col_item .woocat,
body.tax-product_cat .col_item .woocat {
  color: #e8a020 !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

/* Why pill */
body.woocommerce .rp4-loop-why,
body.post-type-archive-product .rp4-loop-why,
body.tax-product_cat .rp4-loop-why {
  background: #fff8ec !important;
  border: 1px solid #f5d78e !important;
  border-radius: 20px !important;
  padding: 6px 12px !important;
  color: #92400e !important;
  font-size: 0.78rem !important;
  margin: 8px 0 !important;
}

/* Price */
body.woocommerce .col_item .price_for_grid .woocommerce-Price-amount,
body.woocommerce .col_item .price .woocommerce-Price-amount,
body.woocommerce .woo_grid_compact .price_for_grid,
body.post-type-archive-product .col_item .woocommerce-Price-amount,
body.tax-product_cat .col_item .woocommerce-Price-amount {
  color: #c97d0e !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
}

/* CTA Button — must beat ReHub's .woocommerce a.woo_loop_btn !important */
body.woocommerce .col_item a.woo_loop_btn,
body.woocommerce .col_item .abposbot a,
body.woocommerce .col_item .btn_for_grid,
body.woocommerce ul.products li.product a.woo_loop_btn,
body.post-type-archive-product .col_item a.woo_loop_btn,
body.post-type-archive-product ul.products li.product a.woo_loop_btn,
body.tax-product_cat .col_item a.woo_loop_btn,
body.tax-product_cat ul.products li.product a.woo_loop_btn {
  background: #e8a020 !important;
  color: #0a0f1e !important;
  border-radius: 10px !important;
  border: none !important;
  width: 100% !important;
  display: block !important;
  text-align: center !important;
  font-weight: 700 !important;
  padding: 12px 0 !important;
  box-shadow: none !important;
  font-size: 0.9rem !important;
}

body.woocommerce .col_item a.woo_loop_btn:hover,
body.woocommerce ul.products li.product a.woo_loop_btn:hover,
body.post-type-archive-product ul.products li.product a.woo_loop_btn:hover,
body.tax-product_cat ul.products li.product a.woo_loop_btn:hover {
  background: #c97d0e !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

/* Button container full width */
body.woocommerce .col_item .abposbot,
body.post-type-archive-product .col_item .abposbot,
body.tax-product_cat .col_item .abposbot {
  width: 100% !important;
  padding: 0 16px 16px !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* Sidebar widgets */
body.woocommerce .sidebar .widget,
body.post-type-archive-product .sidebar .widget,
body.tax-product_cat .sidebar .widget {
  background: #ffffff !important;
  border: 1px solid #ede9e3 !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(15,30,53,0.06) !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
}

/* Filter button amber */
body.woocommerce .price_slider_wrapper .button,
body.post-type-archive-product .price_slider_wrapper .button,
body.tax-product_cat .price_slider_wrapper .button {
  background: #e8a020 !important;
  color: #0a0f1e !important;
  border-radius: 8px !important;
  border: none !important;
  box-shadow: none !important;
}

/* Price slider track amber */
body.woocommerce .ui-slider .ui-slider-range,
body.post-type-archive-product .ui-slider .ui-slider-range,
body.tax-product_cat .ui-slider .ui-slider-range {
  background: #e8a020 !important;
}
