:root { --velvet-red:#7d0f1c;--velvet-red-dark:#5f0b15;--gold:#ffd66b;--ink:#1f2328;--muted:#667085;--panel:#ffffff;--popcorn-bg:url('https://velvetcremepopcorn.com/skins/default/images/top-bg.jpg');--maxw:1170px;}
* { box-sizing:border-box}
body { margin:0;font:15px/1.45 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif !important;color:var(--ink);}
a { text-decoration:none;color:inherit}
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}
/* ===== Tier 1: Utility bar ===== */
.utility { background:var(--popcorn-bg) center/cover repeat-x;color:#4a070f;padding:8px 16px}
.utility__inner { max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.utility a { color:#4a070f}
.utility a:hover { text-decoration:underline}
/* ===== Tier 2: Brand/Search/Actions bar ===== */
.brandbar { background:#fff;border-bottom:1px solid rgba(0, 0, 0, .08)}
.brandbar__inner { max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:220px minmax(240px, 1fr) 220px;align-items:center;gap:16px;padding:10px 16px;}
.brandbar__left { display:flex;align-items:center;gap:12px}
.logo img { height:56px;display:block}
.search { /* display: flex
; */
	align-items: center;
	gap: 8px;
	background: #f8fafc;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
}

.search input { border:0;outline:0;background:transparent;width:100% !important;font-size:15px;padding:0;margin:0;}
.search svg { flex:0 0 auto}
.search-form-group {
	display: flex;
	padding: 0 20px;
	margin: 0px;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}
.search .input-group-btn {
	position: relative;
	font-size: 0;
	white-space: nowrap;
	width: auto;
	margin-right: -4px;
}
.actions { display:flex;justify-content:flex-end;gap:18px;align-items:center;color:var(--velvet-red-dark)}
.action { display:flex;align-items:center;gap:8px;font-weight:600;background:transparent;border:0;cursor:pointer;color:inherit;}
.action svg { width:22px;height:22px}
.hamburger { display:none;border:0;background:transparent;padding:6px}
.hamburger svg { width:26px;height:26px}
/* ===== Tier 3: Desktop Categories bar ===== */
.catbar { background:var(--velvet-red);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 rgba(0, 0, 0, .08)}
.catbar__inner { max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;gap:16px;padding:8px 16px}
.nav { overflow:auto hidden;scrollbar-width:none;-ms-overflow-style:none;flex:1}
.nav::-webkit-scrollbar { display:none}
.nav__list { display:flex;gap:8px;padding:0;margin:0;list-style:none}
.nav__btn { appearance:none;border:0;background:transparent;color:#fff;padding:12px 14px;border-radius:10px;font-weight:700;white-space:nowrap;cursor:pointer}
.nav__btn:focus-visible { outline:2px solid var(--gold);outline-offset:2px}
.nav__btn[aria-expanded="true"] { background:var(--velvet-red-dark)}

/* Even spacing across full width on desktop */
@media (min-width:1000px){
  .nav { overflow:visible; }
  .nav__list{
    display:grid; grid-auto-flow:column; grid-auto-columns:1fr;
    gap:8px; width:100%;
  }
  .nav__btn{ width:100%; text-align:center; }
}

/* Make anchor-style top-level items look/behave like buttons */
.nav__link{
  display:inline-block;
  padding:12px 14px;
  border-radius:10px;
  font-weight:700;
  white-space:nowrap;
  color:#fff;
}
.nav__link:focus-visible{ outline:2px solid var(--gold); outline-offset:2px; }
.nav__link:hover{ background:var(--velvet-red-dark); color:#ffffff; text-decoration:none; }

/* Mega panel shadow + open animation */
.mega{
  /* existing styles… */
  box-shadow: none;
  transform: translateY(-4px);
  opacity: 0;
  transition: box-shadow .18s ease, opacity .18s ease, transform .18s ease;
  z-index: 60; /* ensure it floats above page content */
}

.mega[aria-hidden="false"]{
  box-shadow:
    0 18px 40px rgba(0,0,0,.14),
    0 4px 12px rgba(0,0,0,.10);
  transform: translateY(0);
  opacity: 1;
}

/* Optional: a faint inner shadow at the top edge for depth */
.mega[aria-hidden="false"]::before{
  content:"";
  position:absolute; left:0; right:0; top:0; height:10px;
  pointer-events:none;
  box-shadow: inset 0 8px 8px -8px rgba(0,0,0,.25);
}

/* Promo links: stack with space */
.mega__promo .mega__links a {
	display: block;
	margin: 6px 0;
}

/* ===== Mega panel (desktop click-to-open) ===== */
.mega { position:relative;background:var(--panel);border-top:1px solid rgba(0,0,0,.08);display:none; }
.mega[aria-hidden="false"] { display:block; }
.mega__inner { max-width:var(--maxw);margin:0 auto;padding:18px 16px 24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 320px;gap:28px; }

/* Grid (3-level) headings always red */
.mega__col h4 { margin:0 0 8px; color:var(--velvet-red)!important; letter-spacing:.02em; font-size:13px; text-transform:uppercase; }
.mega__col h4 a {   padding:10px 0;
  border-bottom:1px solid #eee;
  color:var(--velvet-red) !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.02em;
  font-size:13px;}

/* Default links inside panel */
.mega__col a {
	display: block;
	padding: 6px 0 6px 16px;
	color: #344054;
	border: 0;
	text-transform: none;
	font-weight: 600;
}
.mega__col a:hover { color:var(--velvet-red); }
.mega a:visited { color:inherit; }          /* keep visited from turning purple */

.mega__promo .card {
  border-radius: 12px;
  overflow: hidden;
  background: #f6f6f6;
}
.mega__promo .card img {
  display: block;
  max-width: 100%;
  height: auto;
}
.mega__promo a:visited {color:#337ab7;}

/* Make link-only rows look like .mmenu__btn buttons */
.mmenu__btn.mmenu__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 14px 16px;
	font-weight: 800;
	color:#5f0b15;
	text-decoration: none;

}

.mmenu__list a {
	text-decoration: none;
	padding: 0 16px;
	color: #811f30;
}



.mega__promo { background:#fafafa;border-radius:14px;padding:12px;border:1px solid #eee; }
.mega__promo .card { aspect-ratio:16/9;background:#e9e3e3;border-radius:12px;display:grid;place-items:center;margin-bottom:10px; }
.mega__close { position:absolute;right:14px;top:10px;border:0;background:transparent;color:#6b7280;font-size:14px;cursor:pointer; }
.mega__close:hover { color:#111; }

.mega__footer { margin-top: 1rem; padding-top: .75rem; border-top: 1px solid #eee; }
.vc-btn.mega__shopall { display:inline-block; padding:1.4rem 1rem; border:1px solid currentColor; border-radius:.5rem; font-weight:600; color:#ffff; margin-top:15px;}
.vc-btn.mega__shopall:hover {color:#ffffff;}
.vc-btn.mega__shopall:visited {color:#ffffff;}

/* Top-level nav items with subcategories (arrow indicator) */
.nav__btn.has-sub {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.nav__btn.has-sub:hover
{
	    background: var(--velvet-red-dark);
    color: #ffffff;
    text-decoration: none;
}

/* Arrow itself */
.nav__btn .chev {
  font-size: 10px;
  line-height: 1;
  opacity: 0.8;
  transition: transform .2s ease, opacity .2s ease;
}

/* Rotate when panel is open */
.nav__btn[aria-expanded="true"] .chev {
  transform: rotate(180deg);
  opacity: 1;
}

/* Restore font size & weight after adding arrow */
.nav__btn,
.nav__btn .label {
  font-size: 15px;      /* same as before */
  font-weight: 700;     /* bold like original */
  line-height: 1;       /* align text and arrow */
}

/* Keep arrow small and centered */
.nav__btn .chev {
  font-size: 11px;
  margin-top: 1px;
  opacity: 0.8;
  transition: transform .2s ease, opacity .2s ease;
}

/* Rotate arrow on open */
.nav__btn[aria-expanded="true"] .chev {
  transform: rotate(180deg);
  opacity: 1;
}

/* === Fix top-level vertical alignment === */
.nav__btn {
  display: inline-flex;
  align-items: center;      /* centers text + arrow vertically */
  justify-content: center;
  gap: 6px;
  vertical-align: middle;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  padding: 12px 14px;       /* keep consistent height */
}

/* ensure items without arrow (Custom, Specials, etc.) align the same */
.nav__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 14px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
}

/* arrow tweaks */
.nav__btn .chev {
  font-size: 10px;
  line-height: 1;
  margin-top: 0;
  transform: translateY(1px);   /* fine-tune baseline alignment */
  opacity: 0.8;
  transition: transform .2s ease, opacity .2s ease;
}
.nav__btn[aria-expanded="true"] .chev {
  transform: rotate(180deg) translateY(-1px);
  opacity: 1;
}




/* =========================
   LIST LAYOUT (2-level or mostly 2-level)
   ========================= */
/* Switch to single column */
.mega[data-layout="list"] .mega__inner { grid-template-columns:1fr; }
/* We don't use h4 in list mode */
.mega[data-layout="list"] .mega__col h4 { display:none; }

/* Level-2 items WITHOUT children → red, uppercase (divider lines) */
.mega[data-layout="list"] .mega__col > a {
  padding:10px 0;
  border-bottom:1px solid #eee;
  color:var(--velvet-red) !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.02em;
  font-size:13px;
}
.mega[data-layout="list"] .mega__col > a:last-child { border-bottom:0; }
.mega[data-layout="list"] .mega__col > a:hover { color:var(--velvet-red-dark) !important; }

/* Level-2 WITH children → show a red section heading + indented Level-3 */
.mega[data-layout="list"] .section { margin:8px 0 14px; }
.mega[data-layout="list"] .section h4 {
  padding:10px 0;
  border-bottom:1px solid #eee;
  color:var(--velvet-red) !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.02em;
  font-size:13px;
}
.mega[data-layout="list"] .section h4 a { color:inherit !important; }

.mega[data-layout="list"] .section .sub a {
  display:block; padding:6px 0 6px 16px;
  color:#344054; border:0; text-transform:none; font-weight:600;
}
.mega[data-layout="list"] .section .sub a:hover { color:var(--velvet-red); }


/* ========================= */
/* MOBILE OPTIMIZATIONS      */
/* ========================= */
/* Hide left utility links on mobile */
@media (max-width:900px)  {
	.catbar {display:none;}
  .utility__inner>div:first-child { display:none}
	.vc-hero {
		max-height: 400px; overflow:hidden;
	}
}
/* Hamburger left, hide desktop search + desktop cat list on mobile */
@media (max-width:900px)  {
  .logo img { height:44px}
  .hamburger { display:inline-flex}
  .search { display:none}
  .catbar .nav__list { display:none}
}
/* ===== Mobile drawers ===== */
.overlay { position:fixed;inset:0;z-index:100;display:none}
.overlay[aria-hidden="false"] { display:block}
.overlay__backdrop { position:absolute;inset:0;background:rgba(0, 0, 0, .4)}
/* Mobile Search */
.msearch__panel { position:absolute;left:0;right:0;top:0;background:#fff;padding:12px;box-shadow:0 3px 12px rgba(0, 0, 0, .1)}
.msearch__close { position:absolute;right:10px;top:10px;background:transparent;border:0;font-size:18px}
.msearch__form { display:flex;gap:8px;padding:28px 6px 8px}
.msearch__form input { flex:1;border:1px solid #e5e7eb;border-radius:999px;padding:10px 14px}
.msearch__go { border:1px solid #e5e7eb;border-radius:999px;padding:10px 14px;background:#f8fafc}
/* ===== Mobile Menu (multilevel) ===== */
.mmenu__panel { position:absolute;top:0;bottom:0;left:0;width:86%;max-width:380px;background:#fff;color:var(--ink);box-shadow:2px 0 16px rgba(0, 0, 0, .2);display:flex;flex-direction:column}
.mmenu__hd { display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid #eee;background:var(--velvet-red);color:#fff}
.mmenu__title { font-weight:800}
.mmenu__list { list-style:none;margin:0;padding:0}
.mmenu__item { border-bottom:1px solid #f3f4f6}
.mmenu__btn { appearance:none;width:100%;text-align:left;border:0;background:#fff;padding:14px 16px;font-weight:800;color:var(--velvet-red-dark);display:flex;justify-content:space-between;align-items:center}
.mmenu__btn .chev { transition:transform .2s ease}
.mmenu__btn[aria-expanded="true"] .chev { transform:rotate(180deg)}
.mmenu__sub { list-style:none;margin:0;padding:0;background:#fafafa}
.mmenu__sub[hidden] { display:none}
.mmenu__label { padding:10px 16px;background:#fafafa;color:#7a1120;font-weight:700;font-size:14px}
.mmenu__btn2 { appearance:none;width:100%;text-align:left;border:0;background:#fafafa;padding:10px 16px;color:#344054;font-weight:700;display:flex;justify-content:space-between;align-items:center}
.mmenu__btn2 .chev { font-size:12px;color:#7a1120;transition:transform .2s ease}
.mmenu__btn2[aria-expanded="true"] .chev { transform:rotate(180deg)}
.mmenu__sub3 { list-style:none;margin:0;padding:0 0 10px 18px;background:#fff}
.mmenu__sub3[hidden] { display:none}
.mmenu__sub3 li a { display:block;padding:8px 12px;border-bottom:1px solid #f1f1f1;color:#344054}
.mmenu__sub3 li a:hover { color:var(--velvet-red)}
/* ===== Variants ===== */
/* variant-c (menu only) hides utility & brandbar, keeps catbar + mega */
body.variant-c .utility, body.variant-c .brandbar { display:none}
/* variant-b is same structure as A; callout retained for clarity */
/* Responsive tweaks */
/* Fix brandbar layout on mobile */
@media (max-width:900px){
  .brandbar__inner{
    /* hamburger | flexible logo area | actions sized to content */
    grid-template-columns: 40px 1fr auto;
    gap: 10px;
    padding: 8px 12px;
  }

  .actions{
    justify-self: end;   /* pin to right edge */
    min-width: 0;        /* prevent overflow */
    gap: 12px;
  }

  /* Optional but recommended for very small phones */
  .actions .action span { display: none; }   /* hide text labels */
  .actions .fa-caret-down { display: none; }
  .logo img { height:44px; }
  .brandbar { overflow-x: clip; } /* stops horizontal scroll */
  .mega__inner { grid-template-columns:1fr 1fr; }
  .mega__promo { grid-column:1/-1; }
}

@media (max-width:700px)  {
  .entity-page-product.vc-item.col-xs-6.col-sm-4 { height:280px !important;}
}
/* Scoped so we don't fight the legacy/OOB CSS */
.vc-home { font-family:inherit;color:#1f2328;background:#fff;}
.vc-home a { text-decoration:none;}
.vc-btn { display:inline-block;padding:12px 20px;border-radius:6px;font-weight:700;background:#7d0f1c;color:#fff;border:1px solid #5f0b15;}
.vc-home a.vc-btn { margin-right:15px;}
.vc-btn:hover, .vc-btn:focus { background:#5f0b15;color:#fff;}
.vc-btn.secondary { background:#5f0b15;}
/* HERO */
.vc-hero { position:relative;background:#120709;color:#fff;}
.vc-hero__bg { background:url('/skins/default/images/hero-placeholder.jpg') center/cover no-repeat;
/* swap to your seasonal/marketing image */
min-height:660px;}
.vc-hero__inner { max-width:1200px;margin:0 auto;padding:48px 16px;}
.vc-hero h1 { font-size:42px;line-height:1.15;margin:0 0 10px;border:none;}
.vc-hero p { font-size:18px;max-width:52ch;margin:0 0 20px;color:#f6e9ea;}
@media(max-width:768px)  {
  .vc-hero h1 { font-size:32px;}
}
/* FLAVORS STRIP */
.vc-flavors { padding:36px 0;}
.vc-flavors h2 { text-align:center;font-size:26px;margin:0 0 20px;color:#7d0f1c;}
.vc-flavors__grid { display:flex;flex-wrap:wrap;justify-content:center;gap:28px;padding:8px 0;}
.vc-flavor { width:155px;text-align:center;}
.vc-flavor__img { width:155px;height:155px;border-radius:50%;background-size:250% !important;background:#eee center/cover no-repeat;
/* replace these with real image URLs per flavor */
background-image:url('/skins/default/images/flavors/placeholder-cheese.jpg');box-shadow:0 0 0 2px rgba(0, 0, 0, .08) inset;margin:0 auto 10px;}
.vc-flavor__name { font-weight:800;letter-spacing:.02em;color:#0f255d;}
.vc-flavor__img { transition:transform 0.6s ease-in-out;transform-origin:center;}
/* Rotate on hover */
.vc-flavor__img:hover { transform:rotate(360deg);}
/* SEASONAL + RETAIL CALLOUTS */
.vc-promos { padding:10px 0 40px;}
.vc-card { display:block;border:1px solid #eee;border-radius:12px;overflow:hidden;background:#fff;transition:box-shadow .15s ease, transform .15s ease;}
.vc-card:hover { box-shadow:0 10px 24px rgba(0, 0, 0, .08);transform:translateY(-2px);}
.vc-card__img { aspect-ratio:16/9;background:#f3f4f6 center/cover no-repeat;}
.vc-card__body { padding:16px;}
.vc-card__title { margin:0 0 6px;font-weight:800;color:#7d0f1c;}
.vc-card__text { margin:0 0 10px;color:#667085;}
/* FEATURED COLLECTION GRID */
.vc-featured { padding:36px 0;background:#fafafa;border-top:1px solid #eee;border-bottom:1px solid #eee;}
.vc-featured h2 { text-align:center;font-size:26px;margin:0 0 18px;color:#7d0f1c;border:none;}
.vc-prod { border:1px solid #eee;border-radius:10px;background:#fff;overflow:hidden;height:100%;display:flex;flex-direction:column;transition:box-shadow .15s ease;}
.vc-prod:hover { box-shadow:0 10px 24px rgba(0, 0, 0, .08);}
.vc-prod__img { background:#f3f4f6 center/cover no-repeat;aspect-ratio:1/1;}
.vc-prod__body { padding:12px 14px;flex:1;}
.vc-prod__name { margin:0 0 6px;display:block;color:#7d0f1c;}
.vc-prod__price { color:#000;font-weight:normal;}
.vc-prod__cta { padding:12px 14px;}
/* QUOTE / TESTIMONIAL */
.vc-quote { padding:44px 0;text-align:center;background:#fff;}
.vc-quote blockquote { font-size:22px;line-height:1.45;font-style:italic;margin:0 auto 8px;max-width:900px;}
.vc-quote cite { display:block;color:#667085;}
/* ABOUT */
.vc-about { padding:44px 0;}
.vc-about h2 { font-size:26px;color:#7d0f1c;margin:0 0 12px;}
.vc-about p { color:#475467;font-size:16px;}
/* FOOTER — light section to sit above your existing site footer or replace it */
.vc-footer { padding:28px 0;background:#7d0f1c;color:#fff;}
.vc-footer a { color:#ffd66b;}
.vc-footer a.vc-btn.secondary { margin-right:15px;}
.vc-footer .text-right-sm { text-align:left;}
  .social{
    display:inline-flex; align-items:center; justify-content:center;
    width:38px; height:38px; border-radius:999px;
    color:#fff; border:1px solid rgba(255,255,255,.25);
    transition:transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
  }
  .social svg{ width:16px; height:16px; }
  .social:hover{ transform:translateY(-1px); background:#fff; color:#1f2328; border-color:#fff; }
  .social--on-dark{ /* footer sits on dark bg */ }
  .social-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.25);
    color:#fff;
    transition:all 0.2s ease;
    font-size:14px;
  }
  .social-icon:hover {
    background:#fff;
    color:#1f2328;
    border-color:#fff;
    transform:translateY(-2px);
  }
  @media (max-width:768px){
    .social-icon{ width:28px; height:28px; font-size:13px; }
  }
@media (max-width:768px)  {
  .vc-footer .text-right-sm { text-align:right;}
}
/* ===== Shared Buttons/Cards (from home) ===== */
.vc-btn { display:inline-block;padding:12px 20px;border-radius:6px;font-weight:700;background:#7d0f1c;color:#fff;border:1px solid #5f0b15;}
.vc-btn:hover, .vc-btn:focus { background:#5f0b15;color:#fff;}
.vc-btn.secondary { background:#5f0b15;}
.vc-card { display:block;border:1px solid #eee;border-radius:12px;overflow:hidden;background:#fff;transition:box-shadow .15s ease, transform .15s ease;}
.vc-card:hover { box-shadow:0 10px 24px rgba(0, 0, 0, .08);transform:translateY(-2px);}
.vc-prod { border:1px solid #eee;border-radius:10px;background:#fff;overflow:hidden;height:100%;display:flex;flex-direction:column;transition:box-shadow .15s ease;}
.vc-prod:hover { box-shadow:0 10px 24px rgba(0, 0, 0, .08);}
.vc-prod__img { background:#f3f4f6 center/cover no-repeat;aspect-ratio:1/1;}
.vc-prod__body { padding:12px 14px;flex:1;}
.vc-prod__body .variant-price span { display:none;}
.vc-prod__name { font-weight:700;margin:0 0 6px;text-align:left;}
.vc-prod__name a { background:none;color:inherit;}
.vc-prod__price { color:#000;font-weight:normal;text-align:left;}
.vc-prod__price .price-wrap {font-weight:normal;}
.vc-prod__meta { color:#667085;font-size:13px;}
.vc-prod__cta { padding:12px 14px;}
.vc-badge { display:inline-block;background:#ffd66b;color:#1f2328;border:1px solid #e1b84f;border-radius:999px;font-size:12px;line-height:1;padding:6px 10px;font-weight:800;}
/* ===== Collection Header ===== */
.vc-collection-hero { background:#120709;color:#fff;}
.vc-collection-hero__bg { background:url('/skins/skin1/images/ABP_5123.jpg') center/cover no-repeat; position:relative; background-position:top;/*min-height:80px;*/}
.vc-collection-hero__bg::before {
	 content: '';
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5); /* 0.5 = 50% opacity */
}
.vc-collection-hero__inner { max-width:var(--maxw);margin:0 auto;padding:10px 16px;}
.vc-breadcrumbs { font-size:13px;color:#f6e9ea;margin-bottom:8px;}
.vc-breadcrumbs a { color:#ffd66b;}
.vc-collection-hero h1 { margin:0 0 6px;font-size:32px;line-height:1.2;border:none;}
.vc-collection-hero p { margin:0;color:#f6e9ea;max-width:70ch;}
.remove-link{color:#7d0f1c}
/* ===== Layout: Sidebar + Grid ===== */
#guidedNavigationSearchGo {
	padding: 6px 17px 7px 17px !important;
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
}
.youveSelected .vc-chip {white-space:nowrap;}
.youveSelected .guidedSelectionTitle {float:left; margin-bottom:10px;}
.youveSelected .removeAllWrap {margin-top:15px;}
.vc-collection {
	padding: 22px 0 40px;
	background: #fff;
}
.vc-collection__inner { max-width:var(--maxw);margin:0 auto;padding:0 16px;}
.vc-toolbar { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 16px;border-bottom:1px solid #eee;}
.vc-toolbar__left { display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.vc-toolbar__right { display:flex;align-items:center;gap:10px;flex-wrap:wrap;}

.vc-toolbar__left h1 {border:none !important; margin-top:0;}

.vc-viewtoggle .btn { border:1px solid #e5e7eb;background:#f8fafc;padding:6px 10px;border-radius:6px}
.vc-toolbar__right select { border:1px solid #e5e7eb;background:#f8fafc;border-radius:6px !important;padding:8px 10px;margin:0;margin-top:5px;}
.vc-filter-btn { display:none}
.vc-count { color:#667085}
@media(max-width:991px)  {
  .vc-filter-btn { display:inline-block}
}
.vc-sidebar { position:sticky;top:70px;}
.vc-facet { border:1px solid #eee;border-radius:12px;margin-bottom:14px;background:#fff;}
.vc-facet.c-172 {display:none;}
.vc-facet__hd { padding:12px 14px;border-bottom:1px solid #eee;font-weight:normal;color:#160d41;}
.vc-facet__body { padding:10px 14px;}
.vc-facet__body label, .vc-facet__body .navSection { display:block;margin:6px 0;cursor:pointer}
.vc-facet__body .navSection a { color:#333;}
.vc-chipbar { display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 0}
.vc-chip { background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:6px 10px;font-size:12px}
.vc-chip button { margin-left:6px;border:0;background:transparent;color:#6b7280}
/* Off-canvas filters for mobile */
.vc-offcanvas { position:fixed;inset:0;z-index:1050;background:rgba(0, 0, 0, .35);display:none;}
.vc-offcanvas[aria-hidden="false"] { display:block;}
.vc-offcanvas__panel { position:absolute;left:0;top:0;bottom:0;width:85%;max-width:360px;background:#fff;padding:16px;overflow:auto;box-shadow:2px 0 24px rgba(0, 0, 0, .15);}
.vc-offcanvas__close { position:absolute;right:10px;top:10px;border:0;background:transparent;font-size:22px}
/* List view */
.vc-list .vc-prod { flex-direction:row}
.vc-list .vc-prod__img { flex:0 0 180px;aspect-ratio:auto;height:180px;width:180px}
.vc-list .vc-prod__body { flex:1}
.vc-list .vc-prod__cta { align-self:center}
/* ===== PDP layout ===== */
.vc-pdp { max-width:var(--maxw);margin:0 auto;padding:14px 16px 40px;}
.vc-breadcrumbs { font-size:13px;color:#667085;margin:8px 0 14px;}
.vc-breadcrumbs a { color:#7d0f1c;}
.vc-title { margin:0 0 8px;font-size:30px;line-height:1.2;border:none;}
.vc-rating { display:flex;align-items:center;gap:8px;color:#667085;margin-bottom:8px;}
.vc-price, .vc-price .variant-price { font-size:22px;font-weight:800;color:#7d0f1c;margin:6px 0 12px;}
.vc-price .variant-price span { display:none;}
.vc-pdp .add-to-cart-quantity label { display:block;}
/* Gallery */
.vc-gallery { position:relative;}
.vc-heroimg { width:100%;border:1px solid #eee;border-radius:12px;aspect-ratio:1/1;background:#f3f4f6 center/cover no-repeat;}
.vc-thumbs { display:flex;gap:10px;margin-top:10px;overflow:auto hidden;padding-bottom:4px;}
.vc-thumb { width:72px;height:72px;border:2px solid transparent;border-radius:10px;background:#eee center/cover no-repeat;cursor:pointer;flex:0 0 auto;}
.vc-thumb[aria-selected="true"] { border-color:#7d0f1c;}
/* Buy box */
.vc-buy { border:1px solid #eee;border-radius:14px;padding:16px;background:#fff;position:sticky;top:84px;}
.vc-opt { margin-bottom:10px;}
.vc-opt label, .vc-opt .gv-label { display:block;font-weight:800;color:#7d0f1c;margin:0 0 6px;display:inline-block;}
.vc-opt span.circle { display:inline-block;}
.vc-opt .form-control { border:1px solid #ccc;border-radius:4px !important;}
.btn.add-to-cart, .btn.add-to-wishlist { display:inline-block;padding:12px 20px;border-radius:6px;font-weight:700;background:#7d0f1c;color:#fff;border:1px solid #5f0b15;}
.btn.add-to-wishlist { background:none;color:#444;padding-left:10px;padding-right:10px;float:right;}
.btn.add-to-cart { max-width:175px;width:100%;}
.btn.add-to-cart:hover, .btn.add-to-cart:focus { background:#5f0b15 !important;color:#fff !important;}
.vc-opt { border-top:solid 1px #ddd;padding-top:12px;}
.vc-opt .variant-info-wrap { border-top:none;margin-top:0px;padding-top:0px;}
.vc-opt.form-group.text-option-group.gv-cart-recipient, .vc-opt .form-group.text-option-group { margin-left:25px;}
.vc-opt #product-options-wrap { display:block;padding-left:25px;}
.vc-opt #variantSelector { width:100%;}
.vc-opt .form-group.add-to-cart-group { border-top:1px solid #ddd;margin-top:20px;padding-top:20px;padding-left:24px;}
.vc-opt span.circle { display:inline-block;color:#7d0f1c;background:no-repeat;width:auto;height:auto;border:none;border-radius:0;font-size:14px !important;font-weight:800;margin-left:-21px;}
.vc-opt span.circle:after { content:'.';}
.vc-opt .gv-cart-recipient-list { width:100%;float:none;}
.vc-opt .btn-group .btn { border:1px solid #e5e7eb;background:#f8fafc;}
.vc-qty { display:flex;align-items:center;gap:8px;margin:10px 0 14px;}
.vc-qty input { width:70px;text-align:center;border:1px solid #e5e7eb;border-radius:6px;padding:8px;}
.vc-eta .stock-hint { background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px;margin:10px 0;font-weight:bold;color:#1f2328;}
.vc-trust { display:flex;gap:12px;flex-wrap:wrap;margin-top:10px;}
.vc-trust .chip { background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;padding:6px 10px;font-size:12px;}
/* Mobile sticky bar */
.vc-stickybar { position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid #eee;padding:8px 12px;display:none;z-index:60;}
.vc-stickybar__inner { max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;gap:10px;}
.vc-stickybar .price { font-weight:800;color:#7d0f1c;margin-right:auto;}
@media(max-width:991px)  {
  .vc-buy { position:static;top:auto}
  .vc-stickybar { display:block;}
}
/* Accordions */
.vc-acc { margin-top:18px;border:1px solid #eee;border-radius:12px;overflow:hidden;}
.vc-acc .panel { border:0;border-bottom:1px solid #eee;border-radius:0;margin:0;}
.vc-acc .panel:last-child { border-bottom:0;}
.vc-acc .panel-heading { background:#fafafa;padding:12px 14px;}
.vc-acc .panel-title a { display:block;color:#1f2328;font-weight:800;}
.vc-acc .panel-body { padding:12px 14px;color:#475467;}
/* Related */
.vc-related { padding:28px 0;border-top:1px solid #eee;margin-top:24px;}
.vc-related h3 { margin:0 0 16px;color:#7d0f1c;font-size:22px;font-weight:800;border:none;}
/* Footer blocks */
.site-footer { background:#1f2328;color:#fff;padding:32px 0 0;}
.site-footer a { color:#ffd66b;}
.site-footer__hd { margin:0 0 8px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;}
.site-footer__list { list-style:none;padding:0;margin:0;}
.site-footer__list li { margin:6px 0;}
.site-footer__text { margin:0;color:#e5e7eb;}
.site-subfooter { background:#171a1f;color:#cbd5e1;padding:12px 0;margin-top:20px;font-size:13px;}
/*gv-custom*/
#maincontent .breadcrumb {
	background-color: #ffffff !important;
	padding-top: 8px !important;
}
.breadcrumb a { color:#811f30 !important;}
.entity-page-product.vc-item.col-xs-6.col-sm-4 { height:350px;}
.entity-page-product.vc-item { margin-bottom:20px;}
.vc-prod__img .grid-item-image { border:none !important;display:block;width:100%;}
.vc-toolbar__right .productcontrollabel, .vc-toolbar__right .paging.col-md-6 { display:none;}
.vc-toolbar__right .col-md-6 { width:100%;}
.vc-paging .sortByAndNumberPerPage { display:none;}
.vc-paging .paging.col-md-6 { width:100%;text-align:center;}
.vc-paging span.viewingPageHeading.productcontrollabel { display:none;}
.vc-toolbar__right select#PageSizeTop { width:60px;}
@media (min-width:767px)  {
  .drop-search-results { position:absolute;top:44px;}
}
.btn-default.search-go { border:none;box-shadow:none;top:0;padding:0;background-color:#f8fafc;}
	.btn-default.search-go:hover,
	.btn-default.search-go:focus,
	.btn-default.search-go:active {
		background-color: transparent !important;
		border-color: transparent !important;
		outline: none !important;
		box-shadow: none !important;
	}

@media (max-width:767px)  {
  .product-page .col-md-7, .product-page .col-md-5 { padding:0;margin-bottom:15px;}
  .vc-opt .form-group.add-to-cart-group { padding-left:0;}
  .btn.add-to-cart { max-width:154px;}
}
/* Make each grid cell equal height */
#products.vc-grid .vc-item { display:flex;}
#products.vc-grid .vc-prod { display:flex;flex-direction:column;width:100%;}
/* Consistent image area (square) */
#products.vc-grid .vc-prod__img { aspect-ratio:1 / 1;width:100%;overflow:hidden;display:block;}
#products.vc-grid .vc-prod__img a, #products.vc-grid .vc-prod__img img { display:block;width:100%;height:100%;object-fit:contain;
}
/* Stack body content and push CTA to bottom */
#products.vc-grid .vc-prod__body { display:flex;flex-direction:column;gap:.25rem;flex:1;}
/* Clamp long names so card heights stay consistent */
#products.vc-grid .vc-prod__name { min-height:3em;
display: -webkit-box;  -webkit-line-clamp: 2;
-webkit-box-orient:vertical;overflow:hidden;}
/* Optional: reserve a little height for price/meta to stabilize rows */
#products.vc-grid .vc-prod__meta { min-height:0;}
#products.vc-grid .vc-prod__price { min-height:1.5rem;} 
#products.vc-grid .vc-prod__cta { margin-top:auto;} 
.related-products .related-item .grid-item-inner, .related-products .related-item .vc-prod { display:flex;flex-direction:column;height:100%;}
 
.related-products .related-item .vc-prod__img, .related-products .related-item .grid-item-image-wrap { aspect-ratio:1 / 1;
 
width:100%;overflow:hidden;background:#fff;}
.related-products .related-item .grid-item-image { width:100%;height:100%;object-fit:contain; 
display:block;} 
.related-products .related-item .vc-prod__body, .related-products .related-item .related-item-name-wrap { display:flex;flex-direction:column;}
.related-products .related-item .vc-prod__name, .related-products .related-item .related-item-name-wrap a { display:-webkit-box;-webkit-line-clamp:2;
 -webkit-box-orient: vertical;   overflow: hidden;   min-height: 2.8em; 
line-height:1.4;}
/* optional: consistent spacing below image and name */
.related-products .related-item .vc-prod__body { gap:.25rem;}

/*CONTACT PAGE*/

  .vc-contact__header h1{ margin:0 0 6px; font-weight:800; color:var(--velvet-red);}
  .vc-contact__sub{ margin:0 0 12px; color:#475467;}

  .vc-contact__form .form-group{ margin-bottom:14px; }
  .vc-contact__form .control-label{ font-weight:700; color:#1f2328; margin-bottom:6px; display:block; }
  .vc-contact__form .form-control{
    border:1px solid #e5e7eb; border-radius:8px; padding:10px 12px; box-shadow:none;
  }
  .vc-contact__form .form-control:focus{
    border-color:var(--velvet-red); outline:0; box-shadow:0 0 0 3px rgba(125,15,28,.15);
  }

  .vc-contact__validation{
    background:#fff7f8; border:1px solid #f0e2e4; color:#7d0f1c; border-radius:8px;
    padding:10px 12px; margin-bottom:12px;
  }
  .field-validation-error{ color:#b42318; font-size:13px; margin-top:4px; display:block; }

  .vc-contact__captcha{ margin:14px 0; }

  .vc-contact__info { border:1px solid #eee; border-radius:12px; background:#fff; }
  .vc-contact__info h3{ margin:0 0 6px; color:var(--velvet-red); }
  .vc-contact__info p{ color:#475467; margin:0 0 10px; }
  .vc-contact__cta{ margin-top:8px; }

  .vc-link{ color:var(--velvet-red); font-weight:700; text-decoration:none; }
  .vc-link:hover{ text-decoration:underline; }




/*Universal theme*/
.btn-primary {
	display: inline-block !important;
	padding: 12px 20px !important;
	border-radius: 6px !important;
	font-weight: 700 !important;
	background: #7d0f1c !important;
	color: #fff !important;
	border: 1px solid #5f0b15 !important;
}
.btn-default {
	padding: 12px 20px !important;
	border-radius: 6px !important;
	font-weight: 700 !important; 
}
.btn.add-to-wishlist { 
	padding: 12px 10px !important;
}
.shoppingcart-form .btn-nav {
	display: flex;
	height: 50px;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
.checkout-page input.form-control {
	padding: 22px 10px;
}
#gv-update-btn { 
	clear: both;
}
@media (max-width:1200px) {
	.btn.add-to-wishlist {
		float: none;
		display: inline !important;
		padding: 12px 10px !important;
	}
}

/* === Normalize vertical centering across all top-level items === */
.nav__list {                 /* grid container */
  align-items: center;       /* center grid items on cross-axis */
}

.nav__list > li {            /* each grid item */
  display: flex;
  align-items: center;       /* center content inside each li */
}

/* Buttons and links should behave the same box-wise */
.nav__btn,
.nav__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  padding: 12px 14px;        /* same vertical box */
  font-size: 15px;
  font-weight: 700;
}

/* Arrow fine-tune so it doesn't pull baseline down */
.nav__btn .chev {
  font-size: 11px;
  line-height: 1;
  transform: translateY(1px);
}
.nav__btn[aria-expanded="true"] .chev {
  transform: rotate(180deg) translateY(-1px);
}
