/*
Caricove Homepage — Desktop Baseline
Extracted from the original inline homepage CSS with max-width responsive rules removed.
Device overrides belong in their dedicated asset files.
*/

/* Device split guard: desktop renders the preserved desktop homepage only. */
.ccm-mobile-home{display:none!important;}
.ccm-wrap--desktop{display:block;}

.ccm-wrap{ width:100vw; max-width:100vw; margin:0 calc(50% - 50vw); color:var(--ink); }
  .ccm-section{ max-width:1400px; margin:28px auto; padding:0 clamp(14px,3vw,28px); }
  .ccm-h2{ font-size:clamp(18px,2.4vw,30px); margin:6px 0 14px; }
  .ccm-grid{ display:grid; gap:18px; }
  .ccm-grid.cols-6{ grid-template-columns:repeat(6,minmax(0,1fr)); }
  .ccm-grid.cols-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .ccm-grid.cols-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  
  
  

 /* CATEGORY / BRAND / HERO tiles */
.ccm-cat, .ccm-brand, .ccm-hero{
  background: linear-gradient(180deg, rgba(12,18,36,.72), rgba(7,12,26,.86));
  backdrop-filter: var(--blur);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  box-shadow:
    0 10px 30px rgba(0,0,0,.26),
    0 0 0 1px rgba(255,255,255,.03) inset;
}

/* CATEGORY CARDS — make them feel more premium and less boxy */
.ccm-cat{
  position: relative;
  padding: 14px 14px 13px;
  text-align: center;
  overflow: hidden;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease;
}

.ccm-cat::before{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background:
    radial-gradient(120% 90% at 50% -10%, rgba(105,190,255,.18), transparent 48%);
  opacity: .8;
}

.ccm-cat:hover{
  transform: translateY(-6px);
  border-color: rgba(98,185,255,.42);
  box-shadow:
    0 18px 40px rgba(0,0,0,.34),
    0 0 22px rgba(70,170,255,.18),
    0 0 0 1px rgba(255,255,255,.04) inset;
}

/* CATEGORY MEDIA FRAME — slightly wider/shorter = more cinematic */
.ccm-cat .thumb{
  position: relative;
  aspect-ratio: 16 / 10;
  border-radius: 16px;
  overflow: hidden;
  background: #0c1326;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.05),
    0 8px 18px rgba(0,0,0,.18);
}

/* CATEGORY IMAGE ONLY */
.ccm-cat .thumb > img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  background: transparent;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 16px;
  transition: transform .28s ease, filter .28s ease;
}

.ccm-cat:hover .thumb > img{
  transform: scale(1.06);
  filter: saturate(1.04) contrast(1.03);
}

/* BRAND TILES — keep separate so category CSS isn't polluted */
.ccm-brand{
  position: relative;
  padding: 10px;
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.ccm-brand:hover{
  transform: translateY(-4px);
  border-color: rgba(98,185,255,.32);
  box-shadow:
    0 16px 34px rgba(0,0,0,.30),
    0 0 18px rgba(70,170,255,.14);
}

.ccm-brand .thumb{
  aspect-ratio: 16 / 10;
  border-radius: 14px;
  overflow: hidden;
  background: #0c1326;
}

.ccm-brand .thumb > img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  background: transparent;
  margin: 0;
  padding: 0;
  border: 0;
  transition: transform .24s ease;
}

.ccm-brand:hover .thumb > img{
  transform: scale(1.04);
}
  
  
  
 
.ccm-soldby,
.ccm-soldby *{
  text-transform:none !important;
  letter-spacing:.01em !important;
}

.ccm-store-link,
.ccm-store-link:link,
.ccm-store-link:visited,
.ccm-store-link:hover,
.ccm-store-link:focus{
  text-transform:none !important;
  font-variant:normal !important;
  letter-spacing:.08em !important;
}
  
  
  
  
  
  
/* Container that holds Featured Picks + View All */
div.ccm-prod-head{
  position: relative;
  display: flex;
  align-items: center;
}

/* Featured Picks View All button */
a.ccm-btn.ccm-prod-viewall{
  position: absolute;

  right: 0px;          /* ← move LEFT or RIGHT */
  top: 50%;            /* ← move UP or DOWN */
  transform: translateY(-50%); /* vertical centering */

  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 42px;
  padding: 0 16px;

  border-radius: 999px;

  color: #fff !important;
  text-decoration: none;

  font-weight: 800;
  white-space: nowrap;

  background: linear-gradient(90deg, var(--blue2), var(--blue));
  box-shadow: 0 0 14px rgba(30,144,255,.35);

  transition: all .25s ease;
}

/* hover effect */
a.ccm-btn.ccm-prod-viewall:hover{
  filter: brightness(1.05);
  transform: translateY(-50%) translateY(-1px);
}
  
  
  
  
  
  
  
  /* Premium size version */
.ccm-actions a,
.ccm-actions button{

  height:56px;
  width:100%;

  display:flex;
  align-items:center;
  justify-content:center;

  font-size:100px;
  font-weight:700;

  border-radius:999px;
  padding:0 22px;
  line-height:1;
}


.ccm-rating-count{
font-size:13px;
color:#cfd6e6;
margin-left:6px;
font-weight:600;
opacity:.85;
}


  /* Force bigger button text */
.ccm-card.product .ccm-actions a,
.ccm-card.product .ccm-actions button,
.ccm-card.product .ccm-actions .button{
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

.ccm-card.product .ccm-actions a *,
.ccm-card.product .ccm-actions button *,
.ccm-card.product .ccm-actions .button *{
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}
  
  

  /* Larger premium category cards */
a.ccm-cat.ccm-rot{
  width:260px !important;
  height:220px !important;
}

h3.ccm-title{
  text-transform: capitalize !important;
}

/* Adjust grid spacing so cards breathe */
.ccm-cat-grid{
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  gap:20px !important;
}
  
  
  
  
  
 /* reduce left spacing of product sections slightly */
.ccm-prod-section{
  padding-left:18px !important;
}
  
  
  
/* Make stars silver */
.ccm-stars i,
.ccm-stars svg,
.ccm-stars span{
  color:#cfd6df !important;
  fill:#cfd6df !important;
}

/* Hide the rating value like 5.0 */
.ccm-rating-value,
.ccm-stars + span{
  display:none !important;
}

/* Style the rating count like (1) */
.ccm-rating-count{
  color:#cfd6df !important;
  font-weight:700;
  font-size:14px;
  margin-left:6px;
}

/* Metallic silver stars */
.ccm-stars i,
.ccm-stars svg,
.ccm-stars span{
  background: linear-gradient(
    180deg,
    #ffffff 0%,
    #e5e9ef 20%,
    #cfd6df 45%,
    #f8fafc 65%,
    #aeb6c2 85%,
    #ffffff 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  
  filter: drop-shadow(0 0 3px rgba(255,255,255,.35));
}

/* Slight hover sparkle */
.ccm-stars i:hover,
.ccm-stars svg:hover{
  filter: drop-shadow(0 0 6px rgba(255,255,255,.55));
}
  
  
  
  
  
  
  
  
  
  
  /* ===== Brand "kangaroo pouch" label (hover only) ===== */
.ccm-brand{ position: relative; }

.ccm-brand .ccm-pouch{
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  padding: 6px 12px;
  border-radius: 2px;

  background: rgba(7,10,20,.72);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: saturate(1.2) blur(10px);

  color: #e9eefc;
  font-weight: 800;
  text-align: center;
  letter-spacing: .2px;

  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  transition: opacity .18s ease, transform .18s ease;
}

.ccm-brand:hover .ccm-pouch{
  opacity: 1;
  transform: translateY(0);
}
  
  
  
  
  
  

 .ccm-cat .name{
  display: block;
  margin-top: 14px;
  color: #f4f8ff;
  font-weight: 800;
  font-size: clamp(16px, 1.15vw, 20px);
  line-height: 1.12;
  letter-spacing: .15px;
  text-wrap: balance;
  text-shadow: 0 2px 10px rgba(0,0,0,.18);
}

.ccm-cat .sub{
  display: block;
  margin-top: 6px;
  color: rgba(221,233,255,.76);
  font-size: 12px;
  line-height: 1;
  letter-spacing: .35px;
  font-weight: 600;
}


  /* PRODUCT cards: white inset canvas + contain */
  .ccm-card{
    list-style:none; background:var(--surface); backdrop-filter:var(--blur); border:1px solid var(--bor);
    border-radius:18px; padding:14px; display:flex; flex-direction:column; box-shadow:0 6px 24px rgba(0,0,0,.28), 0 0 0 1px rgba(255,255,255,.04);
  }
  .ccm-thumb{ background:#fff; border-radius:12px; aspect-ratio:4/3; overflow:hidden; }
 .ccm-thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit: cover;
  object-position:center;
}


 

  /* GOLD ONLY STARS, LEFT */
/* STAR CENTERING — stays centered no matter how many stars */
.ccm-stars-wrap{
  display:flex;
  justify-content:center;  /* centers the star group */
  align-items:center;
  margin-top:4px;
}

.ccm-stars{
  display:inline-flex;
  gap:4px;
  align-items:center;
  justify-content:center;
  text-align:center;
  margin:0 auto;
}
  .ccm-star{ width:18px; height:18px; fill:var(--gold); stroke:var(--goldDark); stroke-width:.4; }
  .ccm-star.half .outline{ fill:none; stroke:var(--goldDark); stroke-width:.8; }
  .ccm-star.half .fill{ fill:var(--gold); }

  .ccm-price{ text-align:center; font-weight:800; margin:6px 0 10px; color:#fff; font-size:16px; }
  .ccm-actions{ margin-top:auto; display:flex; gap:8px; }
  .ccm-btn{ flex:1 1 0; color:#fff !important; border-radius:999px !important; padding:10px 14px !important; border:none !important; background:linear-gradient(90deg,var(--blue2),var(--blue)) !important; box-shadow:0 0 14px rgba(30,144,255,.45) !important; text-align:center;}


/* --- Smart title alignment ---
   Short titles: centered
   Long/wrapped titles: left-aligned
*/
.ccm-title{
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}

/* When the title wraps to multiple lines, switch to LTR alignment */
.ccm-title{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* This selector detects wrapping via line-clamp context */
.ccm-title:has(br),
.ccm-title:has(span){
  text-align: left;
}

/* Fallback for browsers without :has() support */
@supports not (selector(:has(*))) {
  .ccm-title{
    text-align: left;
  }
}


  /* HERO */
  .ccm-hero{ padding:24px; display:grid; grid-template-columns:1.4fr 1fr; gap:18px; }
  
  .ccm-hero .thumb{ aspect-ratio:4/3; border-radius:12px; overflow:hidden; }
  .ccm-hero .thumb img{ width:100%; height:100%; object-fit:cover; }
  .ccm-hero h3{ margin:0 0 8px; } .ccm-hero p{ color:var(--sub); margin:0 0 12px; }
  .ccm-hero .ccm-btn{ max-width:220px; }
  
  
  
 /* Kill Elementor section divider lines */

.elementor-container::before,
.elementor-container::after,
.elementor-section::before,
.elementor-section::after,
.ccm-section::before,
.ccm-section::after{
display:none !important;
content:none !important;
border:none !important;
box-shadow:none !important;
}

/* Also remove any accidental top borders */
.ccm-section,
.ccm-prod-section{
border-top:none !important;
border-bottom:none !important;
box-shadow:none !important;
}


  
  
  
 /* =========================================================
   CARICOVE HOMEPAGE — SEXY PRODUCT GRID REPLACEMENT
   ========================================================= */

/* ---------------------------------------------------------
   HARD RESET: kill the ghost/faint outer product container
   --------------------------------------------------------- */
.ccm-section,
.ccm-section > .ccm-grid,
.ccm-grid.cols-4{
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* ---------------------------------------------------------
   REAL SEPARATION between category section and first product section
   --------------------------------------------------------- */
.ccm-section + .ccm-section{
  position: relative;
  margin-top: 56px !important;
  padding-top: 34px !important;
}

.ccm-section + .ccm-section::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,.06) 12%,
    rgba(92,206,255,.48) 50%,
    rgba(255,255,255,.06) 88%,
    transparent 100%
  );
  box-shadow:
    0 0 22px rgba(64,180,255,.24),
    0 0 38px rgba(64,180,255,.12);
}


/* give breathing room below category cards too */
.ccm-cat-grid{
  margin-bottom: 6px;
}

/* ---------------------------------------------------------
   PRODUCT GRID SPACING
   --------------------------------------------------------- */
.ccm-grid.cols-4{
  gap: 28px !important;
  align-items: stretch;
}

/* ---------------------------------------------------------
   PRODUCT CARD BASE
   --------------------------------------------------------- */
.ccm-card.product{
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 26px;
  padding: 16px 16px 18px;
  min-height: 470px;
  background:
    linear-gradient(180deg, rgba(19,35,82,.96) 0%, rgba(10,18,52,.99) 100%) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow:
    0 16px 36px rgba(0,0,0,.30),
    0 0 0 1px rgba(255,255,255,.03) inset,
    0 0 20px rgba(42,160,255,.12) !important;
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    border-color .24s ease;
}

.ccm-card.product::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    radial-gradient(120% 90% at 50% -10%, rgba(120,210,255,.16), transparent 48%);
  opacity:.95;
}

.ccm-card.product::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background: linear-gradient(
    120deg,
    transparent 36%,
    rgba(255,255,255,.04) 50%,
    transparent 64%
  );
  opacity:0;
  transition: opacity .26s ease;
}

.ccm-card.product:hover{
  transform: translateY(-9px);
  border-color: rgba(108,196,255,.40) !important;
  box-shadow:
    0 24px 50px rgba(0,0,0,.36),
    0 0 28px rgba(64,180,255,.22),
    0 0 0 1px rgba(255,255,255,.05) inset !important;
}

.ccm-card.product:hover::after{
  opacity:1;
}

/* ---------------------------------------------------------
   CLICK TARGET
   --------------------------------------------------------- */
.ccm-card.product .ccm-link{
  display:block;
  color:inherit;
  text-decoration:none;
}

/* ---------------------------------------------------------
   IMAGE FRAME
   --------------------------------------------------------- */
.ccm-card.product .ccm-thumb{
  position: relative;
  aspect-ratio: 16 / 11;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,250,255,.96));
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.28),
    0 12px 22px rgba(0,0,0,.14);
  margin-bottom: 16px;
}

.ccm-card.product .ccm-thumb img{
  width:100%;
  height:100%;
  display:block;
  object-fit: contain;
  object-position:center;
  padding: 10px;
  margin:0;
  border:0;
  transition: transform .28s ease, filter .28s ease;
}

.ccm-card.product:hover .ccm-thumb img{
  transform: scale(1.05);
  filter: saturate(1.05) contrast(1.02);
}

/* ---------------------------------------------------------
   TITLE
   --------------------------------------------------------- */
.ccm-card.product .ccm-title{
  margin: 0 0 12px !important;
  min-height: 60px !important;
  color: #ff8fd8 !important;
  font-size: clamp(22px, 1.7vw, 30px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -.03em !important;
  text-align: center !important;
  text-wrap: balance;
  text-shadow:
    0 3px 12px rgba(0,0,0,.22),
    0 0 12px rgba(255,105,190,.10);
}

/* ---------------------------------------------------------
   META BLOCK
   --------------------------------------------------------- */
.ccm-meta-top{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-bottom: 14px;
}

/* sold by */
.ccm-soldby{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:6px;
  text-align:center;
}

.ccm-soldby-label{
  color: rgba(224,236,255,.68);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .34em;
  text-transform: uppercase;
}

.ccm-store-link{
  color: #a7eeff !important;
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-shadow: 0 0 8px rgba(80,210,255,.10);
}

.ccm-store-link:hover{
  color: #d8f8ff !important;
}

/* rating row */
.ccm-stars-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height: 28px;
}


/* =========================
   RECOMMENDED: Premium price hierarchy
   ========================= */

.ccm-price{
  font-weight:800;
  letter-spacing:-0.02em;
  color:#ffffff;
}

/* currency symbol */
.ccm-price .woocommerce-Price-currencySymbol{
  font-size:.65em;
  opacity:.8;
  margin-right:2px;
}

/* cents */
.ccm-price .woocommerce-Price-amount .decimal{
  font-size:.65em;
  opacity:.8;
}


/* =========================
   OPTIONAL: subtle glow polish
   ========================= */

.ccm-price{
  text-shadow:0 2px 10px rgba(255,255,255,.15);
}


.ccm-stars{
  display:flex;
  align-items:center;
  gap:4px;
}

.ccm-star{
  width:18px;
  height:18px;
  fill:#ffd86b;
  filter:
    drop-shadow(0 1px 4px rgba(0,0,0,.16))
    drop-shadow(0 0 6px rgba(255,216,107,.24));
}

.ccm-star.half .outline{
  fill:none;
  stroke:#ffd86b;
  stroke-width:1.2;
}

.ccm-star.half .fill{
  fill:#ffd86b;
}

.ccm-rating-text{
  color:#ffeab7;
  font-size:13px;
  font-weight:900;
  letter-spacing:.02em;
}

.ccm-stars-empty .ccm-rating-empty{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height: 25px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(236,244,255,.84);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}

/* ---------------------------------------------------------
   PRICE
   --------------------------------------------------------- */
.ccm-price{
  margin: 2px 0 20px !important;
  text-align:center !important;
  color:#ffffff !important;
  font-size: clamp(24px, 2vw, 34px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-shadow:
    0 3px 10px rgba(0,0,0,.22),
    0 0 12px rgba(105,210,255,.10);
}

.ccm-price .woocommerce-Price-currencySymbol{
  opacity:.96;
}

/* ---------------------------------------------------------
   ACTIONS
   --------------------------------------------------------- */
.ccm-actions{
  margin-top: auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

.ccm-card.product .ccm-btn{
  min-height: 46px;
  min-width: 132px;
  padding: 0 18px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  text-decoration:none !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow:
    0 10px 18px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.18);
  transition:
    transform .2s ease,
    filter .2s ease,
    box-shadow .2s ease;
}

.ccm-card.product .ccm-btn:hover{
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow:
    0 14px 22px rgba(0,0,0,.22),
    0 0 12px rgba(55,190,255,.18),
    inset 0 1px 0 rgba(255,255,255,.22);
}

.ccm-card.product .ccm-add,
.ccm-card.product .ccm-buy,
.ccm-card.product .ccm-customize{
  background: linear-gradient(90deg, #2de1ff, #2aabff) !important;
  color:#fff !important;
}

.ccm-card.product .ccm-customize{
  min-width: 230px;
}

/* ---------------------------------------------------------
   FIX OVERLY NARROW / SQUASHED TEXT BLOCKS
   --------------------------------------------------------- */
.ccm-card.product .ccm-title,
.ccm-card.product .ccm-price,
.ccm-card.product .ccm-soldby,
.ccm-card.product .ccm-stars-wrap{
  width: 100%;
  max-width: 100%;
}


  
  
  
  
  
  
  
  
  
  

  /* Deals */
  .ccm-ribbon{ position:relative; }
  .ccm-ribbon::after{ content:"DEAL"; position:absolute; top:10px; left:-6px; background:#ff4757; color:#fff; padding:4px 8px; border-radius:8px; box-shadow:0 2px 10px rgba(0,0,0,.2); font-weight:800; font-size:12px; }
  .ccm-count{ font-size:12px; color:#ffd76a; margin-left:6px; }

  /* Trust bar */
  .ccm-trust{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; justify-content:center; background:rgba(15,19,48,.6); backdrop-filter:var(--blur); border:1px solid var(--bor); border-radius:16px; padding:12px; }
  
  
  
  /* Keep hero separate from category/brand image behavior */
.ccm-hero .thumb > img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  border-radius: 12px;
  transition: transform .28s ease;
}

.ccm-hero:hover .thumb > img{
  transform: scale(1.04);
}
.ccm-cat-section{
  margin-top: 34px;
}

.ccm-cat-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.ccm-cat-head .ccm-h2{
  margin: 0px !important;
  font-size: clamp(22px, 2.5vw, 34px);
  line-height: 1;
  letter-spacing: -.02em;
}

.ccm-cat-viewall{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border-radius: 999px;
  color: #fff !important;
  text-decoration: none;
  font-weight: 800;
  background: linear-gradient(90deg, var(--blue2), var(--blue));
  box-shadow: 0 0 14px rgba(30,144,255,.35);
  white-space: nowrap;
}

.ccm-cat-viewall:hover{
  filter: brightness(1.05);
  transform: translateY(-1px);
}


/* Make the product image truly fill the image frame */
.ccm-thumb{
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
  background: transparent !important;
}

.ccm-thumb > img{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  border: 0 !important;
  transform: scale(1.18) !important;
}


/* Strong override */
.ccm-card.product h3.ccm-title{
  color: #ffffff !important;
}


/* sold-by container */
.ccm-soldby{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin-top:6px;
  margin-bottom:10px;
}

/* "Sold by" label */
.ccm-soldby-label{
  font-size:11px;
  font-weight:600;
  color:rgba(255,255,255,.65);
  letter-spacing:.04em;
  text-transform:none;
  margin-bottom:-1.8px;
}

/* store name */
.ccm-store-link{
  font-size:12px;
  font-weight:700;
  color:#9feaff;
  text-decoration:none;
  letter-spacing:.01em;
  text-shadow:none;
}

/* hover */
.ccm-store-link:hover{
  color:#ffffff;
}


/* Space between headers and card grids */
.ccm-cat-head,
.ccm-prod-head{
    margin-bottom: 34px; /* main spacing lever */
}

/* Slight breathing room above sections */
section.ccm-section{
    padding-top: 14px;
    padding-bottom: 14px;
}


.ccm-cat-grid{
  gap: 22px;
  grid-template-columns: repeat(5, minmax(0,1fr));
}
