/* ═══════════════════════════════════════════════════════════════
   SLNS SAREES — COUTURE EDITION
   High-fashion editorial system.
   Signatures: brand preloader · custom cursor · letter-stagger
   hero · clip-path image reveals · staggered editorial grid ·
   vertical section labels · giant footer wordmark.
   Palette: Espresso · Alabaster · Molten Gold · Lacquer Red
   ═══════════════════════════════════════════════════════════════ */

:root {
  --c-black:   #0B0908;
  --c-espresso:#161210;
  --c-lacquer: #7A1E2B;
  --c-lacquer2:#9C2B3B;
  --c-gold:    #B08D57;
  --c-gold-hi: #D9BC8C;
  --c-gold-ln: rgba(176,141,87,0.4);
  --c-bone:    #F6F3EE;
  --c-alab:    #EFEAE2;
  --c-vellum:  #E4DCCE;
  --c-taupe:   #6F6A62;
  --c-ash:     #A39D93;

  --f-d: 'Cormorant Garamond', Georgia, serif;
  --f-b: 'Outfit', system-ui, sans-serif;

  --e: cubic-bezier(0.19, 1, 0.22, 1);
  --e2: cubic-bezier(0.65, 0, 0.35, 1);

  --motif: url("data:image/svg+xml,%3Csvg width='90' height='90' viewBox='0 0 90 90' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M45 12c4.5 11 12 18.5 23 23-11 4.5-18.5 12-23 23-4.5-11-12-18.5-23-23 11-4.5 18.5-12 23-23z' fill='%23B08D57' fill-opacity='0.05'/%3E%3C/svg%3E");
  --grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='0.8' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.65 0 0 0 0 0.55 0 0 0 0 0.4 0 0 0 0.03 0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ═ FOUNDATION ═ */
.luxury-theme {
  background: var(--c-bone);
  color: var(--c-black);
  font-family: var(--f-b);
  font-weight: 400;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
.luxury-theme *, .luxury-theme *::before, .luxury-theme *::after { box-sizing: border-box; }

/* ── GLOBAL LUXURY FONT SYSTEM OVERRIDES ── */
.luxury-theme,
.luxury-theme body,
.luxury-theme html,
.luxury-theme p,
.luxury-theme span,
.luxury-theme a,
.luxury-theme button,
.luxury-theme input,
.luxury-theme select,
.luxury-theme textarea,
.luxury-theme label,
.luxury-theme td,
.luxury-theme th,
.luxury-theme div {
    font-family: 'Jost', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

.luxury-theme h1, .luxury-theme h2, .luxury-theme h3, .luxury-theme h4, .luxury-theme h5, .luxury-theme h6,
.luxury-theme .h1, .luxury-theme .h2, .luxury-theme .h3, .luxury-theme .h4, .luxury-theme .h5, .luxury-theme .h6,
.luxury-theme .cxh__title, .luxury-theme .cxh__title *,
.luxury-theme .product-title, .luxury-theme .product-title a,
.luxury-theme .aside-title, .luxury-theme .footer-title,
.luxury-theme .slider-title, .luxury-theme .section-title,
.luxury-theme .navbar-brand, .luxury-theme .nav-link,
.luxury-theme .card-title,
.luxury-theme .single-product-details .text-truncate,
.luxury-theme .category-single-product-title,
.luxury-theme .breadcrumb-item,
.luxury-theme .carousel-caption h1, .luxury-theme .carousel-caption h2,
.luxury-theme .product-single-hover .product-title {
    font-family: 'Playfair Display', Georgia, serif !important;
    letter-spacing: 0.03em !important;
}

.luxury-theme h1, .luxury-theme .h1, .luxury-theme .cxh__title {
    font-weight: 500 !important;
}
.luxury-theme h2, .luxury-theme h3, .luxury-theme .h2, .luxury-theme .h3 {
    font-weight: 600 !important;
}
.luxury-theme a { color: inherit; text-decoration: none; }
.luxury-theme img { max-width: 100%; display: block; }
html { scroll-behavior: smooth; }
.luxury-theme ::selection { background: rgba(176,141,87,0.25); }
.luxury-theme ::-webkit-scrollbar { width: 3px; }
.luxury-theme ::-webkit-scrollbar-track { background: var(--c-alab); }
.luxury-theme ::-webkit-scrollbar-thumb { background: var(--c-gold); }
.luxury-theme :focus-visible { outline: 1.5px solid var(--c-gold); outline-offset: 3px; }
@media (pointer: fine) { .luxury-theme, .luxury-theme a, .luxury-theme button { cursor: none; } }

/* ═ PRELOADER — brand curtain ═ */
.cx-loader {
  position: fixed; inset: 0; z-index: 100000;
  background: var(--c-black);
  display: flex; align-items: center; justify-content: center;
  transition: clip-path 1s var(--e2) 0.2s;
  clip-path: inset(0 0 0 0);
}
.cx-loader.done { clip-path: inset(0 0 100% 0); pointer-events: none; }
.cx-loader__mark {
  font-family: var(--f-d); font-size: clamp(2.4rem, 6vw, 4.6rem);
  font-weight: 500; letter-spacing: 0.28em; color: var(--c-bone);
  display: flex; overflow: hidden;
}
.cx-loader__mark span {
  display: inline-block;
  transform: translateY(120%);
  animation: cxRise 0.9s var(--e) forwards;
}
.cx-loader__mark span:nth-child(1){animation-delay:.10s}
.cx-loader__mark span:nth-child(2){animation-delay:.18s}
.cx-loader__mark span:nth-child(3){animation-delay:.26s}
.cx-loader__mark span:nth-child(4){animation-delay:.34s}
.cx-loader__mark em { font-style: italic; color: var(--c-gold-hi); }
.cx-loader__line {
  position: absolute; bottom: 18vh; left: 50%; transform: translateX(-50%);
  width: 120px; height: 1px; background: rgba(246,243,238,0.15); overflow: hidden;
}
.cx-loader__line::after {
  content: ''; position: absolute; inset: 0;
  background: var(--c-gold);
  transform: translateX(-100%);
  animation: cxLoad 1.1s var(--e2) 0.3s forwards;
}
@keyframes cxRise { to { transform: translateY(0); } }
@keyframes cxLoad { to { transform: translateX(0); } }

/* ═ CUSTOM CURSOR ═ */
.cx-cursor, .cx-cursor-ring { position: fixed; top: 0; left: 0; pointer-events: none; z-index: 99999; }
.cx-cursor {
  width: 5px; height: 5px; border-radius: 50%;
  background: var(--c-gold);
  transform: translate(-50%, -50%);
}
.cx-cursor-ring {
  width: 34px; height: 34px; border-radius: 50%;
  border: 1px solid var(--c-gold-ln);
  transform: translate(-50%, -50%);
  transition: width 0.35s var(--e), height 0.35s var(--e), border-color 0.3s, background 0.3s;
}
.cx-cursor-ring.is-link {
  width: 62px; height: 62px;
  border-color: var(--c-gold);
  background: rgba(176,141,87,0.08);
}
@media (pointer: coarse) { .cx-cursor, .cx-cursor-ring { display: none; } }

/* ═ SCENE SYSTEM ═ */
.cxz { position: relative; padding: 130px 0; overflow: hidden; }
@media (max-width: 768px) { .cxz { padding: 72px 0; } }
.cxz--bone { background: var(--c-bone); }
.cxz--bone::before { content:''; position:absolute; inset:0; background: var(--grain); pointer-events:none; }
.cxz--alab { background: var(--c-alab); }
.cxz--alab::before { content:''; position:absolute; inset:0; background: var(--motif); pointer-events:none; }
.cxz--black {
  background:
    radial-gradient(ellipse 80% 55% at 15% 0%, rgba(176,141,87,0.09), transparent 60%),
    radial-gradient(ellipse 65% 45% at 90% 100%, rgba(122,30,43,0.18), transparent 55%),
    var(--c-black);
  color: var(--c-bone);
}
.cxz--black::before { content:''; position:absolute; inset:0; background: var(--motif); opacity:.8; pointer-events:none; }
.cxz--lacquer {
  background:
    radial-gradient(ellipse 110% 85% at 50% -25%, var(--c-lacquer2), transparent 62%),
    linear-gradient(168deg, var(--c-lacquer) 0%, #4A1019 60%, #2E090F 100%);
  color: var(--c-bone);
}
.cxz--lacquer::before { content:''; position:absolute; inset:0; background: var(--motif); pointer-events:none; }
.cxz--photo {
  background-size: cover; background-position: center 28%;
  background-attachment: fixed;
  min-height: 66vh; display: flex; align-items: center;
  color: var(--c-bone);
}
.cxz--photo::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(115deg, rgba(11,9,8,0.82) 0%, rgba(122,30,43,0.5) 55%, rgba(11,9,8,0.4) 100%);
}
@media (max-width: 900px) { .cxz--photo { background-attachment: scroll; min-height: 48vh; } }

/* Vertical section label — couture signature */
.cxz__side {
  position: absolute; top: 50%; left: 34px; z-index: 3;
  transform: translateY(-50%) rotate(180deg);
  writing-mode: vertical-rl;
  font-family: var(--f-b); font-size: 9px; font-weight: 600;
  letter-spacing: 0.5em; text-transform: uppercase;
  color: var(--c-gold);
  display: flex; align-items: center; gap: 16px;
}
.cxz__side::after { content: ''; width: 1px; height: 56px; background: var(--c-gold-ln); }
@media (max-width: 1100px) { .cxz__side { display: none; } }

/* Ghost watermark */
.cxz__ghost {
  position: absolute; top: 48%; left: 50%;
  transform: translate(-50%, -50%);
  font-family: var(--f-d); font-style: italic;
  font-size: clamp(130px, 24vw, 380px); font-weight: 500;
  letter-spacing: 0.02em; white-space: nowrap;
  pointer-events: none; user-select: none;
  color: transparent;
  -webkit-text-stroke: 1px rgba(176,141,87,0.11);
}
.cxz--black .cxz__ghost, .cxz--lacquer .cxz__ghost { -webkit-text-stroke: 1px rgba(246,243,238,0.05); }

/* Section head — asymmetric, with index numeral */
.cxz__head {
  position: relative; z-index: 2;
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 24px; flex-wrap: wrap;
  margin-bottom: 64px;
}
.cxz__idx {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-style: italic !important;
  font-size: clamp(3rem, 6vw, 5rem) !important;
  font-weight: 400 !important;
  line-height: 0.8 !important;
  color: rgba(217, 167, 74, 0.28) !important;
  margin-right: 26px !important;
}
.cxz__kick {
  display: block !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: #7A3E96 !important;
  margin-bottom: 14px !important;
}
.cxz--black .cxz__kick, .cxz--lacquer .cxz__kick {
  color: #D9BC8C !important;
}
.cxz__title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(2.1rem, 4.4vw, 3.6rem) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  letter-spacing: 0.01em !important;
  margin: 0 !important;
  color: #4E2160 !important;
}
.cxz--black .cxz__title, .cxz--lacquer .cxz__title {
  color: #F5EEF8 !important;
}
.cxz__title em, .cxz__title i {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-style: italic !important;
  color: #D9A74A !important;
  font-weight: 400 !important;
}
.cxz__sub {
  font-family: 'Jost', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 350 !important;
  color: #6F6A62 !important;
  max-width: 380px !important;
  line-height: 1.85 !important;
}
.cxz--black .cxz__sub, .cxz--lacquer .cxz__sub { color: rgba(246,243,238,0.6) !important; }

/* ═ HERO — cathedral ═ */
.cxh {
  position: relative; height: 100vh; min-height: 640px;
  overflow: hidden; background: var(--c-black);
}
.cxh__slide {
  position: relative;
  height: 100vh;
  min-height: 640px;
  display: flex;
  align-items: flex-end;
  box-sizing: border-box;
  padding-top: 180px;
}
@media (max-width: 991px) {
  .cxh__slide {
    height: auto;
    min-height: 86vh;
    padding-top: 120px;
  }
}
.cxh__media-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
}
.cxh__media-bg img {
  width: 100%; height: 100%;
  object-fit: cover; object-position: center 22%;
  animation: cxKen 16s var(--e2) infinite alternate;
}
@keyframes cxKen {
  from { transform: scale(1.02); }
  to   { transform: scale(1.14) translate(-1.8%, -2.2%); }
}
.cxh__veil {
  position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background:
    linear-gradient(to bottom, rgba(11,9,8,0.42), transparent 34%, transparent 50%, rgba(11,9,8,0.92) 100%),
    linear-gradient(100deg, rgba(11,9,8,0.55) 0%, transparent 55%);
}
.cxh__body {
  position: relative; z-index: 3;
  width: 100%; max-width: 1280px; margin: 0 auto;
  padding: 0 40px 12vh;
}
.cxh__over {
  display: inline-flex; align-items: center; gap: 16px;
  font-family: var(--f-b); font-size: 10px; font-weight: 600;
  letter-spacing: 0.44em; text-transform: uppercase;
  color: var(--c-gold-hi);
  margin-bottom: 26px;
  opacity: 0; animation: cxUp 1s var(--e) 1.35s forwards;
}
.cxh__over::before { content: ''; width: 52px; height: 1px; background: var(--c-gold-ln); }
.cxh__tag {
  font-family: var(--f-d);
  font-size: 13px; font-weight: 400; font-style: italic;
  letter-spacing: 0.05em; color: var(--c-gold-hi);
  margin-bottom: 8px;
  opacity: 0; animation: cxUp 1s var(--e) 1.2s forwards;
}
.cxh__title {
  font-family: var(--f-d);
  font-size: clamp(2.4rem, 5.8vw, 4.6rem);
  font-weight: 500; line-height: 1.1; letter-spacing: -0.01em;
  color: var(--c-bone);
  margin: 0 0 26px; max-width: 650px;
}
.cxh__title em { font-style: italic; color: var(--c-gold-hi); }
/* JS splits into .w (word masks) > .ch (letters) */
.cxh__title .w { display: inline-block; overflow: hidden; vertical-align: bottom; }
.cxh__title .ch {
  display: inline-block;
  transform: translateY(115%) rotate(4deg);
  animation: cxLetter 0.95s var(--e) forwards;
}
@keyframes cxLetter { to { transform: translateY(0) rotate(0); } }
.cxh__row {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 32px; flex-wrap: wrap;
}
.cxh__sub {
  font-size: 14.5px; font-weight: 300;
  color: rgba(246,243,238,0.62); line-height: 1.85;
  max-width: 420px;
  opacity: 0; animation: cxUp 1s var(--e) 1.55s forwards;
}
.cxh__ctas {
  display: flex; gap: 14px; flex-wrap: wrap;
  opacity: 0; animation: cxUp 1s var(--e) 1.75s forwards;
}
.cx-btn {
  position: relative; display: inline-block; overflow: hidden;
  font-family: var(--f-b); font-size: 10.5px; font-weight: 600;
  letter-spacing: 0.24em; text-transform: uppercase;
  padding: 17px 40px; border: 1px solid;
  transition: color 0.4s var(--e), border-color 0.4s;
}
.cx-btn::before {
  content: ''; position: absolute; inset: 0;
  transform: translateY(101%);
  transition: transform 0.5s var(--e);
  z-index: -1;
}
.cx-btn:hover::before { transform: translateY(0); }
.cx-btn--gold { background: var(--c-gold); border-color: var(--c-gold); color: var(--c-black); z-index: 1; }
.cx-btn--gold::before { background: var(--c-bone); }
.cx-btn--gold:hover { color: var(--c-black); text-decoration: none; }
.cx-btn--ghost { background: transparent; border-color: var(--c-gold); color: var(--c-gold); z-index: 1; }
.cx-btn--ghost::before { background: var(--c-gold); }
.cx-btn--ghost:hover { color: var(--v-plum); border-color: var(--c-gold); text-decoration: none; }
.cx-btn--black { background: var(--c-black); border-color: var(--c-black); color: var(--c-bone); z-index: 1; }
.cx-btn--black::before { background: var(--c-lacquer); }
.cx-btn--black:hover { color: #fff; text-decoration: none; }
/* Hero edge rail: stats as vertical rail on right */
.cxh__rail {
  position: absolute; right: 40px; bottom: 24vh; z-index: 4;
  display: flex; flex-direction: column; gap: 26px;
  text-align: right;
  opacity: 0; animation: cxUp 1s var(--e) 1.95s forwards;
}
.cxh__stat strong {
  display: block; font-family: var(--f-d);
  font-size: 2.1rem; font-weight: 500; line-height: 1;
  color: var(--c-gold-hi);
}
.cxh__stat span {
  font-family: var(--f-b); font-size: 8.5px; font-weight: 600;
  letter-spacing: 0.3em; text-transform: uppercase;
  color: rgba(246,243,238,0.42);
}
@media (max-width: 900px) {
  .cxh { height: 92vh; }
  .cxh__rail { position: static; flex-direction: row; gap: 28px; text-align: left; margin-top: 30px; }
  .cxh__body { padding: 0 24px 9vh; }
}
@keyframes cxUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
/* Hero dots */
.cxh .owl-dots { position: absolute; left: 40px; top: 50%; transform: translateY(-50%); z-index: 5; display: flex; flex-direction: column; gap: 10px; }
.cxh .owl-dot span { display:block!important; width:2px!important; height:26px!important; background:rgba(246,243,238,0.25)!important; border-radius:0!important; transition:all .45s!important; }
.cxh .owl-dot.active span { background: var(--c-gold)!important; height: 48px!important; }

/* ═ MARQUEE ═ */
.cxmq {
  background: var(--c-black);
  border-top: 1px solid var(--c-gold-ln);
  border-bottom: 1px solid var(--c-gold-ln);
  overflow: hidden; padding: 22px 0;
  display: flex; white-space: nowrap;
}
.cxmq__t {
  display: inline-flex; gap: 72px; align-items: center;
  animation: cxMar 30s linear infinite; padding-right: 72px;
}
@keyframes cxMar { to { transform: translateX(-50%); } }
.cxmq span {
  font-family: var(--f-d); font-style: italic;
  font-size: 1.4rem; color: rgba(246,243,238,0.5);
  display: inline-flex; align-items: center; gap: 72px;
}
.cxmq span::after { content: '✦'; font-style: normal; font-size: 0.75rem; color: var(--c-gold); }

/* ═ FILTERS — couture tabs with counts ═ */
.cxf {
  position: relative; z-index: 3;
  display: flex; justify-content: center; align-items: baseline;
  gap: 4px; flex-wrap: wrap;
  margin-bottom: 66px;
  border-bottom: 1px solid var(--c-vellum);
  padding-bottom: 0;
}
.cxz--black .cxf, .cxz--lacquer .cxf { border-bottom-color: rgba(246,243,238,0.12); }
.cxf__tab {
  position: relative;
  font-family: var(--f-b); font-size: 11px; font-weight: 500;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--c-ash);
  background: none; border: none; cursor: none;
  padding: 14px 24px 18px;
  transition: color 0.35s;
}
@media (pointer: coarse) { .cxf__tab { cursor: pointer; } }
.cxf__tab sup {
  font-family: var(--f-d); font-style: italic;
  font-size: 11px; color: var(--c-gold);
  margin-left: 5px;
}
.cxf__tab::after {
  content: '';
  position: absolute; left: 24px; right: 24px; bottom: -1px;
  height: 1px; background: var(--c-gold);
  transform: scaleX(0); transform-origin: left;
  transition: transform 0.5s var(--e);
}
.cxf__tab:hover { color: var(--c-black); }
.cxz--black .cxf__tab:hover, .cxz--black .cxf__tab.active { color: var(--c-bone); }
.cxf__tab:hover::after { transform: scaleX(0.5); }
.cxf__tab.active { color: var(--c-black); }
.cxf__tab.active::after { transform: scaleX(1); }

/* ═ EDITORIAL STAGGERED GRID ═ */
.cxg {
  position: relative; z-index: 2;
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 56px 28px;
}
/* the couture offset — 2nd & 4th columns drop */
@media (min-width: 1025px) {
  .cxg > *:nth-child(4n+2) { transform: translateY(52px); }
  .cxg > *:nth-child(4n+4) { transform: translateY(26px); }
  .cxg { padding-bottom: 60px; }
}
@media (max-width: 1024px) { .cxg { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 640px)  { .cxg { grid-template-columns: repeat(2, 1fr); gap: 34px 16px; } }
.cxg > * { transition: opacity 0.5s var(--e), transform 0.6s var(--e); }
.cxg > .cx-out { opacity: 0; transform: scale(0.9) !important; position: absolute; pointer-events: none; visibility: hidden; }

/* ═ PRODUCT CARD — atelier plate ═ */
.cxp { position: relative; display: flex; flex-direction: column; }
.cxp__frame {
  position: relative; overflow: hidden;
  aspect-ratio: 3 / 4.2; background: var(--c-vellum);
  clip-path: inset(0 0 0 0);
}
.cxp__frame img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 1.1s var(--e), filter 0.5s;
}
.cxp:hover .cxp__frame img { transform: scale(1.07); filter: brightness(0.9) saturate(1.05); }
/* clip reveal on scroll (JS adds .in) */
.cxp .cxp__frame { clip-path: inset(8% 6% 8% 6%); transition: clip-path 1.1s var(--e); }
.cxp.in .cxp__frame { clip-path: inset(0 0 0 0); }
/* gold plate number */
.cxp__no {
  position: absolute; top: 14px; right: 16px; z-index: 4;
  font-family: var(--f-d); font-style: italic;
  font-size: 1rem; color: rgba(246,243,238,0.85);
  mix-blend-mode: difference;
}
.cxp__tag {
  position: absolute; top: 0; left: 0; z-index: 4;
  background: var(--c-lacquer); color: var(--c-bone);
  font-family: var(--f-b); font-size: 9px; font-weight: 700;
  letter-spacing: 0.18em; padding: 7px 13px;
}
.cxp__veil {
  position: absolute; inset: 0; z-index: 2;
  background: linear-gradient(to top, rgba(11,9,8,0.35), transparent 40%);
  opacity: 0; transition: opacity 0.45s;
}
.cxp:hover .cxp__veil { opacity: 1; }
.cxp__act {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 4;
  display: flex;
  transform: translateY(100%);
  transition: transform 0.5s var(--e);
}
.cxp:hover .cxp__act { transform: translateY(0); }
.cxp__act a {
  flex: 1; text-align: center;
  background: var(--c-bone); color: var(--c-black);
  font-family: var(--f-b); font-size: 9.5px; font-weight: 700;
  letter-spacing: 0.2em; text-transform: uppercase;
  padding: 15px 8px;
  border-right: 1px solid var(--c-vellum);
  transition: background 0.25s, color 0.25s;
}
.cxp__act a:last-child { border-right: none; }
.cxp__act a:hover { background: var(--c-black); color: var(--c-gold-hi); text-decoration: none; }
.cxp__meta { padding: 18px 2px 0; }
.cxp__name {
  font-family: var(--f-b); font-size: 13px; font-weight: 400;
  line-height: 1.5; color: inherit;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  margin-bottom: 8px;
  transition: color 0.25s;
}
.cxp:hover .cxp__name { color: var(--c-gold); }
.cxp__rule { width: 22px; height: 1px; background: var(--c-gold-ln); margin-bottom: 8px; transition: width 0.45s var(--e); }
.cxp:hover .cxp__rule { width: 44px; background: var(--c-gold); }
.cxp__price { font-family: var(--f-d); font-size: 1.25rem; font-weight: 500; }
.cxp__was { font-family: var(--f-b); font-size: 11px; font-weight: 300; color: var(--c-ash); text-decoration: line-through; margin-left: 9px; }
.cxp__stars { display: flex; gap: 2px; margin-top: 6px; }
.cxp__stars .on { color: var(--c-gold); font-size: 10px; }
.cxp__stars .off { color: var(--c-vellum); font-size: 10px; }
.cxz--black .cxp__stars .off { color: rgba(246,243,238,0.15); }

/* stock 6V overrides — same atelier treatment */
.luxury-product-card, .flash_deal_product, .product-single-hover {
  background: none !important; border: none !important; box-shadow: none !important;
}
.flash-deals-background-image {
  overflow: hidden !important; aspect-ratio: 3/4.2 !important;
  background: var(--c-vellum) !important; position: relative !important; border-radius: 0 !important;
}
.flash-deals-background-image img, .__img-125px {
  width: 100% !important; height: 100% !important; max-width: none !important;
  object-fit: cover !important; transition: transform 1.1s var(--e) !important;
}
.luxury-product-card:hover .flash-deals-background-image img { transform: scale(1.07) !important; }
.for-discount-value {
  position: absolute !important; top: 0 !important; left: 0 !important;
  background: var(--c-lacquer) !important; color: var(--c-bone) !important;
  font-family: var(--f-b) !important; font-size: 9px !important; font-weight: 700 !important;
  letter-spacing: 0.18em !important; padding: 7px 13px !important;
  border-radius: 0 !important; z-index: 4 !important;
}
.for-discount-value-null { display: none !important; }
.flash_deal_product_details { padding: 18px 0 0 !important; }
.flash-product-title {
  font-family: var(--f-b) !important; font-size: 13px !important; font-weight: 400 !important;
  color: var(--c-black) !important; line-height: 1.5 !important;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.luxury-product-card:hover .flash-product-title { color: var(--c-gold) !important; }
.flash-product-price { font-family: var(--f-d) !important; font-size: 1.25rem !important; font-weight: 500 !important; color: var(--c-black) !important; }
.category-single-product-price { font-size: 11px !important; color: var(--c-ash) !important; text-decoration: line-through !important; }
.flash-product-review .tio-star, .flash-product-review .tio-star-half { color: var(--c-gold) !important; font-size: 10px !important; }
.flash-product-review .tio-star-outlined { color: var(--c-vellum) !important; font-size: 10px !important; }

/* ═ CATEGORY — keyhole gallery ═ */
.cxc {
  position: relative; z-index: 2;
  display: flex; gap: 24px; overflow-x: auto;
  scrollbar-width: none; scroll-snap-type: x mandatory;
  padding: 8px 0 16px;
}
.cxc::-webkit-scrollbar { display: none; }
.cxc__i { flex: 0 0 236px; scroll-snap-align: start; text-align: center; }
.cxc__key {
  position: relative; overflow: hidden;
  height: 316px;
  border-radius: 118px 118px 8px 8px;
  background: var(--c-vellum);
  outline: 1px solid var(--c-gold-ln);
  outline-offset: 6px;
  transition: outline-color 0.4s, outline-offset 0.4s;
}
.cxc__i:hover .cxc__key { outline-color: var(--c-gold); outline-offset: 10px; }
.cxc__key img {
  width: 100%; height: 100%; object-fit: cover; object-position: center top;
  transition: transform 0.9s var(--e);
}
.cxc__i:hover .cxc__key img { transform: scale(1.09); }
.cxc__key::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(11,9,8,0.4), transparent 42%);
  opacity: 0; transition: opacity 0.4s;
}
.cxc__i:hover .cxc__key::after { opacity: 1; }
.cxc__nm {
  font-family: var(--f-d); font-size: 1.25rem; font-weight: 500;
  margin-top: 20px; transition: color 0.25s;
}
.cxc__i:hover .cxc__nm { color: var(--c-gold); }

/* ═ QUOTE BAND ═ */
.cxq { position: relative; z-index: 2; text-align: center; padding: 0 24px; width: 100%; }
.cxq blockquote {
  font-family: var(--f-d); font-style: italic;
  font-size: clamp(1.7rem, 3.8vw, 3rem); font-weight: 500;
  line-height: 1.35; color: var(--c-bone);
  max-width: 800px; margin: 0 auto 24px;
}
.cxq cite {
  font-style: normal; font-family: var(--f-b);
  font-size: 10px; font-weight: 600;
  letter-spacing: 0.4em; text-transform: uppercase;
  color: var(--c-gold-hi);
}

/* ═ LEDGER ═ */
.cxl {
  position: relative; z-index: 2;
  background: rgba(246,243,238,0.03);
  border: 1px solid var(--c-gold-ln);
  padding: 48px; height: 100%;
  backdrop-filter: blur(8px);
}
.cxz--bone .cxl, .cxz--alab .cxl { background: #fff; border-color: var(--c-vellum); }
.cxl__head {
  display: flex; justify-content: space-between; align-items: baseline;
  padding-bottom: 22px; margin-bottom: 8px;
  border-bottom: 1px solid var(--c-gold-ln);
}
.cxl__title { font-family: var(--f-d); font-size: 1.85rem; font-weight: 500; }
.cxl__row {
  display: grid; grid-template-columns: 88px 1fr auto;
  gap: 20px; align-items: center;
  padding: 20px 0; border-bottom: 1px solid rgba(176,141,87,0.14);
  transition: padding-left 0.35s var(--e);
}
.cxl__row:hover { padding-left: 10px; }
.cxl__row:last-child { border-bottom: none; }
.cxl__img { width: 88px; height: 110px; object-fit: cover; }
.cxl__nm {
  font-family: var(--f-b); font-size: 13px; line-height: 1.5;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  transition: color 0.25s;
}
.cxl__row:hover .cxl__nm { color: var(--c-gold); }
.cxl__pr { font-family: var(--f-d); font-size: 1.1rem; }
.cxl__ws { font-size: 11px; font-weight: 300; color: var(--c-ash); text-decoration: line-through; margin-left: 6px; }
.cxl__idx { font-family: var(--f-d); font-style: italic; font-size: 2rem; color: var(--c-gold-ln); }

/* ═ LINK ═ */
.cx-link {
  display: inline-flex; align-items: center; gap: 12px;
  font-family: var(--f-b); font-size: 10px; font-weight: 700;
  letter-spacing: 0.26em; text-transform: uppercase;
  color: inherit; opacity: 0.65;
  transition: opacity 0.25s, gap 0.4s var(--e);
}
.cx-link::after { content: '⟶'; font-size: 15px; }
.cx-link:hover { opacity: 1; gap: 20px; color: var(--c-gold); text-decoration: none; }

/* ═ HEADER ═ */
.luxury-header .topbar { background: var(--c-black); padding: 8px 0; }
.luxury-header .topbar .container { display: flex; justify-content: space-between; align-items: center; }
.luxury-header .topbar-link { font-family: var(--f-b) !important; font-size: 10px !important; letter-spacing: 0.18em !important; color: rgba(246,243,238,0.45) !important; }
.luxury-header .topbar-link:hover { color: var(--c-gold-hi) !important; }
.luxury-header .navbar-sticky {
  background: rgba(246,243,238,0.96) !important;
  border-bottom: 1px solid var(--c-vellum);
  transition: all 0.5s var(--e) !important; box-shadow: none !important;
}
.luxury-header .navbar-sticky.scrolled {
  backdrop-filter: blur(22px) saturate(1.5); -webkit-backdrop-filter: blur(22px) saturate(1.5);
  box-shadow: 0 1px 0 var(--c-gold-ln), 0 14px 48px rgba(11,9,8,0.08) !important;
}
.luxury-header .navbar-brand img { max-height: 48px; transition: opacity 0.25s; }
.luxury-header .navbar-brand:hover img { opacity: 0.7; }
.luxury-header .appended-form-control {
  background: transparent !important; border: none !important;
  border-bottom: 1px solid var(--c-vellum) !important; border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 13px !important; font-weight: 300 !important;
  color: var(--c-black) !important; padding: 10px 4px !important; box-shadow: none !important;
}
.luxury-header .appended-form-control:focus { border-bottom-color: var(--c-gold) !important; }
.luxury-header .appended-form-control::placeholder { color: var(--c-ash) !important; font-style: italic; }
.luxury-header .search_button .input-group-text {
  background: transparent !important; border: none !important;
  border-bottom: 1px solid var(--c-vellum) !important; border-radius: 0 !important;
  color: var(--c-black) !important;
}
.luxury-header .search-card { background: #fff; border: 1px solid var(--c-vellum); border-radius: 0; box-shadow: 0 26px 72px rgba(11,9,8,0.12); }
.luxury-header .navbar-tool-icon-box { color: var(--c-black) !important; background: transparent !important; }
.luxury-header .navbar-tool-label { background: var(--c-lacquer) !important; }
.luxury-header .navbar-nav .nav-link { font-family: var(--f-b) !important; font-size: 11.5px !important; letter-spacing: 0.12em !important; text-transform: uppercase; color: var(--c-black) !important; }
.luxury-header .navbar-nav .nav-link:hover { color: var(--c-lacquer) !important; }
.luxury-header .dropdown-menu { background: #fff; border: 1px solid var(--c-vellum); border-radius: 0; box-shadow: 0 22px 60px rgba(11,9,8,0.1); }
.luxury-header .dropdown-item { font-family: var(--f-b); font-size: 12.5px; color: var(--c-taupe); padding: 9px 18px; transition: all 0.2s; }
.luxury-header .dropdown-item:hover { background: var(--c-alab); color: var(--c-black); padding-left: 25px; }
.luxury-header .megamenu-wrap { background: var(--c-bone); border-top: 1px solid var(--c-vellum); border-bottom: 1px solid var(--c-vellum); }
.luxury-header .category-menu { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; }
.luxury-header .category-menu > li > a {
  display: flex; align-items: center; padding: 13px 20px;
  font-family: var(--f-b); font-size: 10.5px; font-weight: 600;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--c-taupe); white-space: nowrap;
  border-bottom: 1px solid transparent;
  transition: color 0.25s, border-color 0.25s;
}
.luxury-header .category-menu > li > a img { display: none; }
.luxury-header .category-menu > li:hover > a { color: var(--c-black); border-bottom-color: var(--c-gold); }
.luxury-header .mega_menu {
  background: #fff; border: 1px solid var(--c-vellum); border-radius: 0;
  box-shadow: 0 30px 90px rgba(11,9,8,0.15); padding: 32px 36px;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(155px,1fr)); gap: 28px; min-width: 520px;
}
.luxury-header .mega_menu_inner h6 a { font-family: var(--f-d) !important; font-size: 1.1rem; font-weight: 500; color: var(--c-black); }
.luxury-header .mega_menu_inner div a { font-family: var(--f-b); font-size: 12.5px; font-weight: 300; color: var(--c-taupe); display: block; padding: 4px 0; transition: color 0.2s, padding-left 0.2s; }
.luxury-header .mega_menu_inner div a:hover { color: var(--c-lacquer); padding-left: 5px; }

/* ═ FOOTER — giant wordmark ═ */
.luxury-footer {
  background:
    radial-gradient(ellipse 75% 45% at 50% 0%, rgba(176,141,87,0.07), transparent 55%),
    var(--c-black) !important;
  color: rgba(246,243,238,0.45);
  border-top: 1px solid var(--c-gold-ln);
  position: relative; overflow: hidden;
}
.luxury-footer::before { content: ''; position: absolute; inset: 0; background: var(--motif); pointer-events: none; }
/* JS injects .cx-wordmark at footer top */
.cx-wordmark {
  font-family: var(--f-d);
  font-size: clamp(4rem, 14vw, 13rem);
  font-weight: 500; line-height: 0.95; letter-spacing: 0.02em;
  text-align: center;
  color: transparent;
  -webkit-text-stroke: 1px rgba(176,141,87,0.28);
  padding: 64px 16px 8px;
  user-select: none;
  transition: color 1s var(--e);
}
.cx-wordmark:hover { color: rgba(176,141,87,0.12); }
.cx-wordmark em { font-style: italic; }
.luxury-footer .page-footer { background: transparent !important; }
.luxury-footer .footer-slide-item {
  background: transparent !important;
  border: 1px solid rgba(176,141,87,0.2) !important; border-radius: 0 !important;
  padding: 30px 20px !important; text-align: center;
  transition: border-color 0.3s, background 0.3s;
}
.luxury-footer .footer-slide-item:hover { border-color: var(--c-gold) !important; background: rgba(176,141,87,0.05) !important; }
.luxury-footer .footer-slide-item img, .luxury-footer .footer-slide-item svg, .luxury-footer .footer-slide-item i {
  filter: grayscale(1) brightness(1.7) sepia(0.55) saturate(1.6) !important; opacity: 0.85 !important;
}
.luxury-footer .footer-slide-item h2, .luxury-footer .footer-slide-item p {
  font-family: var(--f-d) !important; font-size: 1.15rem !important; font-weight: 500 !important;
  color: rgba(246,243,238,0.8) !important; margin: 0 !important;
}
.luxury-footer .footer-slide-item small, .luxury-footer .footer-slide-item .des {
  font-family: var(--f-b) !important; font-size: 11px !important; font-weight: 300 !important;
  color: rgba(246,243,238,0.28) !important;
}
.luxury-footer .footer-header {
  font-family: var(--f-b) !important; font-size: 9px !important; font-weight: 700 !important;
  letter-spacing: 0.4em !important; text-transform: uppercase !important; color: var(--c-gold) !important;
}
.luxury-footer .widget-list-link {
  font-family: var(--f-b) !important; font-size: 13px !important; font-weight: 300 !important;
  color: rgba(246,243,238,0.4) !important; display: block !important; padding: 4px 0 !important;
  transition: color 0.2s, padding-left 0.2s !important;
}
.luxury-footer .widget-list-link:hover { color: var(--c-gold-hi) !important; padding-left: 6px !important; }
.luxury-footer .footer-web-logo img { max-height: 46px; filter: brightness(0) invert(1); opacity: 0.6; }
.luxury-footer input[type="email"], .luxury-footer input[type="text"] {
  background: transparent !important; border: none !important;
  border-bottom: 1px solid rgba(176,141,87,0.35) !important; border-radius: 0 !important;
  color: var(--c-bone) !important; font-family: var(--f-b) !important; font-weight: 300 !important;
  padding: 13px 4px !important;
}
.luxury-footer input::placeholder { color: rgba(246,243,238,0.25) !important; font-style: italic; }
.luxury-footer button[type="submit"], .luxury-footer [class*="subscribe"] button {
  background: var(--c-gold) !important; border: none !important; border-radius: 0 !important;
  color: var(--c-black) !important; font-family: var(--f-b) !important;
  font-size: 10px !important; font-weight: 700 !important; letter-spacing: 0.24em !important;
  text-transform: uppercase !important; padding: 14px 30px !important; transition: background 0.25s !important;
}
.luxury-footer button[type="submit"]:hover { background: var(--c-bone) !important; }
.luxury-footer .social-btn {
  width: 40px !important; height: 40px !important;
  background: transparent !important; border: 1px solid rgba(176,141,87,0.35) !important;
  border-radius: 0 !important; color: rgba(246,243,238,0.5) !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  transition: all 0.3s !important;
}
.luxury-footer .social-btn:hover { background: var(--c-gold) !important; border-color: var(--c-gold) !important; color: var(--c-black) !important; transform: translateY(-3px) !important; }
.luxury-footer .bg-white-overlay-50 { background: rgba(0,0,0,0.35) !important; border-top: 1px solid rgba(176,141,87,0.14) !important; }
.luxury-footer .bg-white-overlay-50 p, .luxury-footer .bg-white-overlay-50 .widget-list-link { font-size: 10.5px !important; color: rgba(246,243,238,0.22) !important; }

/* ═ REVEALS ═ */
.cxr { opacity: 0; transform: translateY(38px); transition: opacity 1.15s var(--e), transform 1.15s var(--e); }
.cxr--l { transform: translateX(-38px); }
.cxr--r { transform: translateX(38px); }
.cxr.on { opacity: 1; transform: none; }
@media (min-width: 1025px) {
  .cxg > .cxr.on:nth-child(4n+2) { transform: translateY(52px); }
  .cxg > .cxr.on:nth-child(4n+4) { transform: translateY(26px); }
}
.cxd1{transition-delay:80ms}.cxd2{transition-delay:170ms}.cxd3{transition-delay:260ms}
.cxd4{transition-delay:350ms}.cxd5{transition-delay:440ms}.cxd6{transition-delay:530ms}

/* ═ GLOBAL KILLS ═ */
.luxury-theme .btn-primary, .luxury-theme .btn-base, .luxury-theme .bg-base {
  background: var(--c-black) !important; border-color: var(--c-black) !important;
  border-radius: 0 !important; font-family: var(--f-b) !important;
  font-size: 10.5px !important; font-weight: 700 !important;
  letter-spacing: 0.2em !important; text-transform: uppercase !important;
}
.luxury-theme .btn-primary:hover { background: var(--c-lacquer) !important; border-color: var(--c-lacquer) !important; }
.luxury-theme .add-to-cart, .luxury-theme #add-to-cart-btn {
  background: var(--c-lacquer) !important; border: 1px solid var(--c-lacquer) !important;
  border-radius: 0 !important; font-family: var(--f-b) !important;
  font-size: 10.5px !important; font-weight: 700 !important;
  letter-spacing: 0.22em !important; text-transform: uppercase !important; padding: 16px 34px !important;
}
.luxury-theme .add-to-cart:hover { background: var(--c-gold) !important; border-color: var(--c-gold) !important; color: var(--c-black) !important; }
.luxury-theme .text-primary, .luxury-theme .web-text-primary, .luxury-theme .text-base { color: var(--c-lacquer) !important; }
.luxury-theme .view-all-text { font-family: var(--f-b) !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: 0.26em !important; text-transform: uppercase !important; color: var(--c-taupe) !important; }
.luxury-theme .view-all-text:hover { color: var(--c-gold) !important; }
.feature-product-title, .arrival-title, .arrival-title div, .featured_deal_title, .categories-title {
  font-family: var(--f-d) !important; font-size: clamp(2.2rem,4.5vw,3.8rem) !important;
  font-weight: 500 !important; letter-spacing: -0.015em !important;
}
#scrollTopButton, .scroll-to-top, [class*="scroll-top"], .back-to-top {
  background: var(--c-black) !important; border: 1px solid var(--c-gold-ln) !important;
  border-radius: 0 !important; color: var(--c-gold) !important;
}
.luxury-theme .out-of-stock, .luxury-theme [class*="out-of-stock"] {
  background: rgba(11,9,8,0.55) !important; backdrop-filter: blur(3px);
  color: var(--c-bone) !important; font-family: var(--f-b) !important;
  font-size: 9px !important; font-weight: 700 !important; letter-spacing: 0.26em !important;
  text-transform: uppercase !important;
}
.luxury-theme .loading-parent { background: rgba(246,243,238,0.95) !important; backdrop-filter: blur(16px); }
@media (max-width: 768px) { [class*="whatsapp"], .whatsapp-float { bottom: 98px !important; } }

/* ═ MOBILE NAV ═ */
.cxnav {
  display: none; position: fixed; bottom: 14px; left: 50%; transform: translateX(-50%);
  z-index: 900; width: calc(100% - 26px); max-width: 440px;
  background: rgba(11,9,8,0.96); backdrop-filter: blur(26px); -webkit-backdrop-filter: blur(26px);
  border: 1px solid var(--c-gold-ln); padding: 7px 4px;
}
@media (max-width: 768px) { .cxnav { display: block; } body.luxury-theme { padding-bottom: 84px; } }
.cxnav__r { display: flex; justify-content: space-around; }
.cxnav__i {
  flex: 1; display: flex; flex-direction: column; align-items: center; gap: 3px;
  padding: 8px 4px; color: rgba(246,243,238,0.38);
  font-family: var(--f-b); font-size: 8px; font-weight: 700;
  letter-spacing: 0.18em; text-transform: uppercase;
  background: none; border: none; transition: color 0.2s;
}
.cxnav__i i { font-size: 19px; }
.cxnav__i:hover, .cxnav__i.active { color: var(--c-gold-hi); }
.cxnav__i--cart i { color: var(--c-gold); font-size: 22px; }

@media (prefers-reduced-motion: reduce) {
  .luxury-theme *, .cxh__media img, .cxr, .cxmq__t, .cx-loader,
  .cxh__title .ch, .cxp .cxp__frame {
    animation: none !important; transition-duration: 0.01ms !important;
    opacity: 1 !important; transform: none !important;
    clip-path: none !important;
  }
  .cx-loader { display: none; }
  .cxz--photo { background-attachment: scroll; }
  .luxury-theme, .luxury-theme a, .luxury-theme button { cursor: auto; }
  .cx-cursor, .cx-cursor-ring { display: none; }
}

/* ═══════════════════════════════════════════════════════════════
   VIOLET COURT — revision from live screenshots (04-07)
   Brand purple made the hero; the site palette now follows it.
   Fixes: elegant animated header · violet scenes · oversized
   serif card names · category-wise single-saree layouts ·
   remaining black Out-of-Stock strips · sold-out re-ordering.
   ═══════════════════════════════════════════════════════════════ */

:root {
  /* Violet court palette — pulled from the hero saree */
  --v-plum:     #2A1230;   /* deepest */
  --v-aubergine:#3B1A45;
  --v-royal:    #4E2160;
  --v-orchid:   #7A3E96;
  --v-mauve:    #B583C9;
  --v-lilac:    #E9D9F0;
  --v-gold:     #C6A15B;   /* keep gold accent */
  --v-gold-hi:  #E3C88A;
  --v-gold-ln:  rgba(198,161,91,0.4);
  --v-porcelain:#FBF9FC;   /* warm-white with violet hint */
  --v-blush:    #F4EDF7;
  --v-veil:     #E7DAEE;
}

/* ── 1 · ELEGANT ANIMATED HEADER ─────────────────────────────
   Replaces the stock purple bar. Slim announcement, floating
   glass nav, gold underline links, animated search + category
   pill. Same 6Valley functionality, restyled only.            */

/* Announcement / phone strip */
#announcement, .luxury-header .header-top-area, .luxury-header .top-header {
  background: var(--v-plum) !important;
  color: var(--v-lilac) !important;
  border-bottom: 1px solid rgba(198,161,91,0.15) !important;
  font-family: var(--f-b) !important;
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
  padding: 9px 0 !important;
}
#announcement a, .luxury-header .header-top-area a { color: rgba(233,217,240,0.7) !important; }
#announcement a:hover { color: var(--v-gold-hi) !important; }

/* the topbar phone row in the screenshot */
.luxury-header .topbar { background: var(--v-plum) !important; }
.luxury-header .topbar-link { color: rgba(233,217,240,0.6) !important; }
.luxury-header .topbar-link:hover { color: var(--v-gold-hi) !important; }
.luxury-header .topbar [class*="tio-"], .luxury-header .topbar i { color: var(--v-gold) !important; }

/* Main nav — porcelain glass, not white */
.luxury-header .navbar-sticky,
.luxury-header .header-middle,
.luxury-header .main-header {
  background: rgba(251,249,252,0.9) !important;
  border-bottom: 1px solid var(--v-veil) !important;
  backdrop-filter: blur(20px) saturate(1.4) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.4) !important;
  transition: all 0.5s var(--e) !important;
}
.luxury-header .navbar-sticky.scrolled {
  background: rgba(251,249,252,0.97) !important;
  box-shadow: 0 1px 0 var(--v-gold-ln), 0 14px 46px rgba(42,18,48,0.1) !important;
}

/* Logo hover pulse */
.luxury-header .navbar-brand img, .luxury-header .header-logo img {
  transition: transform 0.5s var(--e), opacity 0.3s !important;
}
.luxury-header .navbar-brand:hover img { transform: scale(1.04); opacity: 0.85; }

/* Search — underline reveal, violet focus */
.luxury-header .appended-form-control,
.luxury-header input[type="search"],
.luxury-header .search-form input {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--v-veil) !important;
  border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 13px !important; font-weight: 300 !important;
  color: var(--v-plum) !important; padding: 11px 4px !important;
  box-shadow: none !important; transition: border-color 0.4s var(--e) !important;
}
.luxury-header .appended-form-control:focus,
.luxury-header .search-form input:focus { border-bottom-color: var(--v-orchid) !important; }
.luxury-header .appended-form-control::placeholder { color: var(--v-mauve) !important; font-style: italic; }

/* Search BUTTON — the big purple box in screenshot → gold gradient */
.luxury-header .search_button .input-group-text,
.luxury-header .search-button,
.luxury-header button[type="submit"] {
  background: linear-gradient(135deg, var(--v-royal), var(--v-orchid)) !important;
  border: none !important; border-radius: 0 !important;
  color: #fff !important; padding: 11px 22px !important;
  transition: filter 0.3s, transform 0.3s !important;
}
.luxury-header .search_button:hover .input-group-text,
.luxury-header .search-button:hover { filter: brightness(1.12); }

/* Wishlist / account / cart icons */
.luxury-header .navbar-tool-icon-box,
.luxury-header [class*="tio-"], .luxury-header .header-icon {
  color: var(--v-plum) !important; background: transparent !important;
  transition: color 0.25s, transform 0.25s !important;
}
.luxury-header .navbar-tool:hover [class*="tio-"] { color: var(--v-orchid) !important; transform: translateY(-2px); }
.luxury-header .navbar-tool-label,
.luxury-header .cart-count, .luxury-header .wishlist-count {
  background: var(--v-orchid) !important; color: #fff !important;
  font-family: var(--f-b) !important; font-weight: 600 !important;
}
.luxury-header .cart-amount, .luxury-header .my-cart-text { font-family: var(--f-b) !important; color: var(--v-plum) !important; }
.luxury-header .my-cart-text small, .luxury-header .cart-price { color: var(--v-orchid) !important; font-weight: 600 !important; }

/* CATEGORIES pill button (the black box in screenshot) → violet */
.luxury-header .category-btn,
.luxury-header .all-category-btn,
.luxury-header [class*="category"] .btn,
.luxury-header .categories-menu-btn {
  background: linear-gradient(135deg, var(--v-royal), var(--v-orchid)) !important;
  border: none !important; border-radius: 0 !important;
  color: #fff !important; font-family: var(--f-b) !important;
  font-size: 11px !important; font-weight: 600 !important;
  letter-spacing: 0.18em !important; text-transform: uppercase !important;
  padding: 15px 26px !important;
  transition: filter 0.3s !important;
}
.luxury-header .category-btn:hover { filter: brightness(1.12); }

/* Nav links — animated gold underline */
.luxury-header .navbar-nav .nav-link,
.luxury-header .main-menu a,
.luxury-header .header-menu a {
  position: relative;
  font-family: var(--f-b) !important; font-size: 12px !important;
  font-weight: 500 !important; letter-spacing: 0.14em !important;
  text-transform: uppercase !important; color: var(--v-plum) !important;
  padding: 10px 4px !important; margin: 0 14px !important;
  transition: color 0.3s !important;
}
.luxury-header .navbar-nav .nav-link::after,
.luxury-header .main-menu a::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: 2px;
  height: 1px; background: var(--v-gold);
  transform: scaleX(0); transform-origin: left;
  transition: transform 0.4s var(--e);
}
.luxury-header .navbar-nav .nav-link:hover,
.luxury-header .main-menu a:hover { color: var(--v-orchid) !important; }
.luxury-header .navbar-nav .nav-link:hover::after,
.luxury-header .main-menu a:hover::after { transform: scaleX(1); }

/* Category ribbon / mega — violet accents */
.luxury-header .megamenu-wrap { background: var(--v-blush) !important; border-color: var(--v-veil) !important; }
.luxury-header .category-menu > li > a { color: var(--v-royal) !important; }
.luxury-header .category-menu > li:hover > a { color: var(--v-plum) !important; border-bottom-color: var(--v-gold) !important; }
.luxury-header .dropdown-item:hover { background: var(--v-blush) !important; color: var(--v-orchid) !important; }
.luxury-header .mega_menu_inner div a:hover { color: var(--v-orchid) !important; }

/* Language selector top-right */
.luxury-header .language-select, .luxury-header [class*="lang"] { color: var(--v-lilac) !important; }

/* ── 2 · VIOLET SCENE THEMING ────────────────────────────────
   The Edit + Weaves + Ledgers now wear violet silk, matching
   the hero, instead of black/alabaster.                        */

/* "The Edit" — was alabaster, now blush violet with damask */
.cxz--alab {
  background:
    radial-gradient(ellipse 70% 50% at 12% 8%, rgba(122,62,150,0.06), transparent 55%),
    var(--v-blush) !important;
}
.cxz--alab .cxz__ghost { -webkit-text-stroke: 1px rgba(122,62,150,0.12) !important; }
.cxz--alab .cxz__kick, .cxz--alab .cxz__idx { color: var(--v-orchid) !important; }
.cxz--alab .cxz__idx { color: rgba(122,62,150,0.28) !important; }
.cxz--alab .cxz__side { color: var(--v-orchid) !important; }
.cxz--alab .cxz__side::after { background: rgba(122,62,150,0.3) !important; }

/* "Weaves" + "Loved" — was black, now deep violet court */
.cxz--black {
  background:
    radial-gradient(ellipse 80% 55% at 15% 0%, rgba(198,161,91,0.08), transparent 60%),
    radial-gradient(ellipse 65% 45% at 88% 100%, rgba(122,62,150,0.3), transparent 55%),
    linear-gradient(165deg, var(--v-aubergine) 0%, var(--v-plum) 60%, #1E0D24 100%) !important;
  color: var(--v-lilac) !important;
}
.cxz--black .cxz__title { color: var(--v-porcelain) !important; }
.cxz--black .cxz__title em, .cxz--black .cxz__kick { color: var(--v-gold-hi) !important; }

/* Flash — lacquer red stays but leans plum-red for harmony */
.cxz--lacquer {
  background:
    radial-gradient(ellipse 110% 85% at 50% -25%, var(--v-orchid), transparent 62%),
    linear-gradient(168deg, var(--v-royal) 0%, #3A1145 60%, #240C2C 100%) !important;
}

/* Filter tabs active/hover → violet not black */
.cxf__tab:hover, .cxf__tab.active { color: var(--v-plum) !important; }
.cxz--black .cxf__tab:hover, .cxz--black .cxf__tab.active { color: var(--v-porcelain) !important; }
.cxf__tab::after { background: var(--v-orchid) !important; }
.cxf__tab sup { color: var(--v-orchid) !important; }
.cxz--black .cxf__tab sup { color: var(--v-gold) !important; }

/* Card name hover, rule, tag → violet accents */
.cxp:hover .cxp__name { color: var(--v-orchid) !important; }
.cxp:hover .cxp__rule { background: var(--v-orchid) !important; }
.cxp__tag { background: var(--v-royal) !important; }
.cxp__act a:hover { background: var(--v-plum) !important; color: var(--v-gold-hi) !important; }

/* Keyhole category outline + name hover */
.cxc__i:hover .cxc__key { outline-color: var(--v-gold) !important; }
.cxc__i:hover .cxc__nm { color: var(--v-gold-hi) !important; }

/* Buttons → violet primaries */
.cx-btn--gold { background: var(--v-gold); border-color: var(--v-gold); color: var(--v-plum); }
.cx-btn--gold::before { background: var(--v-porcelain); }
.cx-btn--black { background: var(--v-royal); border-color: var(--v-royal); color: #fff; }
.cx-btn--black::before { background: var(--v-orchid); }
.cx-link:hover { color: var(--v-orchid); }
.cxz--black .cx-link:hover { color: var(--v-gold-hi); }

/* Add-to-cart / primary buttons site-wide → violet */
.luxury-theme .btn-primary, .luxury-theme .btn-base, .luxury-theme .bg-base {
  background: var(--v-royal) !important; border-color: var(--v-royal) !important;
}
.luxury-theme .btn-primary:hover { background: var(--v-orchid) !important; border-color: var(--v-orchid) !important; }
.luxury-theme .add-to-cart, .luxury-theme #add-to-cart-btn {
  background: var(--v-royal) !important; border-color: var(--v-royal) !important;
}
.luxury-theme .add-to-cart:hover { background: var(--v-gold) !important; border-color: var(--v-gold) !important; color: var(--v-plum) !important; }
.luxury-theme .text-primary, .luxury-theme .web-text-primary, .luxury-theme .text-base { color: var(--v-orchid) !important; }
#scrollTopButton, .scroll-to-top, [class*="scroll-top"], .back-to-top {
  background: var(--v-royal) !important; border-color: var(--v-gold-ln) !important; color: var(--v-gold) !important;
}
#scrollTopButton:hover { background: var(--v-orchid) !important; color: #fff !important; }

/* Footer → violet-black court */
.luxury-footer {
  background:
    radial-gradient(ellipse 75% 45% at 50% 0%, rgba(198,161,91,0.07), transparent 55%),
    linear-gradient(180deg, var(--v-plum), #17091C) !important;
}
.cx-wordmark { -webkit-text-stroke: 1px rgba(198,161,91,0.28) !important; }
.luxury-footer .footer-slide-item:hover { border-color: var(--v-gold) !important; background: rgba(122,62,150,0.1) !important; }
.luxury-footer .widget-list-link:hover { color: var(--v-gold-hi) !important; }
.luxury-footer .social-btn:hover { background: var(--v-orchid) !important; border-color: var(--v-orchid) !important; color: #fff !important; }

/* Marquee + lacquer discount pills */
.for-discount-value { background: var(--v-royal) !important; }
.cxmq { background: linear-gradient(90deg, var(--v-plum), var(--v-aubergine)) !important; }

/* ── 3 · OVERSIZED SERIF CARD NAMES → refined (screens 4,5) ──
   Category-wise partials render product titles in giant serif.
   Force them back to the atelier body style.                   */
.luxury-home [class*="category-wise"] .flash-product-title,
.luxury-home [class*="category-wise"] .product-title,
.luxury-home [class*="category-wise"] h3 a,
.luxury-home [class*="category-wise"] .name,
.luxury-home .category-wise-product .flash-product-title,
.luxury-home .cate-wise-product .flash-product-title {
  font-family: var(--f-b) !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  color: var(--v-plum) !important;
  text-transform: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  max-width: 100% !important;
}

/* Category-wise SECTION titles stay elegant serif (Arani Silk Sarees…) */
.luxury-home [class*="category-wise"] > .container > h2,
.luxury-home .category-wise-title {
  font-family: var(--f-d) !important;
  font-size: clamp(1.8rem, 3vw, 2.6rem) !important;
  font-weight: 500 !important;
  color: var(--v-plum) !important;
}

/* ── 4 · REMAINING BLACK "OUT OF STOCK" STRIPS (screens 4,5) ──
   Category-wise partial uses its own overlay. Convert to a
   frosted violet chip, centered, not a full black bar.         */
.luxury-home .out-of-stock,
.luxury-home .out_of_stock,
.luxury-home [class*="out-of-stock"],
.luxury-home [class*="stock-out"],
.luxury-home .stock-out {
  background: rgba(42,18,48,0.55) !important;
  backdrop-filter: blur(3px) !important; -webkit-backdrop-filter: blur(3px) !important;
  color: var(--v-lilac) !important;
  font-family: var(--f-b) !important; font-size: 9px !important; font-weight: 700 !important;
  letter-spacing: 0.24em !important; text-transform: uppercase !important;
  border: none !important;
}

/* ── 5 · CATEGORY-WISE PRODUCT CARDS — polish + grid ────────
   Give these stock cards the same frame + hover as the atelier.*/
.luxury-home [class*="category-wise"] .flash-deals-background-image {
  aspect-ratio: 3/4 !important; overflow: hidden !important;
  background: var(--v-veil) !important;
}
.luxury-home [class*="category-wise"] .flash-deals-background-image img {
  transition: transform 0.9s var(--e) !important;
}
.luxury-home [class*="category-wise"] .luxury-product-card:hover .flash-deals-background-image img { transform: scale(1.06) !important; }
.luxury-home [class*="category-wise"] .flash-product-price { font-family: var(--f-d) !important; color: var(--v-plum) !important; }

/* ── 6 · SINGLE / SPARSE CATEGORY ROWS — "spotlight" layout ──
   When a category-wise row has only 1–2 products (screen 4:
   "Arani Silk Sarees" with a lone saree + empty space), JS adds
   .cx-sparse. We turn it into an elegant editorial spotlight:
   product left, invitation panel right.                        */
.luxury-home .cx-sparse .row,
.luxury-home .cx-sparse .owl-stage,
.luxury-home .cx-sparse [class*="product-list"] {
  display: grid !important;
  grid-template-columns: minmax(240px, 320px) 1fr !important;
  gap: 40px !important;
  align-items: center !important;
}
.luxury-home .cx-sparse .owl-stage-outer { overflow: visible !important; }
.luxury-home .cx-sparse .owl-nav,
.luxury-home .cx-sparse .owl-dots { display: none !important; }
/* The invitation panel injected by JS */
.cx-invite {
  border: 1px solid var(--v-gold-ln);
  padding: 48px 40px;
  background:
    radial-gradient(ellipse 60% 50% at 90% 10%, rgba(122,62,150,0.05), transparent 60%),
    var(--v-porcelain);
  height: 100%;
  display: flex; flex-direction: column; justify-content: center;
}
.cx-invite__k {
  font-family: var(--f-b); font-size: 9.5px; font-weight: 700;
  letter-spacing: 0.34em; text-transform: uppercase; color: var(--v-orchid);
  margin-bottom: 14px;
}
.cx-invite__t {
  font-family: var(--f-d); font-size: clamp(1.5rem, 2.4vw, 2.2rem);
  font-weight: 500; line-height: 1.2; color: var(--v-plum); margin-bottom: 14px;
}
.cx-invite__t em { font-style: italic; color: var(--v-orchid); }
.cx-invite__p {
  font-family: var(--f-b); font-size: 13.5px; font-weight: 300;
  color: var(--v-royal); line-height: 1.8; margin-bottom: 26px; max-width: 380px;
}
.cx-invite__btn {
  align-self: flex-start;
  font-family: var(--f-b); font-size: 10.5px; font-weight: 600;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--v-plum); border: 1px solid var(--v-plum);
  padding: 14px 30px; transition: all 0.35s var(--e);
}
.cx-invite__btn:hover { background: var(--v-royal); border-color: var(--v-royal); color: #fff; text-decoration: none; }
@media (max-width: 768px) {
  .luxury-home .cx-sparse .row,
  .luxury-home .cx-sparse [class*="product-list"] { grid-template-columns: 1fr !important; }
  .cx-invite { padding: 32px 24px; }
}

/* ── 7 · SOLD-OUT DE-EMPHASIS ────────────────────────────────
   Available first (JS reorders); sold-out slightly muted so the
   eye lands on buyable pieces. Not hidden — still shoppable.    */
.luxury-home .cxp.cx-soldout .cxp__frame img,
.luxury-home .luxury-product-card.cx-soldout .flash-deals-background-image img {
  filter: grayscale(0.25) brightness(0.97);
}
.luxury-home .cxp.cx-soldout .cxp__price,
.luxury-home .cxp.cx-soldout .cxp__name { opacity: 0.72; }

/* ── 8 · HERO STAT RAIL legibility over bright saree (screen 1)
   The right-side 40+/10,000+ text sat over the model. Add a
   soft scrim behind the rail.                                   */
.cxh__rail {
  padding: 20px 22px !important;
  background: linear-gradient(90deg, transparent, rgba(42,18,48,0.35)) !important;
  backdrop-filter: blur(2px);
}


/* ═══════════════════════════════════════════════════════════════
   SLNS MAISON HEADER — self-contained, scoped (slns-*)
   Overlay over hero · frosted-violet solid on scroll · animated.
   Pairs with the new _header.blade.php.
   ═══════════════════════════════════════════════════════════════ */

/* kill 6Valley theme purple at the variable root */
:root, .luxury-theme, body.luxury-theme {
  --base:#4E2160!important; --bs-base-rgb:78,33,96!important; --base-2:#7A3E96!important;
  --web-primary:#4E2160!important; --web-secondary:#7A3E96!important;
}

/* hero clears the floating header */
.luxury-home { position: relative; }
.luxury-home .cxh { margin-top:0!important; padding-top:0; height:100vh; box-sizing:border-box; }
.luxury-home .cxh__body { padding-bottom:9vh; }
@media (max-width: 991px){ .luxury-home .cxh { padding-top:0; height:auto; min-height:86vh; } }

.slns-wrap { max-width: 1360px; margin: 0 auto; padding: 0 32px; }
@media (max-width: 768px){ .slns-wrap { padding: 0 18px; } }

/* announcement */
.slns-announce { text-align:center; font-family:var(--f-b); font-size:12px; letter-spacing:.08em; padding:9px 16px; position:relative; }
.slns-announce__x { position:absolute; right:16px; top:50%; transform:translateY(-50%); cursor:pointer; opacity:.6; }

/* ── HEADER WRAPPER — absolute overlay ──────────────────────── */
.slns-header {
  position:absolute; top:0; left:0; right:0; z-index:300;
  background:transparent;
  transition:background .5s var(--e), box-shadow .5s var(--e);
}

/* TOPBAR */
.slns-topbar { border-bottom:1px solid rgba(255,255,255,.1); padding:9px 0; }
.slns-topbar .slns-wrap { display:flex; justify-content:space-between; align-items:center; }
.slns-topbar__link { font-family:var(--f-b); font-size:11.5px; letter-spacing:.08em; color:rgba(255,255,255,.65); display:inline-flex; align-items:center; gap:8px; }
.slns-topbar__link:hover { color:var(--c-gold-hi); text-decoration:none; }
.slns-topbar__link i { color:var(--c-gold); }
.slns-lang .dropdown-menu { background:var(--v-plum); border:1px solid rgba(198,161,91,.2); border-radius:0; padding:4px 0; min-width:120px; }
.slns-lang .dropdown-item { font-family:var(--f-b); font-size:12px; color:rgba(255,255,255,.6); padding:7px 16px; }
.slns-lang .dropdown-item:hover { background:transparent; color:var(--c-gold-hi); }

/* ── MAIN ROW ───────────────────────────────────────────────── */
.slns-main { padding:18px 0; }
.slns-main__grid { display:flex; justify-content:space-between; align-items:center; }
@media (max-width:991px){ .slns-main__grid { display:flex; justify-content:space-between; align-items:center; } }

/* logo — bright over dark hero, NO invert (keeps the real logo intact) */
.slns-logo {
  display: inline-flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 30px;
  padding: 6px 16px;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.15);
  transition: all 0.3s var(--e);
  text-decoration: none;
}
.slns-logo img { max-height:38px; width:auto; display:block;
  transition:transform .4s var(--e); }
.slns-logo:hover {
  background: rgba(255, 255, 255, 0.96);
  transform: translateY(-1px);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
}
.slns-logo:hover img { transform:scale(1.02); }

/* search — glass, gold button */
.slns-search { position:relative; display:flex; align-items:stretch; max-width:640px; width:100%; }
.slns-search__input {
  flex:1; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.24); border-right:none;
  color:#fff; font-family:var(--f-b); font-size:13.5px; font-weight:300; padding:13px 20px; outline:none;
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); transition:all .35s var(--e);
}
.slns-search__input::placeholder { color:rgba(255,255,255,.55); font-style:italic; }
.slns-search__input:focus { background:rgba(255,255,255,.16); border-color:var(--c-gold); }
.slns-search__btn {
  flex:0 0 auto; width:56px; background:var(--c-gold); border:1px solid var(--c-gold); color:var(--v-plum);
  display:flex; align-items:center; justify-content:center; font-size:18px; cursor:pointer;
  transition:filter .3s, background .3s;
}
.slns-search__btn:hover { filter:brightness(1.08); }
.slns-search__results {
  position:absolute; top:100%; left:0; right:56px; margin-top:6px; z-index:20;
  background:#fff; border:1px solid var(--v-veil); border-radius:0; box-shadow:0 24px 64px rgba(11,9,8,.2);
}
.slns-search__results .search-result-box { max-height:400px; overflow-y:auto; }

/* tools */
.slns-tools { display:flex; align-items:center; gap:12px; }
.slns-tool {
  position:relative; width:46px; height:46px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.22); color:#fff;
  font-size:19px; cursor:pointer;
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  transition:all .3s var(--e); text-decoration:none;
}
.slns-tool:hover { background:var(--c-gold); border-color:var(--c-gold); color:var(--v-plum); transform:translateY(-2px); text-decoration:none; }
.slns-tool__badge {
  position:absolute; top:-4px; right:-4px; min-width:18px; height:18px; padding:0 5px;
  background:var(--c-gold); color:var(--v-plum); border-radius:9px;
  font-family:var(--f-b); font-size:10px; font-weight:700;
  display:flex; align-items:center; justify-content:center;
}
.slns-tool--msearch { display:none; }
@media (max-width:991px){ .slns-tool--msearch { display:flex; } }

/* account + cart dropdowns */
.slns-tool-drop .dropdown-menu, .slns-cart .dropdown-menu {
  background:#fff; border:1px solid var(--v-veil); border-radius:0; box-shadow:0 20px 60px rgba(11,9,8,.15); padding:6px 0; margin-top:8px;
}
.slns-tool-drop .dropdown-header { font-family:var(--f-d); font-size:1rem; color:var(--v-plum); padding:8px 18px; }
.slns-tool-drop .dropdown-item, .slns-cart .dropdown-item { font-family:var(--f-b); font-size:13px; color:var(--v-royal); padding:9px 18px; transition:all .2s; }
.slns-tool-drop .dropdown-item:hover, .slns-cart .dropdown-item:hover { background:var(--v-blush); color:var(--v-orchid); padding-left:24px; }
/* keep 6Valley cart icon visible inside our glass tool */
.slns-cart { width:auto; padding:0; background:none; border:none; }
.slns-cart .navbar-tool-icon-box, .slns-cart [class*="cart"] { color:#fff !important; }

/* ── NAV RIBBON ─────────────────────────────────────────────── */
.slns-nav { border: none; background: none !important; }
.slns-nav__grid { display:flex; align-items:stretch; gap:8px; }

/* categories mega button */
.slns-cat { position:relative; }
.slns-cat__btn {
  display:flex; align-items:center; gap:12px;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.28); color:#fff;
  font-family:var(--f-b); font-size:12px; font-weight:600; letter-spacing:.18em; text-transform:uppercase;
  padding:16px 28px; cursor:pointer; height:100%;
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  transition:all .3s var(--e);
}
.slns-cat__btn:hover, .slns-cat.open .slns-cat__btn { background:var(--c-gold); border-color:var(--c-gold); color:var(--v-plum); }
.slns-cat__caret { font-size:10px; transition:transform .3s; }
.slns-cat.open .slns-cat__caret { transform:rotate(180deg); }
.slns-cat__icon { display:flex; }

/* categories dropdown menu */
.slns-cat__menu {
  position:absolute; top:100%; left:0; min-width:300px; margin:0; padding:8px 0; list-style:none; z-index:40;
  background:#fff; border:1px solid var(--v-veil); box-shadow:0 28px 80px rgba(11,9,8,.2);
  opacity:0; visibility:hidden; transform:translateY(10px);
  transition:opacity .35s var(--e), transform .35s var(--e), visibility .35s;
}
.slns-cat.open .slns-cat__menu { opacity:1; visibility:visible; transform:translateY(0); }
.slns-cat__item > a {
  display:flex; align-items:center; gap:12px; padding:11px 20px;
  font-family:var(--f-b); font-size:13px; color:var(--v-royal); transition:all .2s; position:relative;
}
.slns-cat__item > a img { width:26px; height:26px; border-radius:50%; object-fit:cover; }
.slns-cat__item > a:hover { background:var(--v-blush); color:var(--v-orchid); padding-left:26px; text-decoration:none; }
.slns-cat__arrow { position:absolute; right:16px; font-style:normal; color:var(--v-mauve); }
.slns-cat__all a { font-weight:600; letter-spacing:.1em; text-transform:uppercase; font-size:11px; color:var(--v-plum); border-top:1px solid var(--v-veil); margin-top:4px; }
/* sub-categories flyout */
.slns-cat__sub {
  position:absolute; top:0; left:100%; min-width:220px; margin:0; padding:8px 0; list-style:none;
  background:#fff; border:1px solid var(--v-veil); box-shadow:0 24px 64px rgba(11,9,8,.18);
  opacity:0; visibility:hidden; transform:translateX(8px); transition:all .3s var(--e);
}
.slns-cat__item.has-sub:hover .slns-cat__sub { opacity:1; visibility:visible; transform:translateX(0); }
.slns-cat__sub a { display:block; padding:9px 18px; font-family:var(--f-b); font-size:12.5px; color:var(--v-royal); transition:all .2s; }
.slns-cat__sub a:hover { background:var(--v-blush); color:var(--v-orchid); padding-left:24px; text-decoration:none; }

/* menu links */
.slns-menu { display:flex; align-items:center; gap:6px; }
.slns-menu__link {
  position:relative; font-family:var(--f-b); font-size:12px; font-weight:500; letter-spacing:.14em; text-transform:uppercase;
  color:rgba(255,255,255,.82); padding:16px 20px; transition:color .3s;
}
.slns-menu__link::after {
  content:''; position:absolute; left:20px; right:20px; bottom:12px; height:1px; background:var(--c-gold);
  transform:scaleX(0); transform-origin:left; transition:transform .4s var(--e);
}
.slns-menu__link:hover, .slns-menu__link.active { color:var(--c-gold-hi); text-decoration:none; }
.slns-menu__link:hover::after, .slns-menu__link.active::after { transform:scaleX(1); }

/* burger (mobile) */
.slns-burger { display:none; margin-left:auto; width:44px; height:44px; background:none; border:none; flex-direction:column; justify-content:center; gap:5px; cursor:pointer; }
.slns-burger span { display:block; width:22px; height:1.5px; background:#fff; margin:0 auto; transition:all .3s var(--e); }
.slns-burger.open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
.slns-burger.open span:nth-child(2){ opacity:0; }
.slns-burger.open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

/* mobile drawer */
.slns-drawer {
  display:none; flex-direction:column;
  background:rgba(42,18,48,.98); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px);
  border-top:1px solid rgba(198,161,91,.2); padding:10px 0;
  max-height:0; overflow:hidden; transition:max-height .4s var(--e);
}
.slns-drawer.open { max-height:400px; }
.slns-drawer__link { font-family:var(--f-b); font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.7); padding:13px 24px; transition:all .2s; }
.slns-drawer__link:hover { color:var(--c-gold-hi); background:rgba(255,255,255,.04); padding-left:30px; text-decoration:none; }

/* ── RESPONSIVE: collapse nav on mobile ─────────────────────── */
@media (max-width:991px){
  .slns-search { display:none; }           /* mobile search via toggle */
  .slns-menu, .slns-cat { display:none; }
  .slns-burger { display:flex; }
  .slns-nav__grid { justify-content:flex-end; }
  .slns-drawer { display:flex; }
  .slns-main__grid { grid-template-columns:auto 1fr auto; }
}

/* ── SOLID STATE on scroll — frosted violet ─────────────────── */
.slns-header.slns-solid {
  position:fixed;
  background:rgba(42,18,48,.94);
  box-shadow:0 8px 44px rgba(42,18,48,.4);
  -webkit-backdrop-filter:blur(22px) saturate(1.5); backdrop-filter:blur(22px) saturate(1.5);
  animation:slnsDrop .5s var(--e) both;
}
@keyframes slnsDrop { from{ transform:translateY(-100%);} to{ transform:translateY(0);} }
.slns-header.slns-solid .slns-nav { background:rgba(0,0,0,.15); }

/* ── NON-HERO PAGES — solid sticky from top ─────────────────── */
.slns-header.slns-nohero {
  position:sticky; top:0;
  background:rgba(42,18,48,.97);
  -webkit-backdrop-filter:blur(20px) saturate(1.4); backdrop-filter:blur(20px) saturate(1.4);
  box-shadow:0 6px 30px rgba(42,18,48,.3);
}
/* on non-hero pages the page body must not hide under header (it's sticky, so fine) */

/* ═══════════════════════════════════════════════════════════════
   PILLAR PAGES — SHOP LISTING + PRODUCT DETAILS
   Deep elegant restyle using the theme's real selectors.
   Violet-court palette · serif display · glass + gold accents.
   ═══════════════════════════════════════════════════════════════ */

/* ── SHARED PAGE CANVAS ─────────────────────────────────────── */
body.luxury-theme { background: var(--v-porcelain) !important; }
/* soft damask wash behind both pages */
.luxury-theme .container.py-3.rtl,
.luxury-theme .container.py-3 {
  position: relative;
}

/* ═════════════ A · SHOP LISTING PAGE ═══════════════════════ */

/* A1 · Page toolbar card (Products · 56 items · search · sort) */
.luxury-theme .py-3.mb-2.mb-md-4.rtl.__inline-35,
.luxury-theme .search-page-header {
  background: #fff !important;
  border: 1px solid var(--v-veil) !important;
  border-radius: 0 !important;
  box-shadow: 0 10px 40px rgba(42,18,48,0.05) !important;
  padding: 26px 28px !important;
}
/* "Products" title → serif display */
.luxury-theme .search-page-header .font-semibold.mb-0,
.luxury-theme .widget-title.font-bold {
  font-family: var(--f-d) !important;
  font-size: clamp(1.6rem, 2.6vw, 2.2rem) !important;
  font-weight: 500 !important;
  color: var(--v-plum) !important;
  letter-spacing: -0.01em !important;
}
/* "56 Items found" */
.luxury-theme .view-page-item-count {
  font-family: var(--f-b) !important;
  font-size: 11px !important; font-weight: 600 !important;
  letter-spacing: 0.16em !important; text-transform: uppercase !important;
  color: var(--v-orchid) !important;
}

/* A2 · Toolbar search — underline glass */
.luxury-theme .search-page-button-input {
  background: var(--v-blush) !important;
  border: 1px solid var(--v-veil) !important;
  border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 13px !important; font-weight: 300 !important;
  color: var(--v-plum) !important; padding: 12px 18px !important;
  box-shadow: none !important; transition: all .3s var(--e) !important;
}
.luxury-theme .search-page-button-input:focus { background:#fff !important; border-color: var(--v-orchid) !important; }
.luxury-theme .search-page-button .input-group-text {
  background: var(--c-gold) !important;
  border: none !important; border-radius: 0 !important;
  transition: filter .3s !important;
}
.luxury-theme .search-page-button:hover .input-group-text { filter: brightness(1.1); }
.luxury-theme .search-page-button .czi-search { color: var(--v-plum) !important; }

/* A3 · Sort / Filter selects — hairline elegance */
.luxury-theme .for-sorting,
.luxury-theme .product-list-filter-input,
.luxury-theme .sorting-item select,
.luxury-theme select.form-control {
  background-color: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--v-veil) !important;
  border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 12.5px !important;
  letter-spacing: 0.04em !important; color: var(--v-plum) !important;
  box-shadow: none !important;
  transition: border-color .3s !important;
  cursor: pointer;
}
.luxury-theme .for-sorting:focus, .luxury-theme select.form-control:focus { border-bottom-color: var(--v-orchid) !important; }
.luxury-theme .sorting-item {
  font-family: var(--f-b) !important; font-size: 12px !important;
  letter-spacing: 0.08em !important; color: var(--v-royal) !important;
}
.luxury-theme .fi-sr-bars-filter { color: var(--v-orchid) !important; }
.luxury-theme .filter-show-btn {
  background: var(--v-royal) !important; border: none !important; border-radius: 0 !important;
}

/* A4 · FILTER SIDEBAR — the elegance centerpiece */
.luxury-theme .cz-sidebar.__inline-35,
.luxury-theme .__search-sidebar .cz-sidebar {
  background: #fff !important;
  border: 1px solid var(--v-veil) !important;
  border-top: 2px solid var(--c-gold) !important;
  border-radius: 0 !important;
  box-shadow: 0 14px 48px rgba(42,18,48,0.06) !important;
}
/* "Filter By" heading → serif */
.luxury-theme .cz-sidebar .fs-16.font-weight-bold,
.luxury-theme .cz-sidebar-header h6, .luxury-theme .cz-sidebar h5 {
  font-family: var(--f-d) !important;
  font-size: 1.4rem !important; font-weight: 500 !important;
  color: var(--v-plum) !important;
}
/* group titles (Product Type / Price / Categories) */
.luxury-theme .cz-sidebar [data-toggle="collapse"],
.luxury-theme .cz-sidebar .accordion-heading,
.luxury-theme .cz-sidebar h6 {
  font-family: var(--f-b) !important;
  font-size: 10.5px !important; font-weight: 700 !important;
  letter-spacing: 0.22em !important; text-transform: uppercase !important;
  color: var(--v-orchid) !important;
}
/* category rows in sidebar */
.luxury-theme .cz-sidebar a,
.luxury-theme .cz-sidebar label {
  font-family: var(--f-b) !important; font-size: 13px !important;
  color: var(--v-royal) !important;
  transition: color .2s, padding-left .2s !important;
}
.luxury-theme .cz-sidebar a:hover { color: var(--v-orchid) !important; padding-left: 4px !important; text-decoration: none !important; }
.luxury-theme .cz-sidebar img { border-radius: 50% !important; }
/* price inputs */
.luxury-theme .cz-sidebar input[type="number"],
.luxury-theme .cz-sidebar input[type="text"] {
  background: var(--v-blush) !important;
  border: 1px solid var(--v-veil) !important; border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 13px !important;
  color: var(--v-plum) !important;
  transition: border-color .25s !important;
}
.luxury-theme .cz-sidebar input:focus { border-color: var(--v-orchid) !important; box-shadow: none !important; }
/* range slider + go button */
.luxury-theme .cz-sidebar input[type="range"] { accent-color: var(--v-orchid) !important; }
.luxury-theme .cz-sidebar .btn, .luxury-theme .cz-sidebar button[type="submit"] {
  background: var(--v-royal) !important; border: none !important; border-radius: 0 !important;
  transition: background .25s !important;
}
.luxury-theme .cz-sidebar .btn:hover { background: var(--v-orchid) !important; }
/* checkboxes → violet */
.luxury-theme .cz-sidebar input[type="checkbox"],
.luxury-theme .cz-sidebar input[type="radio"] { accent-color: var(--v-orchid) !important; }
/* sidebar scroll */
.luxury-theme .shop-sidebar-scroll::-webkit-scrollbar { width: 3px; }
.luxury-theme .shop-sidebar-scroll::-webkit-scrollbar-thumb { background: var(--c-gold); }

/* A5 · LISTING PRODUCT CARDS (.product-single-hover) — atelier plates */
.luxury-theme .product-with-bg { padding: 10px !important; }
.luxury-theme .product-single-hover.style--card {
  background: transparent !important;
  border: none !important; border-radius: 0 !important;
  box-shadow: none !important;
  transition: transform .45s var(--e) !important;
}
.luxury-theme .product-single-hover.style--card:hover { transform: translateY(-6px) !important; }
/* image area */
.luxury-theme .product-single-hover .overflow-hidden.position-relative {
  aspect-ratio: 3/4 !important;
  background: var(--v-veil) !important;
  position: relative !important;
}
.luxury-theme .product-single-hover .overflow-hidden.position-relative::after {
  content: ''; position: absolute; inset: 10px;
  border: 1px solid rgba(198,161,91,0);
  transition: border-color .5s var(--e), inset .5s var(--e);
  pointer-events: none; z-index: 3;
}
.luxury-theme .product-single-hover:hover .overflow-hidden.position-relative::after {
  border-color: rgba(198,161,91,0.65); inset: 14px;
}
.luxury-theme .product-single-hover .inline_product img,
.luxury-theme .product-single-hover .overflow-hidden img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important;
  transition: transform 1s var(--e), filter .5s !important;
}
.luxury-theme .product-single-hover:hover .overflow-hidden img {
  transform: scale(1.06) !important; filter: brightness(0.93);
}
/* quick view eye → gold pill bottom-center */
.luxury-theme .product-single-hover .quick-view,
.luxury-theme .product-single-hover .quick-view-tag {
  position: absolute !important; left: 50% !important; bottom: 18px !important;
  top: auto !important; right: auto !important;
  transform: translate(-50%, 12px) !important;
  opacity: 0 !important; z-index: 5 !important;
  transition: all .4s var(--e) !important;
}
.luxury-theme .product-single-hover:hover .quick-view,
.luxury-theme .product-single-hover:hover .quick-view-tag {
  opacity: 1 !important; transform: translate(-50%, 0) !important;
}
.luxury-theme .product-single-hover .btn-circle {
  background: var(--v-porcelain) !important;
  border: none !important; border-radius: 0 !important;
  width: auto !important; height: auto !important;
  padding: 10px 22px !important;
  font-family: var(--f-b) !important; font-size: 10px !important;
  font-weight: 700 !important; letter-spacing: 0.18em !important;
  color: var(--v-plum) !important;
  transition: background .25s, color .25s !important;
}
.luxury-theme .product-single-hover .btn-circle:hover { background: var(--c-gold) !important; }
.luxury-theme .product-single-hover .czi-eye::after { content: '  QUICK VIEW'; font-family: var(--f-b); font-size: 10px; letter-spacing: .16em; }
/* name + price */
.luxury-theme .single-product-details { padding: 16px 4px 6px !important; }
.luxury-theme .single-product-details .text-center.mb-1,
.luxury-theme .single-product-details a {
  font-family: var(--f-b) !important; font-size: 13px !important;
  font-weight: 400 !important; letter-spacing: 0.02em !important;
  text-transform: none !important; color: var(--v-plum) !important;
  transition: color .25s !important;
}
.luxury-theme .product-single-hover:hover .single-product-details a { color: var(--v-orchid) !important; }
.luxury-theme .product-price .text-accent {
  font-family: var(--f-d) !important; font-size: 1.2rem !important;
  font-weight: 500 !important; color: var(--v-plum) !important;
}
.luxury-theme .product-price .category-single-product-price {
  font-family: var(--f-b) !important; font-size: 11.5px !important;
  color: var(--v-mauve) !important; font-weight: 300 !important;
}
/* discount ribbon (already themed) — sharpen */
.luxury-theme .for-discount-value { font-size: 9.5px !important; padding: 6px 12px !important; }
/* out of stock chip on listing */
.luxury-theme .out_fo_stock {
  background: rgba(42,18,48,0.55) !important;
  -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px);
  color: var(--v-lilac) !important;
  font-family: var(--f-b) !important; font-size: 9px !important;
  font-weight: 700 !important; letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
}

/* A6 · Pagination */
.luxury-theme .pagination .page-link {
  border: 1px solid var(--v-veil) !important; border-radius: 0 !important;
  font-family: var(--f-b) !important; color: var(--v-royal) !important;
  margin: 0 3px !important; transition: all .25s !important;
}
.luxury-theme .pagination .page-item.active .page-link,
.luxury-theme .pagination .page-link:hover {
  background: var(--v-royal) !important; border-color: var(--v-royal) !important; color: #fff !important;
}

/* ═════════════ B · PRODUCT DETAILS PAGE ════════════════════ */

/* B1 · Main card canvas */
.luxury-theme .product-details-shipping-details,
.luxury-theme .details.__h-100,
.luxury-theme .container .card:not(.search-card) {
  border: 1px solid var(--v-veil) !important;
  border-radius: 0 !important;
  box-shadow: 0 14px 48px rgba(42,18,48,0.05) !important;
}

/* B2 · Gallery — frame + zoom breathing */
.luxury-theme .cz-product-gallery, .luxury-theme [class*="product-gallery"] {
  background: var(--v-blush) !important;
  padding: 10px !important;
}
.luxury-theme .cz-product-gallery img { transition: transform .8s var(--e) !important; }
.luxury-theme .cz-product-gallery:hover img { transform: scale(1.02); }
/* thumbnails — gold ring active */
.luxury-theme .cz-thumblist a, .luxury-theme [class*="thumb"] a,
.luxury-theme .focus-preview-image-by-color {
  border: 1px solid var(--v-veil) !important; border-radius: 0 !important;
  transition: border-color .25s, transform .25s !important;
}
.luxury-theme .cz-thumblist a.active, .luxury-theme .cz-thumblist a:hover,
.luxury-theme .focus-preview-image-by-color.shadow-border {
  border-color: var(--c-gold) !important; transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(198,161,91,0.25) !important;
}

/* B3 · Title → grand serif */
.luxury-theme .product-details-shipping-details h1,
.luxury-theme .details h1, .luxury-theme [class*="product-details"] h1,
.luxury-theme .product-title {
  font-family: var(--f-d) !important;
  font-size: clamp(1.8rem, 3.2vw, 2.8rem) !important;
  font-weight: 500 !important; line-height: 1.15 !important;
  letter-spacing: -0.015em !important; color: var(--v-plum) !important;
}
/* orders / wishlist meta */
.luxury-theme .details .fs-14.text-muted, .luxury-theme .countWishlist-meta {
  font-family: var(--f-b) !important; font-size: 11px !important;
  letter-spacing: 0.14em !important; text-transform: uppercase !important;
  color: var(--v-mauve) !important;
}

/* B4 · Price — display serif with gold rule */
.luxury-theme .discounted-unit-price {
  font-family: var(--f-d) !important;
  font-size: 2.4rem !important; font-weight: 500 !important;
  color: var(--v-plum) !important;
  position: relative; padding-bottom: 10px;
}
.luxury-theme .product-details-chosen-price-section del,
.luxury-theme .details del {
  font-family: var(--f-b) !important; font-size: 1rem !important;
  font-weight: 300 !important; color: var(--v-mauve) !important;
}
.luxury-theme .product-total-unit-price {
  font-family: var(--f-d) !important; color: var(--v-royal) !important;
}
/* "Out of Stock" text (pink in screenshot) → refined chip */
.luxury-theme .details .text-danger, .luxury-theme .out-of-stock-text {
  display: inline-block;
  background: rgba(42,18,48,0.06);
  border: 1px solid var(--v-veil);
  color: var(--v-royal) !important;
  font-family: var(--f-b) !important; font-size: 10px !important;
  font-weight: 700 !important; letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  padding: 7px 16px !important;
}

/* B5 · Labels (Color / Qty) */
.luxury-theme .product-description-label {
  font-family: var(--f-b) !important; font-size: 10.5px !important;
  font-weight: 700 !important; letter-spacing: 0.22em !important;
  text-transform: uppercase !important; color: var(--v-orchid) !important;
}
/* color swatches — gold ring on active */
.luxury-theme .checkbox-color label, .luxury-theme .checkbox-color span {
  border-radius: 50% !important;
  transition: transform .25s var(--e), box-shadow .25s !important;
}
.luxury-theme .checkbox-color input:checked + label,
.luxury-theme .checkbox-color label:hover {
  transform: scale(1.12);
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--c-gold) !important;
}

/* B6 · Quantity box */
.luxury-theme .quantity-box {
  border: 1px solid var(--v-veil) !important;
  border-radius: 0 !important;
  background: var(--v-blush) !important;
}
.luxury-theme .quantity-box .btn-number, .luxury-theme .quantity-box button {
  background: transparent !important; border: none !important;
  color: var(--v-royal) !important; font-size: 16px !important;
  transition: color .2s, background .2s !important;
}
.luxury-theme .quantity-box .btn-number:hover { background: var(--v-royal) !important; color: #fff !important; }
.luxury-theme .product-details-cart-qty {
  font-family: var(--f-d) !important; font-size: 1.05rem !important;
  background: transparent !important; color: var(--v-plum) !important;
}

/* B7 · Action buttons — the money row */
.luxury-theme .product-add-to-cart-button {
  background: var(--v-royal) !important; border: 1px solid var(--v-royal) !important;
  border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 11px !important;
  font-weight: 700 !important; letter-spacing: 0.22em !important;
  text-transform: uppercase !important; padding: 16px 34px !important;
  transition: all .35s var(--e) !important;
  position: relative; overflow: hidden;
}
.luxury-theme .product-add-to-cart-button:hover {
  background: var(--v-orchid) !important; border-color: var(--v-orchid) !important;
  transform: translateY(-2px); box-shadow: 0 10px 28px rgba(122,62,150,0.35) !important;
}
.luxury-theme .product-buy-now-button {
  background: var(--c-gold) !important; border: 1px solid var(--c-gold) !important;
  color: var(--v-plum) !important; border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 11px !important;
  font-weight: 700 !important; letter-spacing: 0.22em !important;
  text-transform: uppercase !important; padding: 16px 34px !important;
  transition: all .35s var(--e) !important;
}
.luxury-theme .product-buy-now-button:hover {
  background: var(--c-gold-hi) !important; transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(198,161,91,0.4) !important;
}
.luxury-theme .product-restock-request-button, .luxury-theme .request-restock-btn {
  background: transparent !important;
  border: 1px solid var(--v-royal) !important; border-radius: 0 !important;
  color: var(--v-royal) !important;
  font-family: var(--f-b) !important; font-size: 11px !important;
  font-weight: 700 !important; letter-spacing: 0.18em !important;
  text-transform: uppercase !important; padding: 15px 30px !important;
  transition: all .3s var(--e) !important;
}
.luxury-theme .product-restock-request-button:hover {
  background: var(--v-royal) !important; color: #fff !important;
}
/* wishlist heart button */
.luxury-theme .product-action-add-wishlist {
  border: 1px solid var(--v-veil) !important; border-radius: 0 !important;
  color: var(--v-royal) !important;
  transition: all .3s var(--e) !important;
}
.luxury-theme .product-action-add-wishlist:hover {
  border-color: var(--v-orchid) !important; color: var(--v-orchid) !important;
  transform: translateY(-2px);
}

/* B8 · Trust panel (Fast delivery / Safe payment / Returns / Authentic) */
.luxury-theme .__review-overview.card,
.luxury-theme .details ~ .card,
.luxury-theme [class*="shipping-info"] .card {
  border: 1px solid var(--v-veil) !important;
  border-top: 2px solid var(--c-gold) !important;
}
.luxury-theme .card .fs-14, .luxury-theme .card-body .fs-14 { font-family: var(--f-b) !important; }

/* B9 · Overview/Reviews tabs — hairline editorial tabs */
.luxury-theme .nav--tabs { border-bottom: 1px solid var(--v-veil) !important; gap: 0 !important; }
.luxury-theme .nav--tabs .tab_link,
.luxury-theme .nav-tabs .nav-link {
  background: transparent !important; border: none !important; border-radius: 0 !important;
  font-family: var(--f-b) !important; font-size: 11.5px !important;
  font-weight: 600 !important; letter-spacing: 0.2em !important;
  text-transform: uppercase !important; color: var(--v-mauve) !important;
  padding: 14px 26px !important; position: relative;
  transition: color .3s !important;
}
.luxury-theme .nav--tabs .tab_link::after,
.luxury-theme .nav-tabs .nav-link::after {
  content: ''; position: absolute; left: 26px; right: 26px; bottom: -1px;
  height: 2px; background: var(--c-gold);
  transform: scaleX(0); transform-origin: left;
  transition: transform .4s var(--e);
}
.luxury-theme .nav--tabs .tab_link.active,
.luxury-theme .nav-tabs .nav-link.active { color: var(--v-plum) !important; background: transparent !important; }
.luxury-theme .nav--tabs .tab_link.active::after,
.luxury-theme .nav-tabs .nav-link.active::after { transform: scaleX(1); }
.luxury-theme .nav--tabs .tab_link:hover { color: var(--v-plum) !important; }

/* B10 · Description body */
.luxury-theme .p-details-description {
  font-family: var(--f-b) !important; font-size: 14px !important;
  font-weight: 300 !important; line-height: 1.9 !important;
  color: var(--v-royal) !important;
}

/* B11 · "You May Also Like" sidebar */
.luxury-theme .details ~ * h5, .luxury-theme aside h5 {
  font-family: var(--f-d) !important; font-weight: 500 !important; color: var(--v-plum) !important;
}
/* sidebar product names in serif were oversized (screenshot) — normalize */
.luxury-theme aside .flash-product-title,
.luxury-theme [class*="also-like"] .flash-product-title,
.luxury-theme [class*="also-like"] a {
  font-family: var(--f-b) !important; font-size: 13px !important;
  font-weight: 400 !important; line-height: 1.45 !important;
  color: var(--v-plum) !important;
  display: -webkit-box !important; -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important; overflow: hidden !important;
}

/* B12 · Review stars everywhere on PDP */
.luxury-theme .details .tio-star, .luxury-theme .rating-color { color: var(--c-gold) !important; }

/* ── SCROLL-IN ANIMATION for both pages (JS tags .cxr) ─────── */
.luxury-theme .product-with-bg { opacity: 0; transform: translateY(26px); transition: opacity .9s var(--e), transform .9s var(--e); }
.luxury-theme .product-with-bg.cxr-in { opacity: 1; transform: none; }

/* ── PRODUCT INQUIRY MODAL ──────────────────────────────────── */
.slns-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.slns-modal.open {
  display: flex;
}
.slns-modal__backdrop {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(11, 9, 8, 0.75);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  animation: slnsFadeIn 0.3s ease both;
}
.slns-modal__content {
  position: relative;
  background: rgba(42, 18, 48, 0.98);
  border: 1px solid rgba(198, 161, 91, 0.25);
  max-width: 500px;
  width: 100%;
  padding: 36px;
  color: #fff;
  z-index: 1010;
  box-shadow: 0 32px 80px rgba(0,0,0,0.5);
  animation: slnsScaleIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) both;
}
@keyframes slnsFadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes slnsScaleIn { from { opacity: 0; transform: scale(0.95) translateY(10px); } to { opacity: 1; transform: scale(1) translateY(0); } }

.slns-modal__close {
  position: absolute;
  top: 16px;
  right: 20px;
  background: none;
  border: none;
  color: rgba(255,255,255,0.6);
  font-size: 28px;
  cursor: pointer;
  transition: color 0.2s;
}
.slns-modal__close:hover {
  color: var(--c-gold-hi);
}
.slns-modal__title {
  font-family: var(--f-d);
  font-size: 28px;
  color: var(--c-gold-hi);
  margin: 0 0 8px 0;
  text-align: center;
}
.slns-modal__desc {
  font-family: var(--f-b);
  font-size: 13px;
  color: rgba(255,255,255,0.7);
  text-align: center;
  margin-bottom: 24px;
  line-height: 1.5;
}
.slns-modal__field {
  margin-bottom: 18px;
}
.slns-modal__field label {
  display: block;
  font-family: var(--f-b);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--c-gold);
  margin-bottom: 6px;
}
.slns-modal__field input, .slns-modal__field textarea {
  width: 100%;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  font-family: var(--f-b);
  font-size: 14px;
  padding: 10px 16px;
  outline: none;
  transition: border-color 0.2s;
  box-sizing: border-box;
}
.slns-modal__field input:focus, .slns-modal__field textarea:focus {
  border-color: var(--c-gold-hi);
}
.slns-modal__submit {
  width: 100%;
  background: var(--c-gold);
  border: 1px solid var(--c-gold);
  color: var(--v-plum);
  font-family: var(--f-b);
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 12px;
  cursor: pointer;
  transition: all 0.3s;
  margin-top: 10px;
}
.slns-modal__submit:hover {
  background: var(--c-gold-hi);
  border-color: var(--c-gold-hi);
  transform: translateY(-1px);
}
.slns-modal__divider {
  text-align: center;
  position: relative;
  margin: 24px 0 16px 0;
}
.slns-modal__divider::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(255,255,255,0.15);
  z-index: 1;
}
.slns-modal__divider span {
  position: relative;
  background: rgba(42, 18, 48, 1);
  padding: 0 12px;
  font-family: var(--f-b);
  font-size: 10px;
  letter-spacing: 0.1em;
  color: rgba(255,255,255,0.4);
  z-index: 2;
}
.slns-modal__direct {
  display: flex;
  justify-content: center;
  gap: 20px;
}
.slns-modal__direct-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--f-b);
  font-size: 13px;
  color: rgba(255,255,255,0.8);
  text-decoration: none;
  transition: color 0.2s;
}
.slns-modal__direct-item:hover {
  color: var(--c-gold-hi);
  text-decoration: none;
}
.slns-modal__direct-item i {
  color: var(--c-gold);
}

/* ── 13 · HOME PAGE SECTIONS & TABS REFINED REDESIGN ── */
.cxf__tab {
    font-family: 'Jost', sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 500 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #6F6A62 !important;
}
.cxf__tab.active,
.cxf__tab:hover {
    color: #4E2160 !important; /* active deep purple */
}
.cxz--black .cxf__tab {
    color: #A39D93 !important;
}
.cxz--black .cxf__tab.active,
.cxz--black .cxf__tab:hover {
    color: #FBF9FC !important;
}
.cxf__tab::after {
    background: #D9A74A !important; /* gold indicator line */
}
.cxf__tab sup {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-style: italic !important;
    color: #D9A74A !important;
}

/* circular weaves labels */
.cxc__nm {
    font-family: 'Jost', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

/* view all links next to headings */
.cx-link {
    font-family: 'Jost', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.25em !important;
    text-transform: uppercase !important;
    color: #7A3E96 !important; /* luxury purple */
}
.cxz--black .cx-link {
    color: #D9A74A !important; /* gold for black sections */
}
.cx-link:hover {
    color: #4E2160 !important;
}
.cxz--black .cx-link:hover {
    color: #E3C88A !important;
}

/* lists styling overrides (Best Sellings / Top Rated) */
.cxl__title {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 2.1rem !important;
    font-weight: 400 !important;
    color: #FBF9FC !important; /* glowing porcelain */
    letter-spacing: 0.02em !important;
}
.cxl__idx {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-style: italic !important;
    font-weight: 400 !important;
    color: rgba(217, 167, 74, 0.4) !important;
}
.cxl__nm {
    font-family: 'Jost', sans-serif !important;
    font-weight: 400 !important;
    font-size: 13.5px !important;
    color: #E9D9F0 !important; /* soft lilac text */
}
.cxl__pr {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 500 !important;
    font-size: 15.5px !important;
    color: #D9A74A !important; /* gold price values */
}

/* ═══════════════════════════════════════════════════════════════
   STRICT MOBILE VIEWPORT & ZERO HORIZONTAL OVERFLOW PROTECTION
   ═══════════════════════════════════════════════════════════════ */
html, body {
    max-width: 100% !important;
    overflow-x: hidden !important;
    position: relative !important;
}

body.luxury-theme {
    max-width: 100% !important;
    overflow-x: hidden !important;
    width: 100% !important;
}

.luxury-theme *, .luxury-theme *::before, .luxury-theme *::after {
    max-width: 100vw;
}

@media (max-width: 991px) {
    html, body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
    
    .container, .container-fluid, .row, .slns-wrap, .slns-main, .slns-header, .luxury-header, .luxury-footer {
        max-width: 100% !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
    }
    
    .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    .slns-header-search-wrap,
    .slns-tools,
    .slns-logo {
        max-width: 100% !important;
    }
    
    .slns-wrap {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    
    .search-form-mobile {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    
    .owl-carousel, .slick-slider, .swiper-container {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
}
