/** Shopify CDN: Minification failed

Line 1096:1 Expected "}" to go with "{"

**/
/* ===========================================
   VeCandles — Baobab-inspired luxury styles
   Compatible with Dawn & Be Yours themes
   All colors via CSS variables — fully editable
   =========================================== */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Jost:wght@200;300;400;500&display=swap');

:root {
  --vc-gold:    #ee8bcfff;
  --vc-gold-d:  #df46d2ff;
  --vc-gold-l:  #f0b9daff;
  --vc-dark:    #1A1A1A;
  --vc-soft:    #FAF8F5;
  --vc-cream:   #F2EDE6;
  --vc-tan:     #E8DFD3;
  --vc-mid:     #6B6460;
  --vc-light:   #C8BFB4;
  --vc-border:  #DDD6CC;
  --vc-serif:   'Cormorant Garamond', Georgia, serif;
  --vc-sans:    'Jost', 'Helvetica Neue', Arial, sans-serif;
  --vc-ease:    cubic-bezier(0.4, 0, 0.2, 1);
}

/* ── ANNOUNCEMENT BAR ── */
.vc-ann {
  background: var(--vc-dark);
  color: var(--vc-cream);
  height: 36px;
  overflow: hidden;
  position: relative;
}
.vc-ann-track {
  display: flex;
  animation: vc-marquee 28s linear infinite;
  white-space: nowrap;
  height: 100%;
  align-items: center;
}
.vc-ann-track span {
  padding: 0 52px;
  font-family: var(--vc-sans);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 300;
  flex-shrink: 0;
}
.vc-ann-track a { color: var(--vc-gold); text-decoration: underline; }
@keyframes vc-marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }

/* ── HERO ── */
.vc-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
}
.vc-hero-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1.4s var(--vc-ease);
}
.vc-hero-slide.vc-active { opacity: 1; }
.vc-hero-img {
  width: 100%; height: 100%;
  object-fit: cover;
  transform: scale(1.05);
  transition: transform 8s ease-out;
}
.vc-hero-slide.vc-active .vc-hero-img { transform: scale(1); }
.vc-hero-ov { position: absolute; inset: 0; }
.vc-hero-cnt {
  position: relative;
  z-index: 2;
  padding: 80px;
}
@media (max-width: 768px) { .vc-hero-cnt { padding: 40px 24px; } }
.vc-eyebrow-pill {
  display: inline-block;
  font-family: var(--vc-sans);
  font-size: 10px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--vc-gold);
  border: 1px solid rgba(200, 168, 118, 0.45);
  padding: 5px 18px;
  margin-bottom: 16px;
  font-weight: 300;
}
.vc-hero-title {
  font-family: var(--vc-serif);
  font-size: clamp(44px, 8vw, 96px);
  font-weight: 300;
  color: #fff;
  line-height: 0.92;
  letter-spacing: -2px;
  margin-bottom: 20px;
}
.vc-hero-title em { font-style: italic; color: var(--vc-gold-l); }
.vc-hero-sub {
  font-family: var(--vc-sans);
  font-size: 14px;
  color: rgba(255,255,255,0.6);
  font-weight: 300;
  line-height: 1.85;
  max-width: 400px;
  margin-bottom: 34px;
}
.vc-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 15px 40px;
  background: var(--vc-gold);
  color: #fff;
  font-family: var(--vc-sans);
  font-size: 11px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 400;
  border: none;
  cursor: pointer;
  transition: all 0.3s var(--vc-ease);
  text-decoration: none;
}
.vc-btn-primary:hover { background: #fff; color: var(--vc-dark); gap: 22px; }
.vc-btn-outline {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 14px 38px;
  background: none;
  color: var(--vc-dark);
  font-family: var(--vc-sans);
  font-size: 11px;
  letter-spacing: 3px;
  text-transform: uppercase;
  border: 1px solid var(--vc-dark);
  cursor: pointer;
  transition: all 0.3s var(--vc-ease);
  text-decoration: none;
}
.vc-btn-outline:hover { background: var(--vc-dark); color: #fff; gap: 22px; }
.vc-btn-outline--light {
  border-color: rgba(255,255,255,0.5);
  color: #fff;
}
.vc-btn-outline--light:hover { background: rgba(255,255,255,0.12); border-color: #fff; gap: 22px; }
.vc-arrow {
  display: inline-block;
  width: 18px; height: 1px;
  background: currentColor;
  position: relative;
  flex-shrink: 0;
}
.vc-arrow::after {
  content: '';
  position: absolute;
  right: 0; top: -3px;
  width: 6px; height: 6px;
  border-right: 1px solid currentColor;
  border-top: 1px solid currentColor;
  transform: rotate(45deg);
}
.vc-hero-dots {
  position: absolute;
  bottom: 30px; left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 3;
}
.vc-dot {
  width: 20px; height: 2px;
  background: rgba(255,255,255,0.3);
  border: none; padding: 0;
  cursor: pointer;
  transition: all 0.3s;
}
.vc-dot.vc-active { width: 40px; background: var(--vc-gold); }
.vc-scroll-hint {
  position: absolute;
  bottom: 32px; right: 80px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255,255,255,0.35);
  font-family: var(--vc-sans);
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  z-index: 3;
}
.vc-scroll-line {
  width: 38px; height: 1px;
  background: rgba(255,255,255,0.2);
  position: relative;
  overflow: hidden;
}
.vc-scroll-line::after {
  content: '';
  position: absolute;
  left: -100%; top: 0;
  width: 100%; height: 100%;
  background: var(--vc-gold);
  animation: vc-scanline 2.2s 1.5s infinite;
}
@keyframes vc-scanline { 0%{left:-100%} 100%{left:100%} }
@media (max-width: 768px) { .vc-scroll-hint { display: none; } }

/* ── MARQUEE BAND ── */
.vc-marquee {
  padding: 28px 0;
  border-top: 1px solid var(--vc-border);
  border-bottom: 1px solid var(--vc-border);
  overflow: hidden;
}
.vc-marquee-track {
  display: flex;
  gap: 48px;
  animation: vc-marquee 22s linear infinite;
  white-space: nowrap;
}
.vc-marquee-item {
  font-family: var(--vc-serif);
  font-size: 30px;
  font-weight: 300;
  color: var(--vc-light);
  letter-spacing: -1px;
  display: flex;
  align-items: center;
  gap: 48px;
  flex-shrink: 0;
}
.vc-marquee-dot {
  width: 6px; height: 6px;
  background: var(--vc-gold);
  border-radius: 50%;
  flex-shrink: 0;
}

/* ── COLLECTIONS GRID ── */
.vc-coll-grid { display: grid; gap: 2px; }
.vc-coll-asym {
  grid-template-columns: 2fr 1fr 1fr;
  grid-template-rows: 440px 270px;
}
.vc-coll-asym .vc-coll-item:first-child { grid-row: 1 / 3; }
@media (max-width: 900px) {
  .vc-coll-asym {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }
  .vc-coll-asym .vc-coll-item:first-child { grid-row: auto; }
  .vc-coll-item { height: 260px; }
}
@media (max-width: 500px) {
  .vc-coll-asym { grid-template-columns: 1fr; }
  .vc-coll-item { height: 220px; }
}
.vc-coll-item {
  position: relative;
  overflow: hidden;
  display: block;
  text-decoration: none;
}
.vc-coll-item img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.9s var(--vc-ease), filter 0.4s;
  filter: brightness(0.8);
}
.vc-coll-item:hover img { transform: scale(1.07); filter: brightness(0.95); }
.vc-coll-ov {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.65) 0%, transparent 60%);
  transition: background 0.4s;
}
.vc-coll-item:hover .vc-coll-ov {
  background: linear-gradient(to top, rgba(0,0,0,0.5) 0%, rgba(200,168,118,0.08) 100%);
}
.vc-coll-cnt {
  position: absolute;
  bottom: 28px; left: 28px; right: 28px;
}
.vc-coll-tag {
  display: block;
  font-family: var(--vc-sans);
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--vc-gold);
  margin-bottom: 5px;
}
.vc-coll-name {
  font-family: var(--vc-serif);
  color: #fff;
  font-weight: 300;
  line-height: 1.05;
  margin-bottom: 8px;
}
.vc-coll-lnk {
  font-family: var(--vc-sans);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-bottom: 1px solid rgba(255,255,255,0.2);
  padding-bottom: 2px;
  transition: all 0.25s;
  text-decoration: none;
}
.vc-coll-lnk:hover { color: var(--vc-gold); border-color: var(--vc-gold); gap: 13px; }

/* ── SECTION HEADER ── */
.vc-sec-hd {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 36px;
  flex-wrap: wrap;
  gap: 16px;
}
.vc-eyebrow {
  display: block;
  font-family: var(--vc-sans);
  font-size: 10px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--vc-gold);
  margin-bottom: 10px;
  font-weight: 400;
}
.vc-sec-title {
  font-family: var(--vc-serif);
  font-weight: 300;
  letter-spacing: -1px;
  line-height: 1;
  color: var(--vc-dark);
}
.vc-sec-title em { font-style: italic; color: var(--vc-gold-d); }
.vc-view-all {
  font-family: var(--vc-sans);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--vc-dark);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid var(--vc-dark);
  padding-bottom: 2px;
  transition: all 0.25s;
  text-decoration: none;
  white-space: nowrap;
}
.vc-view-all:hover { color: var(--vc-gold); border-color: var(--vc-gold); gap: 16px; }

/* ── PRODUCT CAROUSEL ── */
.vc-car-outer { overflow: hidden; }
.vc-car-track {
  display: flex;
  gap: 2px;
  transition: transform 0.6s var(--vc-ease);
}
.vc-car-track .vc-pcard {
  flex: 0 0 calc(25% - 2px);
  min-width: 0;
}
@media (max-width: 1024px) { .vc-car-track .vc-pcard { flex: 0 0 calc(33.33% - 2px); } }
@media (max-width: 768px)  { .vc-car-track .vc-pcard { flex: 0 0 calc(50% - 2px); } }
@media (max-width: 480px)  { .vc-car-track .vc-pcard { flex: 0 0 calc(100% - 2px); } }
.vc-car-controls {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-top: 28px;
}
.vc-car-btn {
  width: 44px; height: 44px;
  border: 1px solid var(--vc-border);
  background: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.25s;
  flex-shrink: 0;
  color: var(--vc-dark);
}
.vc-car-btn:hover { border-color: var(--vc-gold); background: var(--vc-gold); color: #fff; }
.vc-car-btn svg { width: 13px; height: 13px; stroke: currentColor; fill: none; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.vc-car-prog { flex: 1; max-width: 200px; height: 1px; background: var(--vc-border); }
.vc-car-fill { height: 100%; background: var(--vc-gold); transition: width 0.5s; }

/* ── PRODUCT CARD ── */
.vc-pcard { background: var(--vc-cream); }
.vc-pcard-media {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4/5;
  background: var(--vc-border);
}
.vc-pcard-media img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.8s var(--vc-ease);
}
.vc-pcard:hover .vc-pcard-media img { transform: scale(1.06); }
.vc-pcard-img2 { position: absolute; inset: 0; opacity: 0; transition: opacity 0.4s; }
.vc-pcard:hover .vc-pcard-img2 { opacity: 1; }
.vc-badge {
  position: absolute; top: 12px; left: 12px;
  font-family: var(--vc-sans);
  font-size: 9px; letter-spacing: 2px;
  text-transform: uppercase; font-weight: 400;
  padding: 4px 9px; z-index: 2;
}
.vc-badge--gold { background: var(--vc-gold); color: #fff; }
.vc-badge--dark { background: var(--vc-dark); color: #fff; }
.vc-pcard-actions {
  position: absolute; bottom: 12px; left: 12px; right: 12px;
  display: flex; gap: 6px;
  opacity: 0; transform: translateY(8px);
  transition: all 0.28s; z-index: 3;
}
.vc-pcard:hover .vc-pcard-actions { opacity: 1; transform: translateY(0); }
.vc-patc {
  flex: 1; padding: 11px;
  background: var(--vc-dark); color: #fff;
  font-family: var(--vc-sans);
  font-size: 10px; letter-spacing: 2px; text-transform: uppercase;
  border: none; cursor: pointer;
  transition: background 0.25s;
}
.vc-patc:hover { background: var(--vc-gold); }
.vc-pcard-info { padding: 16px; }
.vc-pcard-coll {
  font-family: var(--vc-sans);
  font-size: 9px; letter-spacing: 2px;
  text-transform: uppercase; color: var(--vc-gold);
  margin-bottom: 5px; display: block;
}
.vc-pcard-name {
  font-family: var(--vc-sans);
  font-size: 11px; letter-spacing: 1px;
  text-transform: uppercase; font-weight: 400;
  margin-bottom: 4px; color: var(--vc-dark); line-height: 1.4;
}
.vc-pcard-name a { color: inherit; text-decoration: none; }
.vc-pcard-frag {
  font-family: var(--vc-serif);
  font-size: 12px; color: var(--vc-mid);
  font-style: italic; margin-bottom: 7px; display: block;
}
.vc-pcard-price {
  font-family: var(--vc-serif);
  font-size: 17px; color: var(--vc-dark);
}

/* ── EDITORIAL ── */
.vc-ed { display: grid; grid-template-columns: 1fr 1fr; }
.vc-ed--rev { direction: rtl; }
.vc-ed--rev > * { direction: ltr; }
.vc-ed-visual { position: relative; overflow: hidden; }
.vc-ed-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--vc-ease); display: block; }
.vc-ed:hover .vc-ed-visual img { transform: scale(1.04); }
.vc-ed-cnt {
  display: flex; flex-direction: column;
  justify-content: center; padding: 80px;
}
.vc-ed-title {
  font-family: var(--vc-serif);
  font-size: clamp(30px, 4vw, 56px);
  font-weight: 300; line-height: 1.05;
  letter-spacing: -1px; margin-bottom: 18px;
}
.vc-ed-title em { font-style: italic; color: var(--vc-gold-d); }
.vc-ed-body {
  color: var(--vc-mid); font-family: var(--vc-sans);
  font-size: 14px; font-weight: 300;
  line-height: 1.9; max-width: 400px; margin-bottom: 32px;
}
@media (max-width: 768px) {
  .vc-ed { grid-template-columns: 1fr; }
  .vc-ed-visual { height: 280px; }
  .vc-ed--rev .vc-ed-visual { order: -1; }
  .vc-ed-cnt { padding: 40px 24px; }
}

/* ── EXPERIENCE ── */
.vc-exp {
  text-align: center;
  position: relative;
  overflow: hidden;
}
.vc-exp::before {
  content: '';
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  width: 600px; height: 600px;
  border: 1px solid rgba(200,168,118,0.06);
  border-radius: 50%; pointer-events: none;
}
.vc-exp-title {
  font-family: var(--vc-serif);
  font-size: clamp(44px, 7vw, 88px);
  font-weight: 300; letter-spacing: -3px;
  line-height: 0.92; margin-bottom: 28px;
  position: relative;
}
.vc-exp-title em { color: var(--vc-gold-l); font-style: italic; }
.vc-exp-desc {
  font-family: var(--vc-sans);
  font-size: 14px; font-weight: 300;
  max-width: 500px; margin: 0 auto 38px;
  line-height: 1.9; position: relative;
}
.vc-exp-nums {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 36px; margin-top: 56px; padding-top: 48px;
  border-top: 1px solid rgba(255,255,255,0.06);
  position: relative;
}
.vc-exp-val {
  font-family: var(--vc-serif);
  font-size: 52px; color: var(--vc-gold);
  font-weight: 300; display: block;
}
.vc-exp-lbl {
  font-family: var(--vc-sans);
  font-size: 11px; letter-spacing: 2px;
  text-transform: uppercase; margin-top: 6px; display: block;
}
@media (max-width: 600px) { .vc-exp-nums { grid-template-columns: 1fr; gap: 24px; } }

/* ── INSTAGRAM GRID ── */
.vc-ig {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  grid-template-rows: 280px 200px;
  gap: 2px;
}
.vc-ig-item { position: relative; overflow: hidden; }
.vc-ig-item:nth-child(1) { grid-column: 1/3; }
.vc-ig-item:nth-child(2) { grid-column: 3/4; grid-row: 1/3; }
.vc-ig-item:nth-child(3) { grid-column: 4/6; }
.vc-ig-item:nth-child(4) { grid-column: 1/2; grid-row: 2/3; }
.vc-ig-item:nth-child(5) { grid-column: 2/3; grid-row: 2/3; }
.vc-ig-item:nth-child(6) { grid-column: 4/5; grid-row: 2/3; }
.vc-ig-item:nth-child(7) { grid-column: 5/6; grid-row: 2/3; }
.vc-ig-item img { width:100%;height:100%;object-fit:cover;transition:transform 0.8s var(--vc-ease),filter 0.4s;filter:brightness(0.95); }
.vc-ig-item:hover img { transform:scale(1.06);filter:brightness(1); }
.vc-ig-ov { position:absolute;inset:0;background:rgba(200,168,118,0.15);opacity:0;transition:opacity 0.3s;display:flex;align-items:center;justify-content:center; }
.vc-ig-item:hover .vc-ig-ov { opacity:1; }
@media (max-width: 768px) {
  .vc-ig { grid-template-columns:repeat(3,1fr);grid-template-rows:auto; }
  .vc-ig-item { grid-column:auto!important;grid-row:auto!important;height:150px; }
}

/* ── REVEAL ON SCROLL ── */
.vc-reveal { opacity: 0; transform: translateY(28px); transition: opacity 0.85s, transform 0.85s var(--vc-ease); }
.vc-reveal.vc-visible { opacity: 1; transform: translateY(0); }

/* ── BUILD A BOX: EVENTS ── */
.vcb {
  --g: #C8A876;
  --gd: #A07840;
  --dk: #1A1A1A;
  --bg: #FAF8F5;
  --be: #F2EDE6;
  --wh: #FFFFFF;
  --gr: #6B6460;
  --br: #DDD6CC;
  --rs: 'Cormorant Garamond', Georgia, serif;
  --ss: 'Jost', 'Helvetica Neue', Arial, sans-serif;
}
.vcb * { box-sizing: border-box; }

/* Hero */
.vcb-hero { position:relative;background:var(--dk);padding:64px 24px;text-align:center;overflow:hidden; }
.vcb-hero-bg { position:absolute;inset:0;background-size:cover;background-position:center;opacity:.15; }
.vcb-hero-in { position:relative;z-index:1;max-width:680px;margin:0 auto; }
.vcb-hero-title { font-family:var(--rs);font-size:clamp(34px,5vw,62px);font-weight:300;color:#fff;line-height:1;letter-spacing:-1px;margin-bottom:12px; }
.vcb-hero-title em { font-style:italic;color:var(--g); }
.vcb-hero-sub { font-family:var(--ss);font-size:14px;color:rgba(255,255,255,.55);font-weight:300;line-height:1.8; }

/* Wrap */
.vcb-wrap { max-width:1100px;margin:0 auto;padding:56px 24px 72px; }
@media(max-width:600px){.vcb-wrap{padding:40px 16px 56px}}

/* Step headers */
.vcb-sh { display:flex;align-items:center;gap:12px;margin-bottom:20px; }
.vcb-sn { width:28px;height:28px;border:1.5px solid var(--g);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--rs);font-size:13px;color:var(--g);flex-shrink:0; }
.vcb-st { font-family:var(--rs);font-size:21px;font-weight:300;color:var(--dk); }
.vcb-hr { height:1px;background:var(--br);margin:40px 0; }

/* Category tabs */
.vcb-tabs { display:flex;gap:2px;margin-bottom:36px;flex-wrap:wrap; }
.vcb-tab { flex:1;min-width:120px;padding:18px 12px;background:var(--be);border:1.5px solid var(--br);cursor:pointer;transition:all .25s;position:relative;text-align:center;font-family:var(--ss); }
.vcb-tab:hover { border-color:var(--g);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.07); }
.vcb-tab.on { background:var(--dk);border-color:var(--g);color:#fff;transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.16); }
.vcb-tab-dot { position:absolute;top:8px;right:8px;width:15px;height:15px;background:var(--g);border-radius:50%;font-size:8px;display:none;align-items:center;justify-content:center;color:#fff; }
.vcb-tab.on .vcb-tab-dot { display:flex; }
.vcb-tab-icon { font-size:28px;display:block;margin-bottom:8px;transition:transform .25s; }
.vcb-tab:hover .vcb-tab-icon,.vcb-tab.on .vcb-tab-icon { transform:scale(1.1); }
.vcb-tab-name { font-size:14px;font-family:var(--rs);font-weight:400;display:block;margin-bottom:3px; }
.vcb-tab-desc { font-size:11px;color:var(--gr);font-weight:300; }
.vcb-tab.on .vcb-tab-desc { color:rgba(255,255,255,.45); }
@media(max-width:640px){.vcb-tab{flex:0 0 calc(50% - 1px);}}

/* Products grid per category */
.vcb-cat-panel { display:none; }
.vcb-cat-panel.on { display:block; }
.vcb-prod-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px; }
@media(max-width:900px){.vcb-prod-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){.vcb-prod-grid{grid-template-columns:repeat(2,1fr);}}
.vcb-prod {
  border:1.5px solid var(--br);background:var(--be);
  padding:14px;cursor:pointer;transition:all .22s;
  position:relative;user-select:none;
}
.vcb-prod:hover { border-color:var(--g);transform:translateY(-2px);box-shadow:0 5px 16px rgba(0,0,0,.08); }
.vcb-prod.on { border-color:var(--g);background:var(--wh);box-shadow:0 3px 14px rgba(200,168,118,.16); }
.vcb-prod-chk {
  position:absolute;top:8px;right:8px;width:20px;height:20px;
  border:1.5px solid var(--br);background:var(--wh);border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:9px;transition:all .2s;
}
.vcb-prod.on .vcb-prod-chk { background:var(--g);border-color:var(--g);color:#fff; }
.vcb-prod-img { width:100%;aspect-ratio:1;object-fit:cover;display:block;margin-bottom:8px;background:var(--br); }
.vcb-prod-name { font-family:var(--ss);font-size:10px;letter-spacing:1px;text-transform:uppercase;display:block;margin-bottom:3px;color:var(--dk);line-height:1.3; }
.vcb-prod-price { font-family:var(--rs);font-size:14px;color:var(--g); }
.vcb-prod-qty-row { display:flex;align-items:center;gap:6px;margin-top:8px; }
.vcb-prod-qty-btn { width:24px;height:24px;background:var(--be);border:1px solid var(--br);font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s; }
.vcb-prod-qty-btn:hover { background:var(--g);color:#fff;border-color:var(--g); }
.vcb-prod-qty-val { font-family:var(--rs);font-size:16px;min-width:20px;text-align:center; }

/* 2-col layout */
.vcb-layout { display:grid;grid-template-columns:1fr 320px;gap:44px;align-items:start; }
@media(max-width:880px){.vcb-layout{grid-template-columns:1fr;}}

/* Tiers */
.vcb-tiers { display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:16px; }
@media(max-width:460px){.vcb-tiers{grid-template-columns:1fr;}}
.vcb-tier { padding:13px 11px;border:1.5px solid var(--br);background:var(--bg);transition:all .25s; }
.vcb-tier.on { border-color:var(--g);background:var(--wh);box-shadow:0 2px 12px rgba(200,168,118,.14); }
.vcb-tq { font-family:var(--rs);font-size:19px;display:block;margin-bottom:2px; }
.vcb-tl { font-size:11px;color:var(--gr);display:block;margin-bottom:6px;font-family:var(--ss); }
.vcb-tb { display:inline-block;padding:3px 8px;font-size:9px;letter-spacing:1px;text-transform:uppercase;font-weight:500;background:var(--dk);color:#fff;font-family:var(--ss); }
.vcb-tier.on .vcb-tb { background:var(--g); }

/* Qty control */
.vcb-qrow { display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px; }
.vcb-qctrl { display:flex;align-items:center;border:1.5px solid var(--br);background:var(--wh); }
.vcb-qb { width:46px;height:46px;font-size:20px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--dk);cursor:pointer;transition:background .2s;font-family:var(--ss); }
.vcb-qb:hover { background:var(--be); }
.vcb-qb:disabled { opacity:.3;cursor:not-allowed; }
.vcb-qi { width:64px;height:46px;border:none;border-left:1px solid var(--br);border-right:1px solid var(--br);text-align:center;font-family:var(--rs);font-size:21px;outline:none;background:var(--wh);color:var(--dk);-moz-appearance:textfield; }
.vcb-qi::-webkit-inner-spin-button,.vcb-qi::-webkit-outer-spin-button{-webkit-appearance:none}
.vcb-ql { font-size:12px;color:var(--gr);font-family:var(--ss); }
.vcb-warn { display:none;align-items:center;gap:8px;padding:9px 13px;background:#fef8ec;border-left:3px solid var(--g);font-size:12px;color:#7a5c00;margin-top:6px;font-family:var(--ss); }
.vcb-warn.on { display:flex; }
.vcb-dpill { display:none;padding:8px 16px;background:var(--g);color:#fff;font-size:11px;letter-spacing:2px;text-transform:uppercase;width:fit-content;margin-top:11px;font-family:var(--ss);animation:vcbpop .3s both; }
.vcb-dpill.on { display:block; }
@keyframes vcbpop{from{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}

/* Extras */
.vcb-extras { display:grid;grid-template-columns:repeat(3,1fr);gap:9px; }
@media(max-width:640px){.vcb-extras{grid-template-columns:repeat(2,1fr);}}
.vcb-extra { border:1.5px solid var(--br);background:var(--bg);padding:16px 12px 12px;cursor:pointer;transition:all .22s;position:relative;user-select:none; }
.vcb-extra:hover { border-color:var(--g);transform:translateY(-2px); }
.vcb-extra.on { border-color:var(--g);background:var(--wh);box-shadow:0 2px 12px rgba(200,168,118,.11); }
.vcb-extra input { display:none; }
.vcb-ech { position:absolute;top:9px;right:9px;width:17px;height:17px;border:1.5px solid var(--br);background:var(--wh);display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .2s; }
.vcb-extra.on .vcb-ech { background:var(--g);border-color:var(--g);color:#fff; }
.vcb-ei { font-size:22px;display:block;margin-bottom:6px; }
.vcb-en { font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:400;display:block;margin-bottom:2px;color:var(--dk);font-family:var(--ss); }
.vcb-ed { font-size:11px;color:var(--gr);display:block;margin-bottom:4px;font-family:var(--ss); }
.vcb-ep { font-family:var(--rs);font-size:14px;color:var(--g);display:block; }

/* Form fields */
.vcb-fld { margin-bottom:16px; }
.vcb-fld label { font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--gr);display:block;margin-bottom:6px;font-family:var(--ss); }
.vcb-fld input,.vcb-fld select,.vcb-fld textarea { width:100%;padding:12px 13px;border:1.5px solid var(--br);background:var(--wh);font-family:var(--ss);font-size:13px;color:var(--dk);outline:none;transition:border-color .2s;-webkit-appearance:none;border-radius:0; }
.vcb-fld input:focus,.vcb-fld select:focus,.vcb-fld textarea:focus { border-color:var(--g); }
.vcb-fld textarea { resize:vertical;min-height:90px; }

/* Summary */
.vcb-sum { background:var(--dk);color:#fff;padding:28px;position:sticky;top:80px; }
.vcb-sum-hd { font-family:var(--rs);font-size:19px;font-weight:300;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:baseline; }
.vcb-sum-hd span { font-size:10px;font-family:var(--ss);color:var(--g);letter-spacing:1px; }
.vcb-sr { display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px;align-items:baseline; }
.vcb-sr .l { color:rgba(255,255,255,.4);font-weight:300;font-family:var(--ss); }
.vcb-sr .v { font-family:var(--rs);font-size:15px; }
.vcb-sr.disc .v { color:#7cdb7c; }
.vcb-sep { height:1px;background:rgba(255,255,255,.06);margin:12px 0; }
.vcb-sel { display:flex;justify-content:space-between;font-size:11px;color:rgba(255,255,255,.34);padding:2px 0;font-family:var(--ss); }
.vcb-tot { font-family:var(--rs);font-size:28px;color:var(--g);display:block;text-align:right;margin:12px 0 3px; }
.vcb-snote { font-size:10px;color:rgba(255,255,255,.2);line-height:1.65;font-family:var(--ss); }

/* CTAs */
.vcb-ctas { margin-top:16px; }
.vcb-atc { display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px;background:var(--g);color:#fff;border:none;font-family:var(--ss);font-size:11px;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:all .26s;margin-bottom:10px; }
.vcb-atc:hover { background:var(--dk);gap:18px; }
.vcb-atc:disabled { opacity:.35;cursor:not-allowed;pointer-events:none; }
.vcb-atc svg { width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;flex-shrink:0; }
.vcb-wa { display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:var(--wh);color:var(--dk);border:1.5px solid var(--br);font-family:var(--ss);font-size:11px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .26s;text-decoration:none; }
.vcb-wa:hover { border-color:#25D366;color:#1a7a40;gap:14px; }
.vcb-wa svg { width:16px;height:16px;fill:#25D366;flex-shrink:0; }

/* Trust badges */
.vcb-trust { display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--br);margin-top:16px;background:var(--bg); }
.vcb-ti { padding:12px 6px;text-align:center;border-right:1px solid var(--br); }
.vcb-ti:last-child { border-right:none; }
.vcb-ti-i { font-size:17px;display:block;margin-bottom:4px; }
.vcb-ti-t { font-size:9px;color:var(--gr);letter-spacing:1px;text-transform:uppercase;line-height:1.4;display:block;font-family:var(--ss); }


/* ==================================
   MOBILE HERO TEXT FIX
================================== */
@media screen and (max-width:768px){

  .vc-hero{
      height:85vh !important;
      min-height:720px;
      position:relative;
  }

  .vc-hero::after{
      content:'';
      position:absolute;
      inset:0;
      z-index:2;
      background:linear-gradient(
          90deg,
          rgba(0,0,0,.55) 0%,
          rgba(0,0,0,.35) 35%,
          rgba(0,0,0,.10) 60%,
          transparent 100%
      );
      pointer-events:none;
  }

  .vc-hero-img{
      object-fit:cover;
      object-position:65% center;
  }

  .vc-hero-cnt{
      position:absolute;
      left:0;
      right:0;
      bottom:60px;
      z-index:5;
      width:100%;
      padding:24px;
  }

  .vc-hero-card{
      background:none !important;
      border:none !important;
      box-shadow:none !important;
      backdrop-filter:none !important;
      padding:0 !important;
      max-width:260px !important;
  }

  .vc-hero-title{
      font-size:42px !important;
      line-height:.95;
      letter-spacing:-1px;
      margin-bottom:18px;
  }

  .vc-hero-sub{
      font-size:16px;
      line-height:1.6;
      color:rgba(255,255,255,.95);
      margin-bottom:24px;
  }

  .vc-btn-primary{
      width:100%;
      justify-content:center;
  }

  .vc-btn-outline{
      display:none;
  }

  .vc-eyebrow-pill{
      font-size:8px;
      letter-spacing:2px;
      margin-bottom:16px;
  }

  .vc-scroll-hint{
      display:none;
  }
}


/* ==================================
   MOBILE HERO CARD BELOW IMAGE
================================== */
@media screen and (max-width:768px){

  .vc-hero{
      height:auto !important;
      min-height:auto !important;
      display:block;
      background:#111;
  }

  .vc-hero-slide{
      position:absolute;
      inset:0;
  }

  .vc-hero-img{
      object-fit:cover;
      object-position:center center;
      height:420px !important;
  }

  .vc-hero-cnt{
      position:relative !important;
      z-index:10;
      margin-top:360px;
      padding:0 16px 20px 16px !important;
  }

  .vc-hero-card{
      max-width:100% !important;
      background:rgba(18,18,18,.78) !important;
      backdrop-filter:blur(18px);
      -webkit-backdrop-filter:blur(18px);
      border:1px solid rgba(255,255,255,.08);
      border-radius:24px !important;
      box-shadow:0 10px 30px rgba(0,0,0,.25);
      padding:24px !important;
  }

  .vc-hero-title{
      font-size:46px !important;
      line-height:.95;
      margin-bottom:14px;
  }

  .vc-hero-sub{
      font-size:15px;
      line-height:1.6;
      color:rgba(255,255,255,.85);
      margin-bottom:20px;
      max-width:none;
  }

  .vc-btn-primary{
      width:100%;
      justify-content:center;
  }

  .vc-btn-outline{
      display:none;
  }

  .vc-scroll-hint{
      display:none;
  }
}
/* =====================================
   TIPOGRAFÍA PREMIUM GLOBAL VECANDLES
===================================== */

/* Títulos */
h1,
h2,
h3,
h4,
h5,
h6,
.collection-hero__title,
.banner__heading,
.product__title,
.card__heading,
.footer-block__heading,
.rich-text__heading,
.image-with-text__heading,
.multicolumn-card__info h3 {
  font-family: var(--vc-serif) !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em;
}

/* =====================================
   VECANDLES LUXURY TYPOGRAPHY
===================================== */

/* MENÚ PRINCIPAL */

.header__menu-item,
.header__active-menu-item,
.list-menu__item {

  font-family: var(--vc-serif) !important;
  font-size: 1.85rem;
  font-weight: 400;
  letter-spacing: .04em;
  text-transform: none;
}


/* TÍTULOS */

h1,
h2,
h3,
h4,
h5,
h6,
.banner__heading,
.collection-hero__title,
.product__title,
.card__heading {

  font-family: var(--vc-serif) !important;
  font-weight: 300 !important;
  letter-spacing: -.03em;
  line-height: .95;
}


/* TÍTULO PRODUCTOS */

.card__heading,
.card-information__text h3,
.vc-product-card__title {

  font-family: var(--vc-serif) !important;
  font-size: 2.2rem;
  font-weight: 400;
  letter-spacing: -.02em;
}


/* PRECIOS */

.price,
.price-item,
.product__price,
.card-information .price {

  font-family: var(--vc-serif) !important;
  font-size: 2rem;
  font-weight: 400;
}


/* DESCRIPCIONES */

.rte,
.product__description,
.vc-collection__description {

  font-family: var(--vc-sans) !important;
  font-size: 1.55rem;
  line-height: 1.9;
  font-weight: 300;
  color: rgba(47,41,56,.78);
}


/* FAQ */

.vc-collection-faq__title {

  font-family: var(--vc-serif) !important;
  font-size: 4.8rem;
  font-weight: 300;
}

.vc-collection-faq__summary {

  font-family: var(--vc-serif) !important;
  font-size: 2rem;
  font-weight: 400;
}


/* BOTONES */

.button,
.button--primary,
.button--secondary,
.shopify-payment-button__button,
.vc-product-card__button {

  font-family: var(--vc-sans) !important;
  font-size: 1.2rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  font-weight: 400;
}


/* FOOTER */

.footer__heading {

  font-family: var(--vc-serif) !important;
  font-size: 2.2rem;
  font-weight: 300;
}

.footer,
.footer a {

  font-family: var(--vc-sans) !important;
}

/* =====================================
   REPARACIÓN DEFINITIVA COLECCIONES MÓVIL
   DAWN 15.4.1
===================================== */

@media screen and (max-width: 749px){

  .product-grid-container{
    display:block !important;
    height:auto !important;
    min-height:auto !important;
    overflow:visible !important;
  }

  .collection .grid,
  ul.product-grid,
  .product-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;

    opacity:1 !important;
    visibility:visible !important;

    height:auto !important;
    min-height:auto !important;
    overflow:visible !important;

    transform:none !important;
  }

  .collection .grid__item,
  .product-grid .grid__item,
  ul.product-grid > li{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .card-wrapper,
  .card,
  .card__inner{
    opacity:1 !important;
    visibility:visible !important;
  }



@media screen and (max-width:749px){

  .vc-product-card,
  .vc-product-card *,
  .grid__item,
  .card-wrapper{

    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

}