/*
Theme Name: Navcan Liquidation
Theme URI: https://navcanliquidation.com
Description: Custom WooCommerce child theme for Navcan Liquidation — furniture liquidation store in Pierrefonds, Montreal. Built on Storefront. Navy + cyan liquidation-store look, Poppins + Inter.
Author: Navcan Liquidation
Template: storefront
Version: 2.3.6
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: navcan
*/

/* ============================================================
   NAVCAN BRAND TOKENS  (navy + cyan reference palette)
   ============================================================ */
:root {
  --nv-navy: #141414;        /* brand black (header/footer/dark bands, headings) */
  --nv-navy-dark: #000000;   /* pure black */
  --nv-navy-light: #262626;  /* charcoal */
  --nv-cyan: #e11b22;        /* brand red (primary accent — buttons, hovers, badges) */
  --nv-cyan-dark: #b21419;   /* darker red (hover) */
  --nv-red: #e11b22;         /* brand red */
  --nv-price: #e11b22;       /* price red */
  --nv-bg: #f3f5f9;
  --nv-card: #ffffff;
  --nv-ink: #2b2f3a;
  --nv-muted: #7b8194;
  --nv-border: #e6e9f0;
  --nv-radius: 10px;
  --nv-shadow: 0 6px 22px rgba(28,35,90,.08);
  --nv-shadow-hover: 0 14px 34px rgba(28,35,90,.16);
  --nv-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --nv-head: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ============================================================
   BASE
   ============================================================ */
body,
button,
input,
select,
textarea {
  font-family: var(--nv-font);
  color: var(--nv-ink);
}
body {
  background: var(--nv-bg);
}
h1, h2, h3, h4, h5, h6,
.entry-title, .page-title {
  font-family: var(--nv-head);
  color: var(--nv-navy);
  font-weight: 700;
  letter-spacing: -.01em;
}
a { color: var(--nv-cyan-dark); }
a:hover { color: var(--nv-navy); }

.col-full { max-width: 1240px; }

/* ============================================================
   TOP INFO BAR
   ============================================================ */
.navcan-topbar {
  background: var(--nv-navy-dark);
  color: #fff;
  font-size: 13px;
  letter-spacing: .01em;
}
.navcan-topbar .navcan-topbar-inner {
  max-width: 1240px;
  margin: 0 auto;
  padding: 8px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.navcan-topbar a { color: #fff; text-decoration: none; }
.navcan-topbar strong { font-weight: 700; }
.navcan-topbar .nv-top-right { color: #cfd4f5; }
@media (max-width: 640px) {
  .navcan-topbar .nv-top-right { display: none; }
}

/* ============================================================
   HEADER  (navy band, white logo, prominent search, cart)
   ============================================================ */
.site-header {
  background: var(--nv-navy) !important;
  border: 0 !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}
.site-header .col-full { max-width: 1240px; }

/* Branding / logo text */
.site-header .site-branding,
.site-header .site-title,
.site-header .site-title a,
.site-header .site-description {
  color: #fff !important;
}
.site-header .site-title a {
  font-family: var(--nv-head);
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 1.5rem;
}
.site-header .site-title a:hover { color: var(--nv-cyan); }
.site-header .site-description { color: #b9c0ef !important; }

/* Search in header */
.site-header .site-search,
.storefront-handheld-footer-bar .search { width: 100%; }
.site-header .widget_product_search form,
.site-header form.woocommerce-product-search {
  position: relative;
  display: flex;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
}
.site-header .woocommerce-product-search input[type="search"],
.site-header .woocommerce-product-search input.search-field {
  border: 0 !important;
  padding: 14px 16px !important;
  font-size: 15px;
  flex: 1;
  background: #fff !important;
  color: var(--nv-ink) !important;
  box-shadow: none !important;
}
.site-header .woocommerce-product-search button,
.site-header .woocommerce-product-search input[type="submit"] {
  background: var(--nv-cyan) !important;
  color: #fff !important;
  border: 0 !important;
  padding: 0 24px !important;
  font-weight: 600;
  cursor: pointer;
  border-radius: 0 !important;
}
.site-header .woocommerce-product-search button:hover { background: var(--nv-cyan-dark) !important; }

/* Header cart */
.site-header-cart .cart-contents,
.site-header-cart .cart-contents:hover {
  color: #fff !important;
  background: transparent !important;
}
.site-header-cart .amount { color: #fff !important; }
.site-header .site-header-cart .count,
.site-header-cart .cart-contents .count {
  background: var(--nv-cyan) !important;
  color: #fff !important;
  border-color: var(--nv-cyan) !important;
}

/* ============================================================
   PRIMARY NAVIGATION  (white sticky bar, navy links)
   ============================================================ */
.storefront-primary-navigation,
.main-navigation {
  background: #fff !important;
  box-shadow: 0 2px 10px rgba(28,35,90,.06);
}
.main-navigation ul.menu > li > a,
.main-navigation ul.nav-menu > li > a {
  color: var(--nv-navy) !important;
  font-family: var(--nv-head);
  font-weight: 600;
  font-size: 15px;
  text-transform: none;
}
.main-navigation ul.menu > li > a:hover,
.main-navigation ul li.current-menu-item > a {
  color: var(--nv-cyan-dark) !important;
}
.main-navigation ul.menu ul.sub-menu {
  background: #fff;
  box-shadow: var(--nv-shadow);
  border-top: 3px solid var(--nv-cyan);
}
.main-navigation ul.menu ul.sub-menu a { color: var(--nv-ink) !important; }
.main-navigation ul.menu ul.sub-menu a:hover { color: var(--nv-cyan-dark) !important; background: var(--nv-bg); }

/* ---- One-row nav + reference-style dropdowns (desktop) ---- */
@media (min-width: 768px) {
  .main-navigation ul#menu-primary,
  .main-navigation ul.menu,
  .main-navigation ul.nav-menu {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    margin: 0;
    gap: 0;
  }
  .main-navigation ul.menu > li,
  .main-navigation ul.nav-menu > li { margin: 0; float: none; }
  .main-navigation ul.menu > li > a,
  .main-navigation ul.nav-menu > li > a {
    padding: 15px 13px;
    font-size: 14.5px;
    white-space: nowrap;
  }
  .main-navigation ul.menu > li.menu-item-has-children > a::after,
  .main-navigation ul.nav-menu > li.menu-item-has-children > a::after {
    content: '▾';
    margin-left: 5px;
    font-size: .8em;
    color: var(--nv-cyan-dark);
    vertical-align: middle;
  }
}
@media (min-width: 768px) and (max-width: 1120px) {
  .main-navigation ul.menu > li > a,
  .main-navigation ul.nav-menu > li > a { padding: 15px 9px; font-size: 13.5px; }
}
/* Dropdown panel look */
.main-navigation ul.menu ul.sub-menu,
.main-navigation ul.nav-menu ul.sub-menu {
  min-width: 224px;
  padding: 6px 0;
  border-radius: 0 0 10px 10px;
  box-shadow: var(--nv-shadow);
  border-top: 3px solid var(--nv-cyan);
  z-index: 999;
}
.main-navigation ul.menu ul.sub-menu li,
.main-navigation ul.nav-menu ul.sub-menu li { float: none; width: 100%; margin: 0; }
.main-navigation ul.menu ul.sub-menu a,
.main-navigation ul.nav-menu ul.sub-menu a {
  padding: 11px 18px;
  font-size: 14px;
  font-weight: 500;
  border: 0;
}

/* ============================================================
   BUTTONS
   ============================================================ */
button, .button, .added_to_cart,
input[type="submit"],
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt {
  background: var(--nv-cyan);
  color: #fff;
  border-radius: 8px;
  font-family: var(--nv-head);
  font-weight: 600;
  letter-spacing: .01em;
  transition: all .2s ease;
}
button:hover, .button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.woocommerce #respond input#submit:hover {
  background: var(--nv-navy);
  color: #fff;
}
.nv-btn-navy { background: var(--nv-navy) !important; }
.nv-btn-navy:hover { background: var(--nv-cyan) !important; }

/* ============================================================
   HERO SLIDER
   ============================================================ */
.navcan-hero-slider {
  position: relative;
  max-width: 1240px;
  margin: 22px auto;
  height: 430px;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: var(--nv-shadow);
}
.navcan-slide {
  position: absolute; inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0; transition: opacity .8s ease;
  display: flex; align-items: center;
}
.navcan-slide.is-active { opacity: 1; }
.navcan-slide::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(26,31,82,.72) 0%, rgba(26,31,82,.30) 55%, rgba(26,31,82,.05) 100%);
}
.navcan-hero-inner {
  position: relative; z-index: 2;
  padding: 0 6%; max-width: 620px; color: #fff;
}
.navcan-hero-inner h1 {
  color: #fff; font-size: 2.7rem; line-height: 1.1; margin: 0 0 12px;
  text-shadow: 0 2px 12px rgba(0,0,0,.3);
}
.navcan-hero-inner p { font-size: 1.15rem; margin: 0 0 22px; color: #eef0ff; }
.navcan-cta {
  display: inline-block; background: var(--nv-cyan); color: #fff !important;
  padding: 13px 34px; border-radius: 8px; font-family: var(--nv-head);
  font-weight: 700; text-decoration: none; font-size: 1rem;
  box-shadow: 0 8px 20px rgba(22,177,223,.35); transition: all .2s ease;
}
.navcan-cta:hover { background: #fff; color: var(--nv-navy) !important; transform: translateY(-2px); }
.navcan-slider-dots {
  position: absolute; bottom: 18px; left: 0; right: 0; z-index: 3;
  display: flex; justify-content: center; gap: 10px;
}
.navcan-dot {
  width: 11px; height: 11px; border-radius: 50%; border: 0;
  background: rgba(255,255,255,.55); cursor: pointer; padding: 0;
}
.navcan-dot.is-active { background: #fff; width: 26px; border-radius: 6px; }
@media (max-width: 768px) {
  .navcan-hero-slider { height: 320px; margin: 14px; border-radius: 10px; }
  .navcan-hero-inner h1 { font-size: 1.7rem; }
  .navcan-hero-inner p { font-size: 1rem; }
}

/* ============================================================
   SECTION HEADINGS  (title + "View all")
   ============================================================ */
.navcan-cats-title,
.storefront-full-width-content .wp-block-heading,
.navcan-section-head {
  font-family: var(--nv-head);
  color: var(--nv-navy);
  font-weight: 700;
}
.navcan-section-head {
  max-width: 1240px; margin: 40px auto 6px; padding: 0 20px;
  display: flex; align-items: center; justify-content: space-between;
}
.navcan-section-head h2 { margin: 0; font-size: 1.5rem; }
.navcan-section-head a { color: var(--nv-cyan-dark); font-weight: 600; text-decoration: none; font-size: .95rem; }
.navcan-section-head a:hover { color: var(--nv-navy); }

/* Center headings from home page blocks: give them navy + underline */
body.home .wp-block-heading.has-text-align-center {
  position: relative; font-size: 1.7rem; margin: 46px 0 26px;
}
body.home .wp-block-heading.has-text-align-center::after {
  content: ''; display: block; width: 66px; height: 3px;
  background: var(--nv-cyan); margin: 12px auto 0; border-radius: 2px;
}

/* ============================================================
   SHOP BY CATEGORY  (circular tiles)
   ============================================================ */
.navcan-cats {
  max-width: 1240px; margin: 44px auto; padding: 0 20px; text-align: center;
}
.navcan-cats-title { font-size: 1.7rem; margin: 0 0 6px; position: relative; }
.navcan-cats-title::after {
  content: ''; display: block; width: 66px; height: 3px;
  background: var(--nv-cyan); margin: 12px auto 30px; border-radius: 2px;
}
.navcan-cats-grid {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 30px 26px;
}
.navcan-cat-tile {
  width: 150px; text-decoration: none; display: flex;
  flex-direction: column; align-items: center; gap: 10px;
}
.navcan-cat-circle {
  width: 132px; height: 132px; border-radius: 50%;
  background-size: cover; background-position: center;
  box-shadow: var(--nv-shadow); border: 4px solid #fff;
  outline: 1px solid var(--nv-border);
  display: flex; align-items: center; justify-content: center;
  transition: transform .25s ease, box-shadow .25s ease;
}
.navcan-cat-tile:hover .navcan-cat-circle { transform: translateY(-5px); box-shadow: var(--nv-shadow-hover); }
.navcan-cat-noimg { background: linear-gradient(135deg, #eef1fb, #dfe4f7); color: var(--nv-navy); font-family: var(--nv-head); font-weight: 800; font-size: 2.6rem; }
.navcan-cat-name { font-family: var(--nv-head); font-weight: 600; color: var(--nv-navy); font-size: .98rem; }
.navcan-cat-count { font-size: .8rem; color: var(--nv-muted); margin-top: -4px; }

/* ============================================================
   TRUST STRIP
   ============================================================ */
.navcan-trust {
  max-width: 1240px; margin: 26px auto; padding: 22px 20px;
  background: #fff; border-radius: 12px; box-shadow: var(--nv-shadow);
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px;
}
.navcan-trust-item { text-align: center; padding: 4px 10px; border-right: 1px solid var(--nv-border); }
.navcan-trust-item:last-child { border-right: 0; }
.navcan-trust-item strong { display: block; font-family: var(--nv-head); color: var(--nv-navy); font-size: 1.02rem; margin-bottom: 3px; }
.navcan-trust-item span { color: var(--nv-muted); font-size: .86rem; }
@media (max-width: 768px) {
  .navcan-trust { grid-template-columns: repeat(2, 1fr); }
  .navcan-trust-item:nth-child(2) { border-right: 0; }
}

/* ============================================================
   PRODUCT CARDS  (reference look: white card, red badge, navy title, red price)
   ============================================================ */
.woocommerce ul.products,
.woocommerce-page ul.products { gap: 0; }
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background: var(--nv-card);
  border: 1px solid var(--nv-border);
  border-radius: 12px;
  padding: 14px 14px 18px;
  box-shadow: 0 2px 10px rgba(28,35,90,.05);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  position: relative;
  text-align: left;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: var(--nv-shadow-hover);
  border-color: #d5dbea;
}
.woocommerce ul.products li.product a img {
  border-radius: 8px;
  margin-bottom: 12px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  background: #f7f8fc;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--nv-head);
  color: var(--nv-navy) !important;
  font-weight: 600;
  font-size: .98rem;
  line-height: 1.3;
  padding: 4px 0 6px;
  min-height: 2.6em;
}
.woocommerce ul.products li.product .price {
  color: var(--nv-price) !important;
  font-weight: 700;
  font-size: 1.12rem;
}
.woocommerce ul.products li.product .price del {
  color: var(--nv-muted) !important;
  font-weight: 400;
  font-size: .9rem;
  opacity: 1;
}
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
  margin-top: 10px;
  display: inline-block;
  background: var(--nv-navy);
  font-size: .86rem;
  padding: .55em 1em;
}
.woocommerce ul.products li.product .button:hover { background: var(--nv-cyan); }

/* Sale badge (Storefront default) restyle to red pill top-left */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
  background: var(--nv-red) !important;
  color: #fff !important;
  border-radius: 4px;
  min-height: auto;
  min-width: auto;
  padding: 5px 10px;
  font-family: var(--nv-head);
  font-weight: 600;
  font-size: .74rem;
  top: 12px; left: 12px; right: auto;
  margin: 0;
  line-height: 1.1;
}

/* ============================================================
   NEWSLETTER BAND
   ============================================================ */
.navcan-newsletter {
  background: var(--nv-navy);
  color: #fff;
  margin-top: 50px;
}
.navcan-newsletter .nv-news-inner {
  max-width: 900px; margin: 0 auto; padding: 46px 20px; text-align: center;
}
.navcan-newsletter h2 { color: #fff; font-size: 1.7rem; margin: 0 0 8px; }
.navcan-newsletter p { color: #c7ccf2; margin: 0 0 22px; }
.navcan-newsletter form {
  display: flex; max-width: 520px; margin: 0 auto; gap: 10px; flex-wrap: wrap; justify-content: center;
}
.navcan-newsletter input[type="email"] {
  flex: 1; min-width: 240px; border: 0; border-radius: 8px;
  padding: 14px 16px; font-size: 15px; color: var(--nv-ink);
}
.navcan-newsletter button {
  background: var(--nv-cyan); border: 0; border-radius: 8px;
  padding: 14px 30px; color: #fff; font-family: var(--nv-head); font-weight: 700; cursor: pointer;
}
.navcan-newsletter button:hover { background: var(--nv-cyan-dark); }

/* ============================================================
   FOOTER  (navy multi-column)
   ============================================================ */
.navcan-footer {
  background: var(--nv-navy-dark);
  color: #c8cdf0;
  padding: 50px 20px 10px;
}
.navcan-footer .nv-foot-grid {
  max-width: 1240px; margin: 0 auto;
  display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 34px;
}
.navcan-footer h4 {
  color: #fff; font-family: var(--nv-head); font-size: 1.05rem;
  margin: 0 0 16px; letter-spacing: .02em;
}
.navcan-footer .nv-logo {
  font-family: var(--nv-head); font-weight: 800; text-transform: uppercase;
  color: #fff; font-size: 1.35rem; letter-spacing: .04em; margin-bottom: 12px; display: block;
}
.navcan-footer p { color: #aeb4e0; font-size: .9rem; line-height: 1.7; margin: 0 0 8px; }
.navcan-footer ul { list-style: none; margin: 0; padding: 0; }
.navcan-footer ul li { margin-bottom: 9px; }
.navcan-footer a { color: #c8cdf0; text-decoration: none; font-size: .9rem; }
.navcan-footer a:hover { color: var(--nv-cyan); }
.navcan-foot-bottom {
  max-width: 1240px; margin: 34px auto 0; padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.12);
  text-align: center; color: #9aa0d0; font-size: .82rem;
}
@media (max-width: 900px) {
  .navcan-footer .nv-foot-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .navcan-footer .nv-foot-grid { grid-template-columns: 1fr; }
}

/* Hide Storefront's default footer widgets/credit — we use our own */
.site-footer { background: var(--nv-navy-dark); color: #c8cdf0; padding-top: 0; }
.site-footer .site-info { display: none; }

/* Footer social row */
.navcan-footer .nv-social {
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px;
}
.navcan-footer .nv-social a {
  display: inline-block;
  padding: 6px 12px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 20px;
  font-size: .8rem;
  color: #dfe2f7;
  transition: all .2s ease;
}
.navcan-footer .nv-social a:hover {
  background: var(--nv-cyan); border-color: var(--nv-cyan); color: #fff;
}

/* ============================================================
   CUSTOMER REVIEWS SECTION
   ============================================================ */
.navcan-reviews { background: #fff; border-top: 1px solid var(--nv-border); }
.navcan-reviews .nv-rev-inner { max-width: 1240px; margin: 0 auto; padding: 54px 20px; }
.navcan-reviews .nv-rev-head { text-align: center; margin-bottom: 30px; }
.navcan-reviews h2 {
  font-family: var(--nv-head); color: var(--nv-navy); font-size: 1.7rem; margin: 0 0 10px;
}
.nv-rev-score { display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; justify-content: center; }
.nv-rev-num { font-family: var(--nv-head); font-weight: 800; font-size: 1.9rem; color: var(--nv-navy); }
.nv-rev-score .nv-rev-stars { color: #f5a623; font-size: 1.2rem; letter-spacing: 2px; }
.nv-rev-sub { color: var(--nv-muted); font-size: .9rem; }
.nv-rev-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-top: 10px;
}
.nv-rev-card {
  background: var(--nv-bg); border: 1px solid var(--nv-border); border-radius: 12px;
  padding: 22px 20px; display: flex; flex-direction: column;
}
.nv-rev-card .nv-rev-stars { color: #f5a623; font-size: 1rem; letter-spacing: 2px; margin-bottom: 10px; }
.nv-rev-card p { color: var(--nv-ink); font-size: .92rem; line-height: 1.6; margin: 0 0 16px; flex: 1; }
.nv-rev-author { display: flex; align-items: center; gap: 10px; font-family: var(--nv-head); font-weight: 600; color: var(--nv-navy); }
.nv-rev-avatar {
  width: 34px; height: 34px; border-radius: 50%; background: var(--nv-navy); color: #fff;
  display: inline-flex; align-items: center; justify-content: center; font-size: .95rem;
}
.nv-rev-cta {
  display: block; width: max-content; margin: 34px auto 0;
  background: var(--nv-cyan); color: #fff !important; text-decoration: none;
  padding: 12px 28px; border-radius: 8px; font-family: var(--nv-head); font-weight: 600;
}
.nv-rev-cta:hover { background: var(--nv-navy); }
@media (max-width: 960px) { .nv-rev-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 540px) { .nv-rev-grid { grid-template-columns: 1fr; } }

/* ============================================================
   MISC POLISH
   ============================================================ */
.storefront-breadcrumb { background: transparent; }
.woocommerce .woocommerce-breadcrumb { color: var(--nv-muted); }
.woocommerce .woocommerce-breadcrumb a { color: var(--nv-cyan-dark); }

.onsale { text-transform: none; }

/* Page content cards */
.page .entry-content, .single-post .entry-content { color: var(--nv-ink); }

/* Language switcher spacing (TranslatePress floating) stays as-is */

/* WooCommerce price on single product */
.single-product p.price, .single-product span.price { color: var(--nv-price) !important; font-weight: 700; }
.single-product .entry-title { color: var(--nv-navy); }

/* ============================================================
   HEADER SEARCH WITH CATEGORY DROPDOWN (reference match)
   ============================================================ */
/* Flex header row: logo | search, vertically centered */
.site-header .col-full {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center;
  gap: 24px;
}
.site-header .skip-link { position: absolute !important; }
.site-header .site-branding {
  margin: 0 !important;
  width: auto !important;
  float: none !important;
  flex: 0 0 auto;
}
.site-header .site-search {
  flex: 1 1 auto;
  width: auto !important;
  max-width: 560px !important;
  min-width: 260px;
  float: none !important;
  margin: 0 0 0 auto !important;
  clear: none !important;
}
.site-header .site-search .widget_product_search { margin: 0; width: 100%; }
.site-header .nv-search { align-items: stretch; flex-wrap: nowrap; width: 100%; position: relative; }
.site-header .nv-search .search-field { flex: 1 1 auto; min-width: 80px; position: static !important; }
.site-header .nv-search .nv-cat-select { flex: 0 0 auto; }
.site-header .nv-search button {
  flex: 0 0 auto;
  position: static !important;
  width: auto !important;
  height: auto !important;
  right: auto !important;
  opacity: 1 !important;
}
/* hide the always-$0.00 amount; show icon + count only */
.site-header-cart .cart-contents .amount { display: none; }
@media (max-width: 900px) {
  .site-header .site-search { max-width: 60%; }
}
.site-header .nv-search .nv-cat-select {
  border: 0;
  border-left: 1px solid var(--nv-border);
  background: #fff;
  color: var(--nv-navy);
  font-family: var(--nv-head);
  font-weight: 600;
  font-size: 14px;
  padding: 0 12px;
  max-width: 170px;
  cursor: pointer;
  outline: none;
}
.site-header .nv-search button {
  display: inline-flex; align-items: center; gap: 7px;
  white-space: nowrap;
}
.site-header .nv-search .nv-search-ico { font-size: 15px; line-height: 1; }
@media (max-width: 768px) {
  .site-header .nv-search .nv-cat-select { display: none; }
  .site-header .nv-search .nv-search-txt { display: none; }
  .site-header .nv-search button { padding: 0 18px !important; }
}

/* ============================================================
   HEADER CART with icon + count badge
   ============================================================ */
.site-header-cart { display: flex; align-items: center; }
.site-header-cart .cart-contents {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  font-family: var(--nv-head);
  font-weight: 600;
  color: var(--nv-navy) !important;
  padding: 8px 6px !important;
}
.site-header-cart .cart-contents::before {
  content: '';
  width: 24px; height: 24px;
  display: inline-block;
  background-color: var(--nv-navy);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") no-repeat center / contain;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='20' cy='21' r='1'/%3E%3Cpath d='M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6'/%3E%3C/svg%3E") no-repeat center / contain;
  flex: 0 0 auto;
}
.site-header-cart .cart-contents:hover { color: var(--nv-cyan-dark) !important; }
.site-header-cart .cart-contents:hover::before { background-color: var(--nv-cyan-dark); }
.site-header-cart .count {
  background: var(--nv-cyan) !important;
  color: #fff !important;
  border-radius: 20px;
  padding: 2px 9px;
  font-size: 12px;
  font-weight: 700;
}

/* ============================================================
   BLACK / RED / WHITE REBRAND  (v2.1.0) — MEUBLES NAVCAN logo
   Matches the client logo: black bg, white "MEUBLES", red "NAVCAN"
   + red maple leaf, tagline "MATELAS · HOME DECOR · PRIX ENTREPOT".
   ============================================================ */

/* Dark brand bands: pure-black top bar, near-black header w/ red rule */
.navcan-topbar { background: #000 !important; }
.site-header {
  background: #141414 !important;
  border-bottom: 3px solid var(--nv-red) !important;
}

/* --- Header wordmark (replaces the plain site-title text) --- */
.site-header .site-title { line-height: 1 !important; margin: 0 !important; }
.site-header .site-title a {
  display: inline-flex !important;
  align-items: center;
  gap: .18em;
  font-size: 0 !important;                 /* hide the raw site-title text */
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.site-header .site-title a::before {
  content: "MEUBLES";
  color: #fff;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: .01em;
}
.site-header .site-title a::after {
  content: "NAVCAN";
  color: var(--nv-red);
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: .01em;
  margin-left: .3em;
}
.site-header .site-title a:hover::before { color: #fff; }
.site-header .site-title a:hover::after { color: var(--nv-red); }

/* Red maple leaf after the wordmark */
.site-header .site-branding .site-title::after {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-left: 8px;
  vertical-align: -6px;
  background: var(--nv-red);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M383 279.8l84.9-20.4-19.5-15.9c-4.9-4-7-10.5-5.3-16.6l16.9-61.9-58.5 12.4c-6.2 1.3-12.5-2-15-7.8l-11.3-26.6-45.8 49.1c-3.9 4.2-10.9 1.6-11.1-4.1l6.4-118.9-33 18.1c-5.7 3.1-12.9.8-15.7-5.1L256 24l-21.4 52.1c-2.8 5.9-10 8.2-15.7 5.1l-33-18.1 6.4 118.9c-.2 5.7-7.2 8.3-11.1 4.1l-45.8-49.1-11.3 26.6c-2.5 5.8-8.8 9.1-15 7.8l-58.5-12.4 16.9 61.9c1.7 6.1-.4 12.6-5.3 16.6L37 259.4l84.9 20.4c5.9 1.4 9.4 7.5 7.6 13.3l-7.3 23.4 88.9-7.6c4.6-.4 8.4 3.5 7.9 8.1L211 488h90l-7.9-158.6c-.5-4.6 3.3-8.5 7.9-8.1l88.9 7.6-7.3-23.4c-1.8-5.8 1.7-11.9 7.4-13.7z'/%3E%3C/svg%3E") no-repeat center / contain;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M383 279.8l84.9-20.4-19.5-15.9c-4.9-4-7-10.5-5.3-16.6l16.9-61.9-58.5 12.4c-6.2 1.3-12.5-2-15-7.8l-11.3-26.6-45.8 49.1c-3.9 4.2-10.9 1.6-11.1-4.1l6.4-118.9-33 18.1c-5.7 3.1-12.9.8-15.7-5.1L256 24l-21.4 52.1c-2.8 5.9-10 8.2-15.7 5.1l-33-18.1 6.4 118.9c-.2 5.7-7.2 8.3-11.1 4.1l-45.8-49.1-11.3 26.6c-2.5 5.8-8.8 9.1-15 7.8l-58.5-12.4 16.9 61.9c1.7 6.1-.4 12.6-5.3 16.6L37 259.4l84.9 20.4c5.9 1.4 9.4 7.5 7.6 13.3l-7.3 23.4 88.9-7.6c4.6-.4 8.4 3.5 7.9 8.1L211 488h90l-7.9-158.6c-.5-4.6 3.3-8.5 7.9-8.1l88.9 7.6-7.3-23.4c-1.8-5.8 1.7-11.9 7.4-13.7z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Tagline line under the wordmark → logo tagline */
.site-header .site-description {
  font-size: 0 !important;                 /* hide the SEO tagline text in header */
  margin-top: 6px !important;
}
.site-header .site-description::after {
  content: "MATELAS  ·  HOME DÉCOR  ·  PRIX ENTREPÔT";
  display: block;
  color: #d9d9d9;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .16em;
}

@media (max-width: 480px) {
  .site-header .site-title a::before,
  .site-header .site-title a::after { font-size: 1.4rem; }
  .site-header .site-branding .site-title::after { width: 22px; height: 22px; }
  .site-header .site-description::after { font-size: .6rem; letter-spacing: .1em; }
}

/* ============================================================
   HEADER LANGUAGE SWITCHER (English / Français) — v2.1.3
   Sits at the RIGHT of the nav row (near the cart), white-bar styling.
   ============================================================ */
.site-header .col-full .main-navigation { order: 1; }
.site-header .col-full .nv-lang-switch { order: 2; margin-left: auto; }
.site-header .col-full .site-header-cart { order: 3; }
.nv-lang-switch {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  white-space: nowrap;
  padding-right: 6px;
}
.nv-lang-switch .nv-lang-label {
  color: #6b7280;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .02em;
}
.nv-lang-switch .trp-language-switcher { margin: 0 !important; }
.nv-lang-switch .trp_language_switcher_container,
.nv-lang-switch .trp-language-switcher > div { background: transparent !important; }
.nv-lang-switch .trp-ls-shortcode-current-language {
  border: 1px solid var(--nv-border) !important;
  border-radius: 6px !important;
  background: #fff !important;
}
.nv-lang-switch .trp-ls-shortcode-current-language a,
.nv-lang-switch .trp-ls-shortcode-current-language > a {
  color: #141414 !important;
  padding: 7px 12px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
}
.nv-lang-switch .trp-ls-shortcode-current-language:hover { background: var(--nv-bg) !important; }
.nv-lang-switch .trp-ls-shortcode-language {
  background: #fff !important;
  border: 1px solid var(--nv-border) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
  border-radius: 8px !important;
  overflow: hidden;
}
.nv-lang-switch .trp-ls-shortcode-language a {
  color: #141414 !important;
  padding: 9px 14px !important;
  font-size: 14px !important;
}
.nv-lang-switch .trp-ls-shortcode-language a:hover {
  background: var(--nv-bg) !important;
  color: var(--nv-red) !important;
}
.nv-lang-switch .trp-ls-disabled-language a { opacity: .6; }
@media (max-width: 760px) {
  .nv-lang-switch { margin-left: auto; }
  .nv-lang-switch .nv-lang-label { display: none; }
}

/* ============================================================
   ADD-TO-CART & WOOCOMMERCE BUTTONS — v2.1.4 (brand red, polished)
   ============================================================ */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce .button,
.woocommerce #respond input#submit,
.woocommerce ul.products li.product .button,
.woocommerce a.add_to_cart_button,
.woocommerce button.single_add_to_cart_button {
  background: var(--nv-red) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  padding: 12px 22px !important;
  text-transform: none !important;
  letter-spacing: .01em;
  box-shadow: 0 4px 12px rgba(225,27,34,.22);
  transition: background .15s ease, box-shadow .15s ease, transform .15s ease;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce .button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce a.add_to_cart_button:hover,
.woocommerce button.single_add_to_cart_button:hover {
  background: var(--nv-cyan-dark) !important;   /* darker red */
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(225,27,34,.30);
  transform: translateY(-1px);
}
/* On product cards make the button full-width & aligned to the card bottom */
.woocommerce ul.products li.product {
  display: flex;
  flex-direction: column;
}
.woocommerce ul.products li.product .button {
  display: block;
  width: 100%;
  text-align: center;
  margin-top: auto;
}
.woocommerce ul.products li.product .added_to_cart {
  display: block;
  text-align: center;
  margin-top: 8px;
  color: var(--nv-red);
  font-weight: 600;
}
/* Remove the redundant default WooCommerce "Sale!" flash — the custom
   "Save $X / Économisez $X" badge already communicates the discount. */
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale { display: none !important; }

/* ============================================================
   HEADER CART — clean single icon + number badge (v2.1.6)
   Hide Storefront's duplicate FontAwesome cart icon; the count is a
   small red circular badge showing just the number (JS in functions.php
   strips the "items" word and hides it when the cart is empty).
   ============================================================ */
.site-header-cart .cart-contents::after { display: none !important; }
.site-header-cart .cart-contents { display: inline-flex !important; align-items: center; gap: 7px; }
.site-header-cart .cart-contents .amount { display: none !important; }
.site-header .site-header-cart .count,
.site-header-cart .cart-contents .count {
  position: static !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 19px;
  height: 19px;
  padding: 0 5px !important;
  background: var(--nv-red) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 10px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

/* ============================================================
   HEADER SEARCH FIX (v2.1.7) — remove the overlapping left
   magnifier (the red "Search" button on the right is enough).
   ============================================================ */
.site-header .nv-search::before,
.site-header form.woocommerce-product-search::before { display: none !important; content: none !important; }
.site-header .nv-search .search-field,
.site-header .woocommerce-product-search input.search-field { padding-left: 18px !important; }

/* ============================================================
   HIGH-CONVERSION PRODUCT PAGE (v2.1.8)
   ============================================================ */
.navcan-instock { color:#1a7f37; font-weight:700; font-size:14px; margin:10px 0 6px; display:flex; align-items:center; gap:6px; }
.navcan-quote-box { background:var(--nv-bg); border:1px solid var(--nv-border); border-radius:12px; padding:16px 18px; margin:14px 0; }
.navcan-quote-lead { margin:0 0 10px; font-weight:600; color:var(--nv-ink); }
.navcan-quote-actions { display:flex; flex-wrap:wrap; gap:10px; }
.navcan-quote-btn, .navcan-loop-quote { background:#25D366 !important; color:#fff !important; border:0 !important; border-radius:8px !important; font-weight:700 !important; padding:12px 20px !important; box-shadow:0 4px 12px rgba(37,211,102,.25); }
.navcan-quote-btn:hover, .navcan-loop-quote:hover { background:#1da851 !important; color:#fff !important; }
.navcan-call-btn { background:#141414 !important; color:#fff !important; border:0 !important; border-radius:8px !important; font-weight:700 !important; padding:12px 20px !important; }
.navcan-call-btn:hover { background:#000 !important; color:#fff !important; }
.woocommerce ul.products li.product .navcan-loop-quote { display:block; width:100%; text-align:center; margin-top:auto; }
.navcan-pdp-trust { list-style:none; margin:18px 0 4px; padding:16px; display:grid; grid-template-columns:1fr 1fr; gap:14px; border:1px solid var(--nv-border); border-radius:12px; background:#fff; }
.navcan-pdp-trust li { display:flex; align-items:flex-start; gap:10px; margin:0; }
.navcan-pdp-trust .ic { font-size:20px; line-height:1; flex:0 0 auto; }
.navcan-pdp-trust .tx { display:flex; flex-direction:column; }
.navcan-pdp-trust .tx strong { font-size:13px; color:var(--nv-navy); line-height:1.2; }
.navcan-pdp-trust .tx em { font-style:normal; font-size:12px; color:var(--nv-muted); line-height:1.3; }
@media (max-width:480px){ .navcan-pdp-trust { grid-template-columns:1fr; } }
/* quote/call button colors must beat the add-to-cart red */
.woocommerce a.button.navcan-quote-btn,
.woocommerce a.button.navcan-loop-quote,
a.button.navcan-quote-btn, a.button.navcan-loop-quote { background:#25D366 !important; color:#fff !important; }
.woocommerce a.button.navcan-quote-btn:hover,
.woocommerce a.button.navcan-loop-quote:hover { background:#1da851 !important; color:#fff !important; }
.woocommerce a.button.navcan-call-btn, a.button.navcan-call-btn { background:#141414 !important; color:#fff !important; }
.woocommerce a.button.navcan-call-btn:hover { background:#000 !important; color:#fff !important; }

/* ===== PRODUCT PAGE POLISH v2.2.2 (no gallery size filter — safe) ===== */
.woocommerce div.product div.images{width:45% !important;margin-bottom:0 !important;}
.woocommerce div.product div.summary{width:51% !important;}
@media(max-width:768px){.woocommerce div.product div.images,.woocommerce div.product div.summary{width:100% !important;float:none !important;}}
.woocommerce div.product .woocommerce-product-gallery__image img{width:100% !important;height:auto !important;border-radius:14px;border:1px solid var(--nv-border);background:#fff;}
.woocommerce div.product .flex-control-thumbs{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px;}
.woocommerce div.product .flex-control-thumbs li{width:72px !important;margin:0 !important;}
.woocommerce div.product .flex-control-thumbs li img{border-radius:8px;border:1px solid var(--nv-border);opacity:.7;}
.woocommerce div.product .flex-control-thumbs li img.flex-active,.woocommerce div.product .flex-control-thumbs li img:hover{opacity:1;border-color:var(--nv-red);}
.woocommerce div.product .product_title{font-size:2rem !important;line-height:1.15;margin:0 0 10px !important;}
.woocommerce div.product p.price,.woocommerce div.product .summary .price{font-size:1.95rem !important;font-weight:800 !important;color:var(--nv-price) !important;margin:0 0 6px !important;}
.woocommerce div.product p.price del,.woocommerce div.product .summary .price del{color:var(--nv-muted) !important;font-weight:500 !important;font-size:1.1rem !important;opacity:.85;margin-right:8px;}
.woocommerce div.product p.price ins,.woocommerce div.product .summary .price ins{text-decoration:none;}
.single-product div.product .summary{padding-left:10px;}
.woocommerce div.product .woocommerce-product-details__short-description{color:#3a3f4a;line-height:1.6;margin:6px 0 14px;}
.woocommerce div.product .product_meta{font-size:12.5px;color:var(--nv-muted);border-top:1px solid var(--nv-border);margin-top:18px;padding-top:14px;}
.woocommerce div.product .product_meta > span{display:block;margin-bottom:4px;}
.woocommerce div.product .product_meta a{color:var(--nv-muted);}
.woocommerce div.product .woocommerce-tabs{margin-top:38px;clear:both;}
.woocommerce div.product .woocommerce-tabs .panel{padding-top:14px;line-height:1.65;max-width:940px;}
.woocommerce div.product .related>h2,.woocommerce div.product .upsells>h2{font-size:1.5rem;margin-bottom:20px;}
.woocommerce div.product .related,.woocommerce div.product .upsells{margin-top:40px;clear:both;}

/* ===== SIDE INFO PANEL (v2.2.3) — fills the left column below the gallery ===== */
.woocommerce div.product .navcan-side-info{clear:left;float:left;width:45%;box-sizing:border-box;}
.navcan-side-info{margin-top:18px;border:1px solid var(--nv-border);border-radius:14px;background:#fafafa;padding:16px 16px 14px;}
@media(max-width:768px){.woocommerce div.product .navcan-side-info{float:none;width:100%;clear:both;}}
.navcan-side-info .nsi-head{font-weight:800;font-size:1rem;color:var(--nv-navy);margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--nv-border);}
.navcan-side-info .nsi-list{list-style:none;margin:0 0 4px;padding:0;}
.navcan-side-info .nsi-list li{display:flex;gap:11px;align-items:flex-start;padding:8px 0;border-bottom:1px dashed var(--nv-border);}
.navcan-side-info .nsi-list li:last-child{border-bottom:0;}
.navcan-side-info .nsi-ic{font-size:1.15rem;line-height:1.3;flex:0 0 auto;}
.navcan-side-info .nsi-tx{display:flex;flex-direction:column;line-height:1.35;}
.navcan-side-info .nsi-tx strong{font-size:.9rem;color:var(--nv-navy);font-weight:700;}
.navcan-side-info .nsi-tx em{font-style:normal;font-size:.8rem;color:var(--nv-muted);margin-top:1px;}
.navcan-side-info .nsi-help{margin-top:12px;font-size:.85rem;font-weight:600;color:var(--nv-navy);}
.navcan-side-info .nsi-btns{display:flex;gap:8px;margin-top:8px;}
.navcan-side-info .nsi-btns a{flex:1;text-align:center;padding:9px 8px;border-radius:9px;font-size:.82rem;font-weight:700;text-decoration:none;line-height:1.1;}
.navcan-side-info .nsi-wa{background:#25D366;color:#fff !important;}
.navcan-side-info .nsi-wa:hover{background:#1da851;}
.navcan-side-info .nsi-call{background:var(--nv-navy);color:#fff !important;}
.navcan-side-info .nsi-call:hover{background:#000;}
.navcan-side-info .nsi-map{display:inline-block;margin-top:11px;font-size:.82rem;font-weight:600;color:var(--nv-price);text-decoration:none;}
.navcan-side-info .nsi-map:hover{text-decoration:underline;}

/* v2.2.4 — trust badges moved into the LEFT column (stacked) to fill the gap */
.woocommerce div.product ul.navcan-pdp-trust{clear:left;float:left;width:45%;box-sizing:border-box;grid-template-columns:1fr;margin:14px 0 0;}
@media(max-width:768px){.woocommerce div.product ul.navcan-pdp-trust{float:none;width:100%;clear:both;grid-template-columns:1fr 1fr;}}
@media(max-width:768px){.navcan-side-info{margin-bottom:22px;}}

/* ===== SHOP / LOOP CARD ALIGNMENT v2.2.5 — equal-height cards, aligned image/title/price/button ===== */
.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px 24px;margin:0 0 30px !important;padding:0;list-style:none;}
.woocommerce ul.products:before,.woocommerce ul.products:after{content:none !important;display:none !important;}
.woocommerce ul.products li.product{width:auto !important;float:none !important;margin:0 !important;padding:14px !important;display:flex;flex-direction:column;height:100%;border:1px solid var(--nv-border);border-radius:14px;background:#fff;box-sizing:border-box;}
.woocommerce ul.products li.product a.woocommerce-loop-product__link{display:flex;flex-direction:column;flex:1 1 auto;}
.woocommerce ul.products li.product img:not(.emoji){width:100% !important;aspect-ratio:1/1;height:auto !important;object-fit:cover;border-radius:10px;margin:0 0 12px !important;background:#fff;}
.woocommerce ul.products li.product img.emoji{width:1em !important;height:1em !important;aspect-ratio:auto !important;display:inline !important;margin:0 .05em !important;object-fit:fill !important;border:0 !important;border-radius:0 !important;vertical-align:-0.1em;background:none !important;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.3;font-weight:700;color:var(--nv-navy);margin:0 0 8px !important;padding:0 !important;}
.woocommerce ul.products li.product .navcan-save-badge{align-self:flex-start;margin:0 0 6px;}
.woocommerce ul.products li.product .price{display:block;margin:0 0 6px !important;font-size:1.1rem;}
.woocommerce ul.products li.product .navcan-loop-finance,.woocommerce ul.products li.product .navcan-finance{margin:0 0 10px;}
.woocommerce ul.products li.product a.button,.woocommerce ul.products li.product a.added_to_cart{margin-top:auto !important;width:100%;text-align:center;box-sizing:border-box;}
@media(max-width:480px){.woocommerce ul.products{grid-template-columns:1fr 1fr;gap:16px 12px;}.woocommerce ul.products li.product{padding:10px !important;}}

/* ===== MINI-CART DROPDOWN WIDTH FIX v2.2.9 (was 104px → text wrapped per letter) ===== */
.site-header-cart .widget_shopping_cart{width:328px !important;max-width:90vw !important;left:auto !important;right:0 !important;}

/* ===== CATEGORY HERO + FILTERS v2.3.0 ===== */
.navcan-cat-hero{position:relative;width:100vw;margin-left:calc(-50vw + 50%);margin-bottom:22px;min-height:280px;display:flex;align-items:center;background-size:cover;background-position:center;background-color:#141414;color:#fff;}
.navcan-cat-hero.nch-noimg{background:linear-gradient(120deg,#141414,#2a2a2a);}
.navcan-cat-hero .nch-inner{max-width:1100px;margin:0 auto;padding:44px 24px;width:100%;box-sizing:border-box;}
.navcan-cat-hero .nch-eyebrow{display:inline-block;font-size:.72rem;letter-spacing:2px;font-weight:700;color:#ff6a6a;margin-bottom:10px;}
.navcan-cat-hero .nch-title{font-size:2.6rem;line-height:1.05;font-weight:800;color:#fff;margin:0 0 12px;text-transform:uppercase;}
.navcan-cat-hero .nch-blurb{font-size:1.02rem;line-height:1.55;max-width:620px;color:rgba(255,255,255,.92);margin:0 0 20px;}
.navcan-cat-hero .nch-cta{display:inline-block;background:var(--nv-red);color:#fff !important;font-weight:700;padding:12px 26px;border-radius:10px;text-decoration:none;}
.navcan-cat-hero .nch-cta:hover{background:var(--nv-cyan-dark);}
@media(max-width:600px){.navcan-cat-hero{min-height:200px;}.navcan-cat-hero .nch-title{font-size:1.7rem;}.navcan-cat-hero .nch-blurb{font-size:.92rem;}}

.navcan-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px 16px;border:1px solid var(--nv-border);border-radius:12px;background:#fafafa;margin:0 0 14px;}
.navcan-filters .nf-label{font-weight:700;color:var(--nv-navy);font-size:.9rem;}
.navcan-filters .nf-price{display:inline-flex;align-items:center;gap:6px;}
.navcan-filters .nf-price input{width:96px;padding:8px 10px;border:1px solid var(--nv-border);border-radius:8px;font-size:.9rem;background:#fff;}
.navcan-filters .nf-dash{color:var(--nv-muted);}
.navcan-filters .nf-chk{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;color:var(--nv-navy);cursor:pointer;white-space:nowrap;}
.navcan-filters .nf-btn{background:var(--nv-navy);color:#fff;border:0;border-radius:8px;padding:9px 20px;font-weight:700;cursor:pointer;font-size:.9rem;}
.navcan-filters .nf-btn:hover{background:#000;}
.navcan-filters .nf-clear{color:var(--nv-price);font-size:.85rem;font-weight:600;text-decoration:none;}
.navcan-filters .nf-clear:hover{text-decoration:underline;}

.navcan-catchips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px;}
.navcan-catchips .ncc-lbl{font-weight:700;color:var(--nv-navy);font-size:.85rem;margin-right:4px;}
.navcan-catchips a{display:inline-block;padding:6px 14px;border:1px solid var(--nv-border);border-radius:999px;font-size:.82rem;color:var(--nv-navy);text-decoration:none;background:#fff;transition:all .15s;}
.navcan-catchips a:hover{border-color:var(--nv-red);color:var(--nv-red);}
.navcan-catchips a.active{background:var(--nv-red);color:#fff !important;border-color:var(--nv-red);}
#navcan-shop-top{position:relative;top:-90px;}

/* ===== PRODUCT RANGE v2.3.1 (Normal / Exclusive / Custom) ===== */
.navcan-range-badge{display:inline-block;font-size:.68rem;font-weight:800;letter-spacing:.5px;padding:4px 10px;border-radius:6px;text-transform:uppercase;line-height:1.2;}
.nrb-exclusive{background:linear-gradient(90deg,#caa24a,#a67c1e);color:#fff;}
.nrb-custom{background:var(--nv-navy);color:#fff;}
.woocommerce div.product .summary > .navcan-range-badge{margin:0 0 10px;}
.woocommerce ul.products li.product{position:relative;}
.woocommerce ul.products li.product .navcan-loop-badge{position:absolute;top:22px;left:22px;z-index:3;}
.navcan-price-request{font-weight:800;color:var(--nv-navy);}
.woocommerce div.product .navcan-buybox .nbb-price .navcan-price-request{font-size:1.45rem;}
.navcan-quote-cta{margin:2px 0 4px;}
.navcan-quote-cta .nqc-row{display:flex;gap:10px;flex-wrap:wrap;}
.navcan-quote-cta .nqc-wa{flex:1 1 160px;text-align:center;background:#25D366;color:#fff !important;font-weight:800;padding:14px 18px;border-radius:10px;text-decoration:none;font-size:1rem;}
.navcan-quote-cta .nqc-wa:hover{background:#1da851;}
.navcan-quote-cta .nqc-call{flex:0 0 auto;text-align:center;background:var(--nv-navy);color:#fff !important;font-weight:800;padding:14px 18px;border-radius:10px;text-decoration:none;}
.navcan-quote-cta .nqc-call:hover{background:#000;}
.navcan-quote-cta .nqc-note{font-size:.82rem;color:var(--nv-muted);margin:10px 0 0;}
.woocommerce ul.products li.product a.navcan-loop-quote{margin-top:auto !important;width:100%;text-align:center;background:var(--nv-navy) !important;color:#fff !important;}
.woocommerce ul.products li.product a.navcan-loop-quote:hover{background:#000 !important;}
.navcan-rangefilter{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 18px;}
.navcan-rangefilter .nrf-lbl{font-weight:700;color:var(--nv-navy);font-size:.85rem;margin-right:4px;}
.navcan-rangefilter a{display:inline-block;padding:6px 14px;border:1px solid var(--nv-border);border-radius:999px;font-size:.82rem;color:var(--nv-navy);text-decoration:none;background:#fff;}
.navcan-rangefilter a:hover{border-color:var(--nv-red);color:var(--nv-red);}
.navcan-rangefilter a.active{background:var(--nv-navy);color:#fff !important;border-color:var(--nv-navy);}

/* ===== AMAZON-STYLE PDP v2.2.6 ===== */
/* top-of-summary save/financing are re-rendered inside the buy box — hide originals */
.woocommerce div.product .summary > .navcan-save-badge,
.woocommerce div.product .summary > .navcan-finance-chip{display:none !important;}

/* star rating */
.navcan-rating{display:flex;align-items:center;gap:8px;margin:2px 0 12px;}
.navcan-rating .nr-stars{position:relative;display:inline-block;font-size:17px;line-height:1;letter-spacing:2px;color:#dcdcdc;}
.navcan-rating .nr-stars::before{content:"\2605\2605\2605\2605\2605";}
.navcan-rating .nr-fill{position:absolute;top:0;left:0;overflow:hidden;white-space:nowrap;color:#f5a623;}
.navcan-rating .nr-fill::before{content:"\2605\2605\2605\2605\2605";}
.navcan-rating .nr-num{font-weight:700;color:var(--nv-navy);font-size:.9rem;}
.navcan-rating .nr-count{color:#0a6ed1;font-size:.85rem;text-decoration:none;}
.navcan-rating .nr-count:hover{text-decoration:underline;}

/* about this item */
.navcan-about{margin:6px 0 16px;}
.navcan-about h3{font-size:1.02rem;font-weight:800;color:var(--nv-navy);margin:0 0 8px;}
.navcan-about ul{list-style:none;margin:0;padding:0;}
.navcan-about li{position:relative;padding:0 0 6px 20px;line-height:1.5;color:#3a3f4a;font-size:.92rem;}
.navcan-about li::before{content:"";position:absolute;left:4px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--nv-price);}

/* buy box */
.woocommerce div.product .navcan-buybox{border:1px solid var(--nv-border);border-radius:14px;padding:18px;margin:8px 0 0;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.06);}
.navcan-buybox .nbb-price{font-size:1.85rem;font-weight:800;color:var(--nv-price);line-height:1.1;margin-bottom:8px;}
.navcan-buybox .nbb-price del{color:var(--nv-muted);font-weight:500;font-size:1rem;margin-right:8px;}
.navcan-buybox .nbb-price ins{text-decoration:none;}
.navcan-buybox .nbb-price .navcan-save-badge{display:inline-block;vertical-align:middle;font-size:.68rem;margin-left:8px;}
.navcan-buybox .nbb-fin{font-size:.85rem;color:#3a3f4a;margin-bottom:10px;}
.navcan-buybox .nbb-fin .navcan-finance-chip{margin:0;}
.navcan-buybox .nbb-ship{list-style:none;margin:0 0 14px;padding:12px 0;border-top:1px solid var(--nv-border);border-bottom:1px solid var(--nv-border);}
.navcan-buybox .nbb-ship li{display:flex;gap:9px;align-items:flex-start;font-size:.85rem;line-height:1.4;color:#3a3f4a;margin:0 0 6px;}
.navcan-buybox .nbb-ship li:last-child{margin-bottom:0;}
.navcan-buybox .nbb-ship .nbb-ic{font-size:1rem;flex:0 0 auto;}
.navcan-buybox .navcan-instock{margin:0 0 10px !important;}
.navcan-buybox .navcan-postal{margin:0 0 14px !important;}
.navcan-buybox form.cart{margin:0 !important;}

/* vertical thumbnail gallery (desktop) */
@media(min-width:769px){
.woocommerce div.product .woocommerce-product-gallery{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:12px;}
.woocommerce div.product .woocommerce-product-gallery__wrapper{flex:1 1 auto;margin:0 !important;}
.woocommerce div.product .flex-control-thumbs{flex:0 0 68px;width:68px !important;display:flex;flex-direction:column;gap:8px;margin:0 !important;padding:0;}
.woocommerce div.product .flex-control-thumbs li{width:68px !important;margin:0 !important;float:none !important;}
}

/* ===== PDP COLUMN LAYOUT v2.2.7 — grid so summary top-aligns with the image ===== */
@media(min-width:769px){
.woocommerce div.product{display:grid !important;grid-template-columns:45% 52%;column-gap:3%;align-items:start;}
.woocommerce div.product > div.images{grid-column:1;grid-row:1;width:auto !important;float:none !important;margin:0 !important;}
.woocommerce div.product > div.summary{grid-column:2;grid-row:1 / 4;align-self:start;width:auto !important;float:none !important;margin:0 !important;}
.woocommerce div.product > .navcan-side-info{grid-column:1;grid-row:2;width:auto !important;float:none !important;clear:none !important;margin:16px 0 0 !important;}
.woocommerce div.product > .navcan-pdp-trust{grid-column:1;grid-row:3;width:auto !important;float:none !important;clear:none !important;margin:14px 0 0 !important;}
.woocommerce div.product > .woocommerce-tabs,
.woocommerce div.product > .related,
.woocommerce div.product > .upsells,
.woocommerce div.product > .storefront-product-pagination{grid-column:1 / -1;float:none !important;width:auto !important;}
}

/* ===== MINI-CART: hide dropdown by default, reveal only on hover/focus v2.3.2 ===== */
.site-header-cart .widget_shopping_cart{ display:none !important; }
.site-header-cart:hover .widget_shopping_cart,
.site-header-cart:focus-within .widget_shopping_cart{ display:block !important; }

/* ===== SHOP BY CATEGORY: feature 6, reveal the rest via "View all" v2.3.3 ===== */
.navcan-cats-cb{ position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.navcan-cats-grid .navcan-cat-extra{ display:none; }
.navcan-cats-cb:checked ~ .navcan-cats-grid .navcan-cat-extra{ display:flex; }
.navcan-cats-toggle{
  display:inline-block; margin-top:28px; cursor:pointer;
  font-family:var(--nv-head); font-weight:700; font-size:.95rem;
  color:var(--nv-navy); background:#fff; border:2px solid var(--nv-cyan);
  border-radius:40px; padding:11px 30px; transition:all .15s ease;
}
.navcan-cats-toggle:hover{ background:var(--nv-cyan); color:#fff; }
.navcan-cats-toggle .nct-less{ display:none; }
.navcan-cats-cb:checked ~ .navcan-cats-toggle .nct-more{ display:none; }
.navcan-cats-cb:checked ~ .navcan-cats-toggle .nct-less{ display:inline; }

/* NAVCAN-FOOTER-POLISH-V2 */
.navcan-footer{background:#0a0a0b !important;padding:60px 20px 24px !important;}
.navcan-footer .nv-foot-grid{gap:44px;}
.navcan-footer h4{position:relative;color:#fff !important;font-size:.98rem !important;text-transform:uppercase;letter-spacing:.1em;padding-bottom:12px;margin:0 0 20px !important;}
.navcan-footer h4::after{content:'';position:absolute;left:0;bottom:0;width:30px;height:2px;background:var(--nv-red);border-radius:2px;}
.navcan-footer .nv-logo{color:#fff !important;}
.navcan-footer p{color:rgba(255,255,255,.62) !important;line-height:1.75 !important;}
.navcan-footer a{color:rgba(255,255,255,.72) !important;transition:color .18s ease,padding-left .18s ease,background .18s ease,border-color .18s ease,transform .18s ease;}
.navcan-footer ul li{margin-bottom:12px !important;}
.navcan-footer ul li a,.navcan-footer .nv-contact a{display:inline-block;}
.navcan-footer ul li a:hover,.navcan-footer .nv-contact a:hover{color:#fff !important;padding-left:5px;}
.navcan-footer .nv-social{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px;}
.navcan-footer .nv-social a{border:1px solid rgba(255,255,255,.22) !important;color:rgba(255,255,255,.85) !important;border-radius:999px;padding:7px 15px !important;font-size:.8rem;background:transparent !important;}
.navcan-footer .nv-social a:hover{background:var(--nv-red) !important;border-color:var(--nv-red) !important;color:#fff !important;transform:translateY(-1px);padding-left:15px !important;}
.navcan-foot-bottom{color:rgba(255,255,255,.5) !important;border-top-color:rgba(255,255,255,.1) !important;}

/* Client review fix 2026-07-25: hide fabricated product rating; genuine WooCommerce reviews unaffected */
.navcan-rating{display:none !important;}

/* Catalog mode (client review #3) 2026-07-25: no working checkout until prices are live */
.site-header-cart{display:none !important;}
.storefront-handheld-footer-bar .cart{display:none !important;}
.main-navigation li:has(> a[href$="/cart/"]),.main-navigation li:has(> a[href$="/checkout/"]),#site-navigation li:has(> a[href$="/cart/"]),#site-navigation li:has(> a[href$="/checkout/"]){display:none !important;}
