:root {
  /* ══════════════════════════════════════════════════════
     STABLE LUXURY E-COMMERCE DESIGN TOKENS
  ══════════════════════════════════════════════════════ */
  --stable-ink: #1e150f;
  --stable-paper: #fdfbf7;
  --stable-surface: #ffffff;
  --stable-line: rgba(180, 130, 60, 0.22);
  --stable-line-light: rgba(0, 0, 0, 0.05);
  --stable-green: #244b3d;
  --stable-red: #9b2d30;
  --stable-gold: #c5a880;
  --stable-gold-hover: #967444;
  --stable-muted: #6b635b;
  --stable-choco: #1e150f;

  /* Typography */
  --font-serif: "Italiana", "Playfair Display", Georgia, serif;
  --font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --radius-sm: 2px;
  --radius-md: 4px;
}

* { box-sizing: border-box; }
html {
  scroll-behavior: smooth;
  overflow-x: clip;
}

body.catalog-stable {
  margin: 0;
  overflow-x: clip;
  color: var(--stable-ink);
  background: var(--stable-paper);
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.stable-modal-open { overflow: hidden; }

/* ─── Accessibility & Base Elements ─── */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.skip-to-content:focus {
  position: fixed !important;
  z-index: 120;
  top: 8px;
  left: 8px;
  width: auto !important;
  height: auto !important;
  padding: 10px 14px !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  color: #fff;
  background: var(--stable-ink);
  white-space: normal !important;
}

body.catalog-stable button,
body.catalog-stable input,
body.catalog-stable select { font: inherit; }
body.catalog-stable button,
body.catalog-stable a,
body.catalog-stable input,
body.catalog-stable select { touch-action: manipulation; }
body.catalog-stable img { display: block; max-width: 100%; }
body.catalog-stable a { color: inherit; }

/* ─── Announcement Bar ─── */
.stable-announcement {
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 7px 16px;
  color: #f7ede1;
  background: #140e09;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(197, 168, 128, 0.2);
}

/* ─── Stable Luxury Navigation Header (Sticky, Z-Index 100) ─── */
.stable-header {
  position: sticky;
  top: 0;
  z-index: 100;
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(8px, 1.2vw, 18px);
  padding: 10px clamp(12px, 2.5vw, 36px);
  border-bottom: 1px solid rgba(197, 168, 128, 0.25);
  background: rgba(253, 251, 247, 0.98);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 4px 20px rgba(25, 18, 12, 0.03);
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.stable-logo {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  color: var(--stable-ink);
  font-family: var(--font-serif);
  font-size: 28px;
  line-height: 0.92;
  letter-spacing: 2px;
  text-decoration: none;
  flex-shrink: 0;
  transition: opacity 0.2s ease;
}

.stable-logo:hover { opacity: 0.85; }

.stable-logo small {
  margin-top: 5px;
  font: 600 7.5px/1 var(--font-sans);
  letter-spacing: 2px;
  color: #97641d;
  text-transform: uppercase;
}

.stable-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(6px, 1vw, 16px);
  min-width: 0;
}

.stable-nav a,
.stable-nav button {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--stable-ink);
  white-space: nowrap;
  transition: color 0.2s ease;
  background: transparent;
  border: 0;
  padding: 6px 0;
  cursor: pointer;
}

.stable-nav a:hover,
.stable-nav button:hover {
  color: #97641d;
}

.stable-nav__mega-wrap {
  position: relative;
}

.stable-header__actions {
  display: flex;
  align-items: center;
  gap: clamp(4px, 0.6vw, 8px);
  flex-shrink: 0;
  position: relative;
  z-index: 10;
}

@media (max-width: 1360px) {
  .stable-nav .stable-track-nav-link {
    display: none;
  }
  .stable-nav {
    gap: clamp(4px, 0.8vw, 12px);
  }
}

.stable-header__btn {
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 12px;
  border: 1px solid rgba(197, 168, 128, 0.35);
  border-radius: 999px;
  color: var(--stable-ink);
  background: #ffffff;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);
}

.stable-header__btn:hover {
  border-color: var(--stable-ink);
  background: #fdfaf6;
  transform: translateY(-1px);
  box-shadow: 0 3px 10px rgba(25, 18, 12, 0.08);
}

.stable-header__btn--icon {
  width: 36px;
  padding: 0;
  font-size: 14px;
}

.stable-header__btn--bag {
  background: var(--stable-ink);
  color: #ffffff;
  border-color: var(--stable-ink);
}

.stable-header__btn--bag:hover {
  background: #382518;
  border-color: #382518;
  color: #ffffff;
}

.header-badge {
  display: inline-grid;
  place-items: center;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 999px;
  font-size: 9px;
  font-weight: 700;
  background: #c5a880;
  color: #19120c;
}

.stable-header__btn--bag .header-badge {
  background: #ffffff;
  color: var(--stable-ink);
}

.stable-header__menu {
  display: none;
  align-items: center;
  gap: 6px;
  height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(197, 168, 128, 0.35);
  border-radius: 999px;
  background: #ffffff;
  color: var(--stable-ink);
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.2s ease;
}

.stable-header__menu:hover {
  border-color: var(--stable-ink);
  background: #fdfaf6;
}

.stable-header__menu .menu-icon {
  font-size: 14px;
}

/* ─── Stable Luxury Hero Section ─── */
.stable-hero {
  position: relative;
  min-height: clamp(500px, 68vh, 760px);
  display: grid;
  align-items: end;
  overflow: hidden;
  color: #fff;
  background: #1e0a02;
}

.stable-hero__backdrop {
  position: absolute;
  inset: 0;
}

.stable-hero__backdrop img,
.stable-hero > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 44%;
}

.stable-hero__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.75), rgba(0,0,0,.25) 70%), linear-gradient(0deg, rgba(0,0,0,.45), transparent 50%);
}

.stable-hero__float { display: none !important; }

.stable-hero__content {
  position: relative;
  z-index: 2;
  width: min(680px, 90%);
  padding: clamp(48px, 8vw, 110px) clamp(20px, 7vw, 100px);
}

.stable-hero__content > p:first-child {
  margin: 0 0 10px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: #f3e5cc;
}

.stable-hero h1 {
  max-width: 620px;
  margin: 0;
  font: 400 clamp(44px, 7vw, 88px)/0.96 var(--font-serif);
  letter-spacing: 0;
  text-wrap: balance;
  color: #fff;
}

.stable-hero__content > p:nth-of-type(2) {
  max-width: 510px;
  margin: 18px 0 26px;
  font-size: clamp(14px, 1.5vw, 17px);
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
}

.stable-hero__content > div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ─── Standard Clean Buttons ─── */
.stable-button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 22px;
  border: 1px solid var(--stable-ink);
  border-radius: var(--radius-sm);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.2s ease;
}

.stable-button--light {
  border-color: #fff;
  color: var(--stable-ink) !important;
  background: #fff;
}

.stable-button--light:hover {
  background: #f4ede1;
  border-color: #f4ede1;
}

.stable-button--line {
  border-color: rgba(255, 255, 255, 0.72);
  color: #fff !important;
  background: transparent;
}

.stable-button--line:hover {
  background: rgba(255, 255, 255, 0.15);
  border-color: #fff;
}

.stable-button--dark {
  border-color: var(--stable-ink);
  color: #fff !important;
  background: var(--stable-ink);
}

.stable-button--dark:hover {
  background: var(--stable-gold-hover);
  border-color: var(--stable-gold-hover);
}

.stable-button--plain {
  background: transparent;
  border-color: var(--stable-line);
}

.stable-hero__progress {
  position: absolute;
  z-index: 2;
  right: clamp(18px, 4vw, 58px);
  bottom: 30px;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 10px;
}

.stable-hero__progress i {
  width: 70px;
  height: 2px;
  background: rgba(255, 255, 255, 0.3);
  display: block;
}

.stable-hero__progress span {
  font-size: 11px;
}

/* ─── Atelier Marquee ─── */
.atelier-marquee {
  background: #140d08;
  color: #eeddc4;
  padding: 10px 0;
  overflow: hidden;
  border-top: 1px solid var(--stable-line);
  border-bottom: 1px solid var(--stable-line);
}

.atelier-marquee > div {
  display: flex;
  align-items: center;
  gap: 32px;
  white-space: nowrap;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.atelier-marquee i {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--stable-gold);
  display: inline-block;
}

/* ─── Standard Layout Sections & Wrapper Normalization ─── */
#main,
main {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  overflow-x: clip;
}

.category-rail-section,
.stable-products,
.home-products,
.living-deck,
.signature-edit,
.collection-main,
.product-page,
.stable-page {
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 40px 5% !important;
  box-sizing: border-box !important;
}

.category-rail-section {
  padding-top: 30px !important;
  padding-bottom: 24px !important;
}

.stable-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--stable-line);
  padding-bottom: 14px;
}

.stable-section-heading p,
.signature-edit__copy > p,
.living-deck__intro > p {
  margin: 0 0 6px;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 1.6px;
  color: var(--stable-gold-hover);
  text-transform: uppercase;
}

.stable-section-heading h2,
.living-deck__intro h2,
.signature-edit__copy h2 {
  margin: 0;
  font: 400 clamp(28px, 3.5vw, 42px)/1.1 var(--font-serif);
  letter-spacing: 0;
  color: var(--stable-ink);
}

.stable-section-heading > a {
  font-size: 11.5px;
  font-weight: 700;
  text-underline-offset: 4px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--stable-ink);
}

.stable-category-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(112px, 1fr);
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 8px;
  scrollbar-width: thin;
}

.stable-category-rail a {
  min-width: 0;
  text-align: center;
  text-decoration: none;
}

.stable-category-rail a > span {
  aspect-ratio: 1;
  display: block;
  overflow: hidden;
  border-radius: 50%;
  background: #f5ece0;
  border: 1px solid var(--stable-line);
}

.stable-category-rail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.25s ease;
}

.stable-category-rail a:hover img {
  transform: scale(1.04);
}

.stable-category-rail strong {
  display: block;
  margin-top: 8px;
  font-size: 12px;
  font-weight: 600;
}

.stable-category-rail small {
  display: block;
  margin-top: 2px;
  color: var(--stable-muted);
  font-size: 9.5px;
}

/* ══════════════════════════════════════════════════════
   STRICT UNIFORM PRODUCT CATALOG GRID
══════════════════════════════════════════════════════ */
.commerce-product-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 1279px) {
  .commerce-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1099px) {
  .commerce-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .commerce-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1rem 0.6rem !important;
  }
}

.stable-shop-intents { display: none !important; }

/* ─── Standard Identical-Height Product Card ─── */
.stable-card {
  min-width: 0;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: var(--stable-surface);
  border: 1px solid var(--stable-line);
  border-radius: var(--radius-sm);
  overflow: hidden !important;
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  box-sizing: border-box !important;
}

.stable-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(20, 15, 10, 0.08);
  border-color: rgba(180, 130, 60, 0.45);
}

.stable-card__media {
  position: relative;
  aspect-ratio: 4 / 5 !important;
  width: 100% !important;
  overflow: hidden !important;
  background: #fdfaf6;
  display: flex;
  align-items: center;
  justify-content: center;
}

.stable-card__media > a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}

.stable-card__image {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  padding: 0 !important;
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.stable-card__image--secondary {
  opacity: 0;
}

@media (hover: hover) and (pointer: fine) {
  .stable-card__media:hover .stable-card__image--secondary { opacity: 1; }
  .stable-card__media:hover .stable-card__image--primary:not(:has(+ .stable-card__image--secondary)) {
    transform: scale(1.035);
  }
}

.stable-card__badge {
  position: absolute;
  top: 8px;
  left: 8px;
  padding: 4px 7px;
  color: #fff;
  background: var(--stable-red);
  font-size: 8px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  border-radius: 2px;
  z-index: 2;
}

.stable-card__badge--sold-out {
  background: #991b1b;
  box-shadow: 0 2px 8px rgba(153, 27, 27, 0.4);
}

.stable-card__sold-out-overlay {
  position: absolute;
  inset: 0;
  background: rgba(25, 13, 6, 0.52);
  backdrop-filter: blur(2px);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  z-index: 1;
}

.stable-card__sold-out-overlay span {
  display: inline-block;
  padding: 6px 14px;
  background: rgba(18, 12, 8, 0.85);
  border: 1px solid rgba(212, 168, 67, 0.4);
  color: #fdfaf6;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  border-radius: 2px;
}

.stable-card.is-sold-out .stable-card__image {
  filter: grayscale(40%) contrast(90%);
  opacity: 0.85;
}

.stable-card__wish {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  font-size: 16px;
  cursor: pointer;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}

.stable-card__wish:hover {
  background: #fff;
  border-color: var(--stable-gold);
}

.stable-card__wish.is-active {
  color: var(--stable-red);
}

.stable-card__quick {
  position: absolute;
  right: 8px;
  bottom: 8px;
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  border: 1px solid rgba(23, 23, 20, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 3px 12px rgba(23, 23, 20, 0.08);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  cursor: pointer;
  z-index: 2;
  transition: all 0.2s ease;
}

.stable-card__quick:hover {
  background: var(--stable-ink);
  color: #fff;
}

.stable-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 12px 14px 14px;
  background: #ffffff;
  border-top: 1px solid var(--stable-line-light);
}

.stable-card__category {
  margin-bottom: 4px;
  color: #75736c;
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.stable-card__title {
  min-height: 36px;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  color: var(--stable-ink);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 6px;
  transition: color 0.2s ease;
}

.stable-card__title:hover {
  color: var(--stable-gold-hover);
}

.stable-card__price {
  min-height: 22px;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px;
  margin-bottom: 12px;
  font-size: 11px;
}

.stable-card__price strong {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--stable-ink);
}

.stable-card__price s {
  color: #77766f;
}

.stable-card__price span {
  color: var(--stable-red);
}

.stable-card__add {
  width: 100%;
  min-height: 36px;
  margin-top: auto;
  border: 1px solid var(--stable-ink);
  color: #fff;
  background: var(--stable-ink);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: all 0.2s ease;
}

.stable-card__add:hover {
  background: var(--stable-gold-hover);
  border-color: var(--stable-gold-hover);
}

.stable-card__add--sold-out {
  border-color: #cbd5e1 !important;
  color: #94a3b8 !important;
  background: #f1f5f9 !important;
  cursor: not-allowed !important;
  opacity: 0.85;
}

.stable-card a.stable-card__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
}

/* ─── Interactive Storefront Filter Bar & Real-time Live Status ─── */
.storefront-live-bar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin: 0 0 24px; padding: 12px 18px; background: rgba(212, 168, 67, 0.08); border: 1px solid rgba(212, 168, 67, 0.25); border-radius: 4px; }
.storefront-live-status { display: none !important; align-items: center; gap: 8px; font-size: 11px; font-weight: 600; color: #52311f; letter-spacing: 0.5px; text-transform: uppercase; }
.storefront-live-dot { width: 8px; height: 8px; background: #22c55e; border-radius: 50%; box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.25); animation: pulse-live 2s infinite ease-in-out; }
@keyframes pulse-live { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.3); opacity: 0.6; } }

.storefront-filter-chips {
  display: flex;
  align-items: center;
  gap: 10px;
  overflow-x: auto;
  padding: 4px 2px 18px;
  scrollbar-width: none;
  -ms-overflow-style: none;
  margin-bottom: 12px;
}
.storefront-filter-chips::-webkit-scrollbar { display: none; }
.storefront-filter-chips.is-collapsed { display: none !important; }

.filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 18px;
  border: 1px solid rgba(197, 168, 128, 0.35);
  border-radius: 999px;
  background: #ffffff;
  color: var(--stable-ink);
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s ease;
  box-shadow: 0 1px 4px rgba(25, 18, 12, 0.03);
}

.filter-chip:hover {
  border-color: var(--stable-ink);
  background: #fdfaf6;
  transform: translateY(-1px);
}

.filter-chip.is-active {
  background: var(--stable-ink);
  color: #ffffff;
  border-color: var(--stable-ink);
  box-shadow: 0 4px 14px rgba(25, 18, 12, 0.18);
}

.filter-chip .chip-count {
  font-size: 9px;
  padding: 2px 7px;
  border-radius: 999px;
  background: rgba(197, 168, 128, 0.2);
  color: #845517;
  font-weight: 700;
}

.filter-chip.is-active .chip-count {
  background: rgba(255, 255, 255, 0.25);
  color: #ffffff;
}

/* ─── Signature Spotlight ─── */
.signature-edit {
  min-height: 540px;
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  color: #fff;
  background: #19120c;
  border: 1px solid var(--stable-line);
  margin: 32px auto;
  width: min(100%, 1500px);
}

.signature-edit__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(36px, 6vw, 80px);
}

.signature-edit__copy h2 {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(34px, 4.5vw, 64px);
  line-height: 1;
  color: #ffffff;
}

.signature-edit__product {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(240px, 0.85fr);
  align-items: center;
  gap: clamp(20px, 4vw, 50px);
  padding: 36px clamp(20px, 4vw, 60px) 36px 0;
}

.signature-edit__image {
  height: min(65vh, 520px);
  overflow: hidden;
  background: #fdfaf6;
  border: 1px solid var(--stable-line);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.signature-edit__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.signature-edit__product h3 {
  margin: 10px 0;
  font-family: var(--font-serif);
  font-size: clamp(28px, 3.5vw, 48px);
  line-height: 1.1;
  color: #fff;
}

.signature-edit__product p {
  max-width: 400px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.85);
  font-size: 13px;
}

.signature-edit__price {
  display: flex;
  gap: 12px;
  align-items: baseline;
  margin: 14px 0 20px;
}

.signature-edit__price strong {
  font-size: 20px;
  font-weight: 700;
  color: #f3e5cc;
}

.signature-edit__price s {
  opacity: 0.55;
  font-size: 14px;
}

/* ─── Reassurance Cards ─── */
.stable-reassurance {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--stable-line);
  border-bottom: 1px solid var(--stable-line);
  background: var(--stable-surface);
  margin-top: 40px;
}

.reassurance-card {
  padding: clamp(28px, 4vw, 42px) clamp(18px, 3vw, 36px);
  border-right: 1px solid var(--stable-line);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  transition: background 0.2s ease;
}

.reassurance-card:last-child { border-right: 0; }
.reassurance-card:hover { background: #fdfaf6; }

.reassurance-card__icon {
  font-size: 24px;
  margin-bottom: 14px;
}

.reassurance-card strong {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 700;
  color: var(--stable-ink);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.reassurance-card span {
  color: var(--stable-muted);
  font-size: 12px;
  line-height: 1.55;
}
.stable-footer { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 34px; padding: 50px clamp(20px, 5vw, 76px) 26px; color: #fff; background: #2b1a0e; }
.stable-footer > div { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.stable-footer p { max-width: 430px; color: #bcbab1; font-size: 12px; line-height: 1.6; }
.stable-footer a, .stable-footer span { color: #d8d5cb; font-size: 11px; text-decoration: none; }
.stable-footer > small { grid-column: 1 / -1; padding-top: 24px; border-top: 1px solid #37362f; color: #8c8a82; font-size: 9px; }
.stable-logo--footer { align-items: flex-start; color: #fff !important; }
.phase-footer { display: block; padding: 0; }
.phase-footer__finale { position: relative; min-height: 680px; display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; overflow: hidden; padding: clamp(48px, 8vw, 120px); border-bottom: 1px solid #343630; }
.phase-footer__finale > div { position: relative; z-index: 2; }
.phase-footer__finale p { margin: 0 0 12px; font-size: 9px; font-weight: 700; letter-spacing: 1.8px; }
.phase-footer__finale h2 { margin: 0 0 28px; font: 400 clamp(64px, 9vw, 130px)/.83 "Italiana", serif; letter-spacing: 0; }
.phase-footer__finale figure { position: relative; z-index: 1; width: min(72%, 540px); aspect-ratio: 4 / 5; justify-self: center; margin: 0; }
.phase-footer__finale figure span { position: absolute; inset: 8%; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; }
.phase-footer__finale figure span::after { position: absolute; inset: 14%; border: 1px solid rgba(255,255,255,.12); border-radius: inherit; content: ""; }
.phase-footer__finale figure img { position: relative; width: 100%; height: 100%; object-fit: contain; background: rgba(255,255,255,.06); box-shadow: 0 34px 90px rgba(0,0,0,.3); }
.phase-footer__finale > strong { position: absolute; right: -2vw; bottom: -5vw; color: rgba(255,255,255,.045); font: 400 23vw/.7 "Italiana", serif; letter-spacing: 0; }
.phase-footer__links { display: grid; grid-template-columns: 2fr repeat(3, 1fr); gap: 34px; padding: 50px clamp(20px, 5vw, 76px) 30px; }
.phase-footer__links > div { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
.phase-footer > small { display: block; margin: 0 clamp(20px, 5vw, 76px); padding: 24px 0; border-top: 1px solid #37362f; color: #8c8a82; font-size: 9px; }
.stable-backdrop {
  position: fixed;
  z-index: 500;
  inset: 0;
  background: rgba(18, 12, 8, 0.6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.stable-drawer {
  position: fixed;
  z-index: 600;
  top: 0;
  bottom: 0;
  right: 0;
  width: min(450px, 100%);
  padding: 24px;
  overflow-y: auto;
  visibility: hidden;
  transform: translateX(100%);
  background: var(--stable-paper);
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.25s;
  box-shadow: -8px 0 32px rgba(0, 0, 0, 0.15);
}
.stable-drawer--menu { right: auto; left: 0; transform: translateX(-100%); }
.stable-drawer.is-open { visibility: visible; transform: translateX(0); }
.stable-layer__head { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-bottom: 16px; border-bottom: 1px solid var(--stable-line); }
.stable-layer__head h2 { margin: 0; font: 400 29px/1 "Italiana", serif; letter-spacing: 0; }
.stable-layer__head button,
.stable-quick__close { width: 40px; height: 40px; border: 0; background: transparent; font-size: 26px; cursor: pointer; }
.stable-drawer--menu nav { display: flex; flex-direction: column; }
.stable-drawer--menu { width: min(430px, 100%); }
.stable-drawer--menu .stable-layer__head small { color: #6a6962; font-size: 8px; font-weight: 700; letter-spacing: 1.3px; }
.stable-menu-utility { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 14px 0; }
.stable-menu-utility button,
.stable-menu-utility a {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 10px;
  border: 1px solid var(--stable-line);
  background: #fff;
  font-size: 9px;
  text-decoration: none;
  cursor: pointer;
}
.stable-menu-utility a span { min-width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--stable-ink); font-size: 8px; }
.stable-drawer--menu nav > small { padding: 8px 0 3px; color: #6a6962; font-size: 8px; font-weight: 700; letter-spacing: 1.3px; }
.stable-drawer--menu nav a { display: flex; justify-content: space-between; padding: 16px 0; border-bottom: 1px solid var(--stable-line); font-size: 14px; text-decoration: none; }
.stable-drawer--menu nav a span { color: #77766f; font-size: 9px; }
.stable-menu-feature { display: grid; grid-template-columns: 92px 1fr; gap: 14px; align-items: center; margin-top: 18px; padding: 10px; background: #f5e8d0; text-decoration: none; }
.stable-menu-feature img { width: 92px; aspect-ratio: 4 / 5; object-fit: contain; background: #fff; }
.stable-menu-feature span { min-width: 0; }
.stable-menu-feature small,
.stable-menu-feature strong,
.stable-menu-feature em { display: block; }
.stable-menu-feature small { color: #5f675f; font-size: 7px; font-weight: 700; letter-spacing: 1px; }
.stable-menu-feature strong { margin: 6px 0; font: 400 18px/1.1 "Italiana", serif; }
.stable-menu-feature em { font-size: 8px; font-style: normal; font-weight: 700; }
.stable-menu-help { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--stable-line); }
.stable-menu-help p { margin: 0 0 7px; font-size: 10px; font-weight: 700; }
.stable-menu-help a { color: var(--stable-green); font-size: 10px; font-weight: 700; text-underline-offset: 3px; }
.stable-search-box { display: block; margin: 20px 0; }
.stable-search-box input { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid var(--stable-line); background: #fff; }
.stable-search-results { display: grid; gap: 8px; }
.stable-search-results > a { display: grid; grid-template-columns: 62px 1fr; gap: 12px; align-items: center; padding-bottom: 8px; border-bottom: 1px solid var(--stable-line); text-decoration: none; }
.stable-search-results img { width: 62px; height: 76px; object-fit: contain; background: #f3e5cc; }
.stable-search-results strong { display: block; font-size: 12px; }
.stable-search-price { margin-top: 4px; font-size: 10px; }
.stable-cart-lines { padding: 10px 0; }
.stable-cart-line { display: grid; grid-template-columns: 86px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--stable-line); }
.stable-cart-line img { width: 86px; height: 108px; object-fit: contain; background: #f3e5cc; }
.stable-cart-line > div { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
.stable-cart-line a { font-size: 12px; font-weight: 700; text-decoration: none; }
.stable-cart-line small { color: #6c6b65; font-size: 9px; }
.stable-cart-line strong { font-size: 12px; }
.stable-qty { display: inline-grid; grid-template-columns: 32px 34px 32px; align-items: center; text-align: center; border: 1px solid var(--stable-line); }
.stable-qty button { width: 32px; height: 30px; border: 0; background: transparent; cursor: pointer; }
.stable-qty span { font-size: 11px; }
.stable-cart-footer { position: static; display: grid; gap: 12px; padding: 18px 0 24px; background: transparent; }
.stable-drawer--cart .stable-layer__head { position: sticky; top: -24px; z-index: 10; background: var(--stable-paper); margin-top: -24px; padding: 24px 0 16px; border-bottom: 1px solid var(--stable-line); }
.stable-cart-total { display: flex; justify-content: space-between; }
.stable-cart-footer p { margin: 0; color: #67665f; font-size: 10px; line-height: 1.5; }
.stable-cart-note { display: grid; gap: 6px; }
.stable-cart-note > span { display: flex; justify-content: space-between; font-size: 9px; font-weight: 700; }
.stable-cart-note > span small { color: #76756e; font-weight: 500; }
.stable-cart-note textarea { width: 100%; resize: vertical; padding: 9px 10px; border: 1px solid var(--stable-line); background: #fff; font: inherit; font-size: 10px; line-height: 1.45; }
.stable-quick { position: fixed; z-index: 700; top: 50%; left: 50%; width: min(900px, calc(100% - 28px)); max-height: min(760px, calc(100vh - 28px)); display: grid; grid-template-columns: 1.05fr .95fr; overflow: auto; visibility: hidden; transform: translate(-50%, -48%); opacity: 0; background: var(--stable-paper); transition: opacity .18s, transform .18s, visibility .18s; box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25); border-radius: var(--radius-md); }
.stable-quick.is-open { visibility: visible; transform: translate(-50%, -50%); opacity: 1; }
.stable-quick__close { position: absolute; z-index: 2; top: 8px; right: 8px; border-radius: 50%; background: rgba(255,255,255,.9); }
.stable-quick__gallery { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; background: #f3e5cc; }
.stable-quick__gallery img { min-width: 100%; height: 100%; max-height: 730px; object-fit: contain; scroll-snap-align: start; }
.stable-quick__info { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(28px, 5vw, 60px); }
.stable-quick__info > p:first-child { margin: 0; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.stable-quick__info h2 { margin: 8px 0; font: 400 clamp(32px, 4vw, 52px)/1 "Italiana", serif; letter-spacing: 0; }
.stable-quick__info > small { color: #737169; font-size: 9px; }
.stable-quick__info > p { line-height: 1.6; }
.stable-quick__price { display: flex; gap: 8px; margin: 14px 0 4px; }
.stable-quick__actions { width: 100%; display: grid; gap: 8px; margin-top: 16px; }
.stable-notice { margin: 12px 0; padding: 11px; border-left: 3px solid var(--stable-green); background: #f5e8d0; font-size: 10px; line-height: 1.5; }
.stable-toast { position: fixed; z-index: 110; left: 50%; bottom: 24px; max-width: calc(100% - 30px); padding: 10px 16px; visibility: hidden; transform: translate(-50%, 12px); opacity: 0; color: #fff; background: #2b1a0e; font-size: 11px; transition: .2s; }
.stable-toast.is-visible { visibility: visible; transform: translate(-50%, 0); opacity: 1; }
.stable-backdrop { backdrop-filter: blur(4px); }
.stable-drawer--search { width: min(760px, 100%); }
.stable-drawer--cart { width: min(490px, 100%); }
.stable-layer__head small { display: block; margin-bottom: 5px; color: #6f716b; font-size: 8px; font-weight: 700; letter-spacing: 1.6px; }
.stable-search-box { position: sticky; z-index: 2; top: -20px; display: grid; grid-template-columns: 1fr 44px; padding-top: 18px; background: var(--stable-paper); }
.stable-search-box input { grid-area: 1 / 1 / 2 / 3; padding-right: 48px; font-size: 15px; }
.stable-search-box button { z-index: 1; grid-area: 1 / 2; border: 0; background: transparent; font-size: 20px; cursor: pointer; }
.stable-search-discovery { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--stable-line); }
.stable-search-discovery > div { display: flex; flex-wrap: wrap; gap: 6px; }
.stable-search-discovery span { width: 100%; margin-bottom: 4px; font-size: 8px; font-weight: 700; text-transform: uppercase; }
.stable-search-discovery button, .stable-search-discovery a { padding: 7px 9px; border: 1px solid var(--stable-line); color: var(--stable-ink); background: transparent; font-size: 9px; text-decoration: none; cursor: pointer; }
.stable-search-count { margin: 10px 0 15px; color: #696b65; font-size: 9px; }
.stable-search-results { grid-template-columns: 1fr 1fr; gap: 10px; }
.stable-search-results .stable-card__image { width: 100%; height: 100%; }
.stable-cart-group { margin: 18px 0 0; padding-bottom: 8px; border-bottom: 1px solid var(--stable-line); font-size: 8px; letter-spacing: 1.4px; text-transform: uppercase; }
.stable-cart-line__mode { color: #6b6d66; font-size: 9px; }
.stable-cart-line__links { display: flex; gap: 12px; }
.stable-cart-line__links button { padding: 0; border: 0; background: transparent; font-size: 8px; text-decoration: underline; cursor: pointer; }
.stable-cart-complement { display: grid; grid-template-columns: 54px 1fr auto; gap: 10px; align-items: center; padding: 10px; background: #e9ede8; }
.stable-cart-complement img { width: 54px; height: 66px; object-fit: contain; background: #fff; }
.stable-cart-complement small, .stable-cart-complement strong { display: block; font-size: 8px; }
.stable-cart-complement strong { margin-top: 4px; font-size: 10px; }
.stable-cart-complement > button { padding: 7px; border: 1px solid var(--stable-ink); background: transparent; font-size: 8px; cursor: pointer; }

/* ─── Luxury Packaging & Free Shipping Progress Bar ─── */
.luxury-packaging-bar {
  margin: 8px 0 16px;
  padding: 12px 14px;
  background: rgba(212, 175, 55, 0.08);
  border: 1px solid rgba(212, 175, 55, 0.22);
  border-radius: 4px;
}
.luxury-packaging-text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
  font-size: 10px;
  color: var(--stable-ink);
  line-height: 1.4;
}
.luxury-packaging-text small {
  font-weight: 700;
  color: #a76d20;
}
.luxury-packaging-track {
  width: 100%;
  height: 6px;
  background: rgba(212, 175, 55, 0.2);
  border-radius: 999px;
  overflow: hidden;
}
.luxury-packaging-fill {
  height: 100%;
  background: linear-gradient(90deg, #c5a059, #f4cf6d, #97641d);
  border-radius: 999px;
  transition: width 0.4s ease;
}

/* ─── Craftsmanship Specification Badges ─── */
.quick-craftsmanship-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 10px 0;
}
.spec-tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  background: rgba(212, 175, 55, 0.1);
  border: 1px solid rgba(212, 175, 55, 0.25);
  border-radius: 3px;
  font-size: 9px;
  font-weight: 600;
  color: #714118;
}

.stable-quick__stage { position: relative; min-height: 620px; display: grid; grid-template-columns: 66px 1fr; gap: 12px; padding: 18px; background: #dde4df; }
.stable-quick__gallery { grid-column: 2; min-width: 0; overflow: hidden; }
.stable-quick__gallery figure { min-width: 100%; height: 100%; display: none; margin: 0; }
.stable-quick__gallery figure.is-active { display: block; }
.stable-quick__gallery img { width: 100%; height: 100%; max-height: 690px; object-fit: contain; background: rgba(255,255,255,.5); }
.stable-quick__thumbs { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; gap: 7px; }
.stable-quick__thumbs button { width: 58px; height: 72px; padding: 2px; border: 1px solid transparent; background: transparent; cursor: pointer; }
.stable-quick__thumbs button.is-active { border-color: var(--stable-ink); }
.stable-quick__thumbs img { width: 100%; height: 100%; object-fit: contain; }
.stable-quick__pagination { position: absolute; right: 28px; bottom: 26px; padding: 6px 8px; background: rgba(255,255,255,.9); font-size: 8px; }
.stable-quick__badge { align-self: flex-start; padding: 6px 8px; color: #fff; background: var(--stable-red); font-size: 8px; font-weight: 700; text-transform: uppercase; }
.stable-quick__info details { width: 100%; margin-top: 16px; border-top: 1px solid var(--stable-line); border-bottom: 1px solid var(--stable-line); }
.stable-quick__info summary { padding: 12px 0; font-size: 9px; font-weight: 700; cursor: pointer; }
.stable-quick__info details p { margin: 0 0 12px; font-size: 10px; }
.stable-toast { display: flex; align-items: center; gap: 9px; }
.stable-toast img { width: 34px; height: 42px; object-fit: contain; background: #fff; }
[data-cart-count].is-confirming { animation: stable-bag-confirm 420ms cubic-bezier(.22, 1.2, .36, 1); }
@keyframes stable-bag-confirm { 40% { transform: scale(1.35); } }
.stable-page { min-height: 60vh; padding-top: 38px; }
.stable-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 30px; color: #6d6c65; font-size: 10px; }
.stable-collection-hero { max-width: 850px; margin-bottom: 28px; }
.stable-collection-hero h1,
.stable-wishlist h1 { margin: 0; font: 400 clamp(42px, 6vw, 78px)/1 "Italiana", serif; letter-spacing: 0; }
.stable-collection-hero > p:last-child { max-width: 650px; margin: 13px 0 0; line-height: 1.6; }
.stable-collection-chips { display: flex; gap: 8px; margin: 0 0 18px; overflow-x: auto; padding: 0 0 5px; scrollbar-width: none; }
.stable-collection-chips::-webkit-scrollbar { display: none; }
.stable-collection-chips a { flex: 0 0 auto; min-height: 34px; display: inline-flex; align-items: center; padding: 7px 13px; border: 1px solid var(--stable-line); border-radius: 999px; background: #fff; font-size: 9px; font-weight: 600; text-decoration: none; }
.stable-collection-chips a.is-active { border-color: var(--stable-ink); color: #fff; background: var(--stable-ink); }
.stable-collection-search { max-width: 520px; margin-bottom: 18px; }
.stable-collection-search > label { display: block; margin-bottom: 6px; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.stable-collection-search > div { min-height: 42px; display: grid; grid-template-columns: 28px minmax(0, 1fr) 34px; align-items: center; padding: 0 8px; border: 1px solid var(--stable-line); background: #fff; }
.stable-collection-search input { width: 100%; min-height: 40px; border: 0; outline: 0; background: transparent; font-size: 12px; }
.stable-collection-search button { border: 0; background: transparent; font-size: 20px; cursor: pointer; }
.stable-collection-toolbar { display: flex; align-items: center; justify-content: space-between; min-height: 52px; padding: 8px 0; border-top: 1px solid var(--stable-line); border-bottom: 1px solid var(--stable-line); }
.stable-collection-toolbar strong { font-size: 11px; }
.stable-collection-toolbar__actions { display: flex; align-items: center; gap: 9px; }
.stable-collection-toolbar__actions > button { display: none; min-height: 34px; padding: 7px 12px; border: 1px solid var(--stable-line); background: #fff; font-size: 9px; font-weight: 700; }
.stable-collection-toolbar label { display: flex; align-items: center; gap: 8px; font-size: 10px; }
.stable-collection-toolbar select { min-height: 34px; padding: 0 28px 0 9px; border: 1px solid var(--stable-line); background: #fff; font-size: 10px; }
.stable-collection-layout { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 24px; padding-top: 22px; }
.stable-filters fieldset { display: grid; gap: 8px; margin: 0 0 24px; padding: 0 0 18px; border: 0; border-bottom: 1px solid var(--stable-line); }
.stable-filters legend,
.stable-filters nav > strong { margin-bottom: 10px; font-size: 11px; font-weight: 700; }
.stable-filters label { display: flex; gap: 7px; font-size: 10px; }
.stable-filters nav { display: flex; flex-direction: column; }
.stable-filters nav a { display: flex; justify-content: space-between; padding: 6px 0; font-size: 10px; text-decoration: none; }
.stable-filters nav a.is-active { font-weight: 700; text-decoration: underline; }
.stable-empty { padding: 50px 20px; text-align: center; }
.stable-empty h2, .stable-empty h3 { font-family: "Italiana", serif; font-weight: 400; letter-spacing: 0; }
.stable-pdp { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(330px, .92fr); gap: clamp(28px, 5vw, 76px); }
.stable-pdp__media { min-width: 0; display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 10px; align-items: start; }
.stable-pdp__thumbs { display: grid; gap: 8px; }
.stable-pdp__thumbs button { position: relative; aspect-ratio: 4 / 5; padding: 0; overflow: hidden; border: 1px solid transparent; background: #f3e5cc; cursor: pointer; }
.stable-pdp__thumbs button.is-active { border-color: var(--stable-ink); }
.stable-pdp__thumbs img { width: 100%; height: 100%; object-fit: contain; }
.stable-pdp__play { position: absolute; inset: 50% auto auto 50%; display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; color: #fff; background: rgba(24, 22, 18, .78); transform: translate(-50%, -50%); font-size: 11px; }
.stable-pdp__gallery { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; background: #f3e5cc; }
.stable-pdp__gallery > img,
.stable-pdp__gallery > video { min-width: 100%; aspect-ratio: 4 / 5; object-fit: contain; scroll-snap-align: start; background: #f3e5cc; }
.stable-pdp__gallery-meta { display: flex; justify-content: space-between; padding: 9px 2px 0; color: #6b6a63; font-size: 9px; }
.stable-pdp__gallery-meta small { font-size: inherit; }
.stable-pdp__info { position: sticky; top: 22px; align-self: start; padding-top: 20px; }
.stable-pdp__info > p:first-child { margin: 0; font-size: 10px; font-weight: 700; text-transform: uppercase; }
.stable-pdp h1 { margin: 9px 0; font: 400 clamp(40px, 5vw, 70px)/.98 "Italiana", serif; letter-spacing: 0; }
.stable-pdp__info > small { color: #6d6c65; }
.stable-pdp__meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; color: #6d6c65; font-size: 9px; }
.stable-pdp__meta span { display: inline-flex; align-items: center; gap: 6px; }
.stable-pdp__meta i { width: 7px; height: 7px; border-radius: 50%; background: #4d805b; box-shadow: 0 0 0 3px rgba(77,128,91,.12); }
.stable-pdp__price { display: flex; flex-wrap: wrap; gap: 9px; align-items: baseline; margin: 20px 0; }
.stable-pdp__price strong { font-size: 21px; }
.stable-pdp__price span { color: var(--stable-red); }
.stable-pdp__info > p { max-width: 560px; line-height: 1.7; }
.stable-offer { font-weight: 700; }
.stable-variants { margin: 18px 0; padding: 0; border: 0; }
.stable-variants legend { margin-bottom: 8px; font-size: 11px; font-weight: 700; }
.stable-variants label { display: inline-flex; margin: 0 7px 7px 0; padding: 9px; border: 1px solid var(--stable-line); font-size: 10px; }
.stable-pdp__qty { display: flex; align-items: center; justify-content: space-between; max-width: 360px; margin: 20px 0; font-size: 11px; }
.stable-pdp__actions { max-width: 520px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.stable-pdp__actions .stable-button--plain { grid-column: 1 / 2; }
.stable-pdp__assurance { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 20px; border: 1px solid var(--stable-line); }
.stable-pdp__assurance div { min-width: 0; padding: 12px 10px; border-right: 1px solid var(--stable-line); }
.stable-pdp__assurance div:last-child { border: 0; }
.stable-pdp__assurance strong,
.stable-pdp__assurance span { display: block; }
.stable-pdp__assurance strong { margin-bottom: 4px; font-size: 9px; }
.stable-pdp__assurance span { color: #686760; font-size: 8px; line-height: 1.35; }
.stable-delivery-check { margin-top: 16px; padding: 16px; background: #f5e8d0; }
.stable-delivery-check > div small,
.stable-delivery-check > div strong { display: block; }
.stable-delivery-check > div small { color: #52685d; font-size: 7px; font-weight: 700; letter-spacing: 1.1px; }
.stable-delivery-check > div strong { margin-top: 4px; font: 400 19px/1.1 "Italiana", serif; }
.stable-delivery-check form { display: grid; grid-template-columns: 1fr auto; margin-top: 12px; }
.stable-delivery-check input { min-width: 0; min-height: 42px; padding: 9px 11px; border: 1px solid #aab6ae; background: #fff; font-size: 11px; }
.stable-delivery-check input[aria-invalid="true"] { border-color: var(--stable-red); }
.stable-delivery-check button { min-height: 42px; padding: 8px 15px; border: 1px solid var(--stable-green); color: #fff; background: var(--stable-green); font-size: 10px; font-weight: 700; cursor: pointer; }
.stable-delivery-check > p { margin: 9px 0 0; color: #56605a; font-size: 9px; line-height: 1.45; }
.stable-accordions dl { margin: 8px 0 0; }
.stable-accordions dl div { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-top: 1px solid var(--stable-line); font-size: 9px; }
.stable-accordions dt { color: #74736d; }
.stable-accordions dd { margin: 0; text-align: right; }
.stable-share { border: 0; background: transparent; font-size: 10px; text-decoration: underline; cursor: pointer; }
.stable-accordions { max-width: 620px; margin-top: 24px; border-top: 1px solid var(--stable-line); }
.stable-accordions details { padding: 13px 0; border-bottom: 1px solid var(--stable-line); }
.stable-accordions summary { font-size: 11px; font-weight: 700; cursor: pointer; }
.stable-accordions p { font-size: 11px; line-height: 1.6; }
.stable-products--pdp { padding-right: 0; padding-left: 0; }
.stable-mobile-buy { display: none; }
.stable-wishlist header { margin-bottom: 30px; }
.stable-wishlist header span { display: block; margin-top: 12px; font-size: 11px; }

@media (max-width: 1100px) {
  .stable-nav { display: none; }
  .stable-header__menu { display: inline-flex; }
  .stable-category-rail { grid-auto-columns: 122px; }
  .stable-reassurance { grid-template-columns: repeat(2, 1fr); }
  .stable-reassurance div:nth-child(2) { border-right: 0; }
  .stable-reassurance div:nth-child(-n+2) { border-bottom: 1px solid var(--stable-line); }
}

@media (max-width: 767px) {
  .phase-footer__finale { min-height: 650px; grid-template-columns: 1fr; padding: 56px 16px 30px; }
  .phase-footer__finale h2 { font-size: 65px; }
  .phase-footer__finale figure { width: 74%; margin-top: 30px; }
  .phase-footer__links { grid-template-columns: 1fr 1fr; padding: 40px 16px 24px; }
  .phase-footer__links > div:first-child { grid-column: 1 / -1; }
  .stable-drawer--search, .stable-drawer--cart { width: 100%; padding-bottom: calc(20px + env(safe-area-inset-bottom)); }
  .stable-search-results, .stable-search-discovery { grid-template-columns: 1fr; }
  .stable-quick__stage { min-height: 43svh; grid-template-columns: 1fr; padding: 0; }
  .stable-quick__gallery { grid-column: 1; height: 43svh; }
  .stable-quick__thumbs { display: none; }
  .stable-quick__pagination { right: 12px; bottom: 10px; }
  .stable-quick__info { padding-bottom: calc(20px + env(safe-area-inset-bottom)); }
  .stable-quick__actions { position: sticky; z-index: 2; bottom: calc(-28px - env(safe-area-inset-bottom)); padding: 10px 0 calc(12px + env(safe-area-inset-bottom)); background: var(--stable-paper); }
  .stable-announcement { min-height: 28px; gap: 8px; font-size: 8.5px; padding: 5px 12px; letter-spacing: 1.2px; }
  .stable-header { position: sticky; top: 0; min-height: 54px; padding: 6px 14px; gap: 8px; }
  .stable-logo { font-size: 22px; letter-spacing: 1.8px; }
  .stable-logo small { display: none; }
  .stable-header__actions .stable-header__btn--text,
  .stable-header__actions .stable-header__btn--wish { display: none !important; }
  .stable-header__actions .stable-header__btn--account {
    display: inline-flex !important;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
    font-size: 16px;
    color: var(--stable-ink);
    align-items: center;
    justify-content: center;
    border-radius: 0;
  }
  .stable-header__actions .stable-header__btn--account span[data-account-name] {
    display: none !important;
  }
  .stable-header__btn--icon {
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
    font-size: 18px;
    color: var(--stable-ink);
    border-radius: 0;
  }
  .stable-header__btn--icon:hover {
    background: transparent;
    transform: none;
    box-shadow: none;
  }
  .stable-header__menu {
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
    font-size: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--stable-ink);
    border-radius: 0;
  }
  .stable-header__menu:hover {
    background: transparent;
    border: none;
    transform: none;
  }
  .stable-header__menu .menu-label { display: none; }
  .stable-header__btn--bag {
    height: 32px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.8px;
  }
  .stable-hero { min-height: min(610px, calc(100svh - 125px)); }
  .stable-hero > img { object-position: center; }
  .stable-hero__shade { background: linear-gradient(0deg, rgba(0,0,0,.78), rgba(0,0,0,.04) 78%); }
  .stable-hero__content { width: 100%; padding: 30px 17px 72px; }
  .stable-hero h1 { max-width: 92%; font-size: 46px; }
  .stable-hero__content > p:nth-of-type(2) { max-width: 90%; margin: 12px 0 18px; font-size: 13px; }
  .stable-hero__content > div { flex-direction: column; align-items: flex-start; }
  .stable-hero__progress { right: 14px; bottom: 12px; }
  .category-rail-section, .stable-products, .stable-page { padding: 25px 10px; }
  .category-rail-section { padding-top: 22px; padding-bottom: 16px; }
  .stable-section-heading { margin-bottom: 13px; }
  .stable-section-heading h2 { font-size: 28px; }
  .stable-section-heading > a { font-size: 9px; }
  .stable-category-rail { grid-auto-columns: 92px; gap: 9px; }
  .stable-category-rail strong { font-size: 10px; }
  .commerce-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 1rem 0.6rem !important; }
  .stable-card__body { min-height: 128px; padding-top: 7px; }
  .stable-card__title { min-height: 32px; font-size: 10px; }
  .stable-card__price { min-height: 28px; gap: 4px; margin: 2px 0; font-size: 8px; }
  .stable-card__price strong { font-size: 10px; }
  .stable-card__options { font-size: 7px; }
  .stable-card__quick { min-height: 30px; font-size: 9px; }
  .stable-card__add { min-height: 34px; font-size: 9px; }
  .stable-card__wish { width: 31px; height: 31px; }
  .signature-edit { min-height: 0; grid-template-columns: 1fr; }
  .signature-edit__copy { padding: 36px 18px 20px; }
  .signature-edit__copy h2 { font-size: 42px; }
  .signature-edit__product { grid-template-columns: 1fr; gap: 20px; padding: 18px 18px 38px; }
  .signature-edit__image { height: 440px; }
  .signature-edit__product h3 { font-size: 36px; }
  .stable-editorial { grid-template-columns: 1fr; }
  .stable-editorial > img { max-height: 480px; }
  .stable-editorial > div { padding: 38px 18px; }
  .stable-editorial h2 { font-size: 44px; }
  .stable-reassurance { grid-template-columns: 1fr; }
  .stable-reassurance div { padding: 22px 18px; border-right: 0; border-bottom: 1px solid var(--stable-line); }
  .stable-footer { grid-template-columns: 1fr 1fr; padding: 38px 18px 24px; }
  .stable-footer > div:first-child { grid-column: 1 / -1; }
  .stable-quick { top: auto; bottom: 0; left: 0; width: 100%; max-height: 92svh; grid-template-columns: 1fr; transform: translateY(100%); }
  .stable-quick.is-open { transform: translateY(0); }
  .stable-quick__gallery { height: min(43svh, 390px); }
  .stable-quick__info { padding: 24px 16px 28px; }
  .stable-quick__info h2 { font-size: 36px; }
  .stable-collection-hero { margin-bottom: 20px; }
  .stable-collection-hero h1 { font-size: 48px; }
  .stable-collection-toolbar { align-items: center; }
  .stable-collection-toolbar__actions > button { display: inline-flex; align-items: center; }
  .stable-collection-toolbar label > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .stable-collection-layout { grid-template-columns: 1fr; gap: 14px; }
  .stable-filters { display: none; overflow: visible; }
  .stable-filters.is-open { display: block; }
  .stable-filters fieldset { min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 8px; padding-bottom: 12px; }
  .stable-filters fieldset legend { grid-column: 1 / -1; float: none; margin: 0 0 4px; }
  .stable-filters label { min-width: 0; align-items: flex-start; gap: 5px; font-size: 9px; line-height: 1.25; }
  .stable-filters input { flex: 0 0 auto; margin: 1px 0 0; }
  .stable-filters nav { display: none; }
  .stable-pdp { grid-template-columns: 1fr; gap: 20px; }
  .stable-pdp__media { display: block; }
  .stable-pdp__thumbs { display: none; }
  .stable-pdp__gallery { margin: 0 -10px; }
  .stable-pdp__info { padding-top: 0; }
  .stable-pdp h1 { font-size: 45px; }
  .stable-pdp__actions { grid-template-columns: 1fr; }
  .stable-pdp__actions .stable-button--plain { grid-column: auto; }
  .stable-products--pdp { padding-right: 0; padding-left: 0; }
  .stable-mobile-buy { position: fixed; z-index: 40; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 8px; padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); visibility: hidden; border-top: 1px solid var(--stable-line); background: var(--stable-paper); box-shadow: 0 -8px 24px rgba(23,23,20,.08); transform: translateY(110%); transition: transform .2s ease, visibility .2s; pointer-events: none; }
  .stable-mobile-buy.is-visible { visibility: visible; transform: translateY(0); pointer-events: auto; }
  .stable-mobile-buy .stable-card__price, .stable-mobile-buy .stable-pdp__price { margin: 0; }
  body[data-page="product"] .stable-footer { padding-bottom: 90px; }
}

@media (max-width: 430px) {
  .stable-collection-hero h1 { font-size: 44px; }
  .stable-collection-hero > p:last-child { font-size: 14px; line-height: 1.55; }
  .stable-collection-toolbar { gap: 12px; }
  .stable-collection-toolbar select { max-width: 132px; }
  .stable-card__add { padding-inline: 5px; white-space: normal; line-height: 1.2; }
  .stable-pdp__gallery { scrollbar-width: none; }
  .stable-pdp__gallery::-webkit-scrollbar { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Choco Brown & Gold storefront skin. Kept as a final layer so catalogue UI shares one palette. */
:root {
  --stable-ink: #2c170f;
  --stable-paper: #fff8e9;
  --stable-line: #d4aa58;
  --stable-green: #5d381f;
  --stable-red: #a5582e;
  --stable-gold: #d7aa38;
  --stable-gold-bright: #f4cf6d;
  --stable-gold-deep: #97641d;
  --stable-surface: #f6e8ca;
  --stable-surface-deep: #eddbb4;
}

body.catalog-stable {
  color: var(--stable-ink);
  background-color: var(--stable-paper);
  background-image: repeating-linear-gradient(0deg, rgba(94, 55, 21, .025) 0 1px, transparent 1px 8px);
}

.stable-announcement,
.atelier-marquee {
  border-color: rgba(244, 207, 109, .55);
  color: #fff9ed;
  background: linear-gradient(90deg, #2c170f 0%, #75451a 32%, #d7aa38 50%, #75451a 68%, #2c170f 100%);
}

.atelier-marquee i {
  background: var(--stable-gold-bright);
  box-shadow: 0 0 10px rgba(244, 207, 109, .75);
}

.stable-header,
.stable-mobile-dock,
.stable-drawer,
.stable-modal,
.stable-search,
.stable-mega-menu {
  border-color: rgba(151, 100, 29, .24);
  background-color: rgba(255, 248, 233, .96);
}

.stable-header,
.stable-mobile-dock {
  box-shadow: 0 8px 28px rgba(63, 33, 13, .1);
}

.stable-header a:hover,
.stable-header button:hover,
.stable-mobile-dock a:hover,
.stable-mobile-dock button:hover {
  color: var(--stable-gold-deep);
}

.stable-hero,
.living-deck,
.stable-footer {
  background-color: #2c170f;
}

.stable-hero__shade {
  background: linear-gradient(90deg, rgba(44, 23, 15, .9) 0%, rgba(83, 43, 18, .7) 47%, rgba(83, 43, 18, .24) 100%);
}

.stable-hero::after {
  background: linear-gradient(0deg, rgba(44, 23, 15, .64), transparent 43%);
}

.stable-hero h1,
.living-deck__intro h2 {
  color: #fff3d5;
  text-shadow: 0 2px 18px rgba(244, 207, 109, .18);
}

.stable-hero__eyebrow,
.stable-hero__price,
.living-deck__intro > p {
  color: var(--stable-gold-bright);
}

.stable-section-heading h2,
.signature-edit h2,
.collection-hero h1,
.product-page__title {
  color: #805017;
  background: linear-gradient(100deg, #7a4713 0%, #e1b64e 45%, #845015 72%, #d5a437 100%);
  background-size: 220% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: stable-gold-shimmer 7s linear infinite;
}

.category-rail-section,
.home-products,
.collection-main,
.product-page,
.signature-edit {
  background-color: rgba(255, 248, 233, .76);
}

.stable-section-heading,
.home-products__heading,
.collection-toolbar,
.product-page__meta,
.stable-accordion,
.stable-footer {
  border-color: rgba(151, 100, 29, .3);
}

.stable-category-rail a > span {
  border: 1px solid rgba(151, 100, 29, .25);
  background: var(--stable-surface);
  box-shadow: inset 0 0 0 1px rgba(255, 249, 237, .72);
}

.stable-category-rail strong,
.stable-category-rail a:hover strong {
  color: #593314;
}

.stable-card,
.living-card,
.stable-product-page__related .stable-card {
  border: 1px solid rgba(151, 100, 29, .16);
  background: rgba(255, 250, 239, .88);
  box-shadow: 0 9px 24px rgba(75, 42, 17, .07);
}

.stable-card__media,
.living-card__media,
.stable-quick-view__media {
  background: var(--stable-surface);
}

.stable-card__badge,
.living-card__media > span {
  color: #fff7e7;
  background: #75451a;
}

.stable-card__wish,
.stable-card__quick {
  border: 1px solid rgba(151, 100, 29, .18);
  color: var(--stable-gold-deep);
  background: rgba(255, 249, 237, .94);
}

.stable-card__category,
.stable-card__options,
.stable-card__price s,
.stable-empty-state,
.stable-product-description {
  color: #755f4e;
}

.stable-card__price span,
.stable-product-price span {
  color: #9a5a1e;
}

.stable-button--dark,
.stable-card__add,
.living-card__copy button {
  border-color: var(--stable-gold-bright);
  color: #fff9ed !important;
  background: linear-gradient(135deg, #2f170e, #714118 58%, #a76d20);
  box-shadow: 0 8px 22px rgba(151, 100, 29, .23), inset 0 1px 0 rgba(255, 237, 177, .34);
}

.stable-button--light,
.stable-button--line {
  border-color: var(--stable-gold);
  color: #5b3313 !important;
  background: rgba(255, 248, 233, .76);
  box-shadow: inset 0 0 0 1px rgba(244, 207, 109, .28);
}

.stable-button--light:hover,
.stable-button--line:hover {
  color: #fff8e8 !important;
  background: #714118;
}

.stable-hero__progress b,
.stable-divider,
.stable-product-page__divider {
  background: linear-gradient(90deg, #8b5819, var(--stable-gold-bright), #8b5819);
}

.stable-footer {
  color: #f8e8c5;
  background-color: #2c170f;
}

.stable-footer a,
.stable-footer p,
.living-deck__intro span {
  color: #ead5ad;
}

.stable-footer a:hover {
  color: var(--stable-gold-bright);
}

@keyframes stable-gold-shimmer {
  to { background-position: 220% center; }
}

@media (hover: hover) and (pointer: fine) {
  .stable-category-rail a:hover > span {
    border-color: var(--stable-gold-bright);
    box-shadow: 0 0 0 5px rgba(215, 170, 56, .14), 0 0 25px rgba(176, 114, 23, .27), inset 0 0 0 1px rgba(255, 249, 237, .85);
    transform: translateY(-3px);
  }

  .stable-card:hover,
  .living-card:hover {
    border-color: rgba(151, 100, 29, .35);
    box-shadow: 0 18px 36px rgba(75, 42, 17, .15);
  }

  .stable-button--dark:hover,
  .stable-card__add:hover,
  .living-card__copy button:hover {
    box-shadow: 0 10px 29px rgba(170, 109, 24, .35), 0 0 0 3px rgba(244, 207, 109, .2), inset 0 1px 0 rgba(255, 237, 177, .4);
    transform: translateY(-1px);
  }
}

@media (max-width: 767px) {
  .stable-mobile-dock {
    border-top-color: rgba(151, 100, 29, .28);
    background-color: rgba(255, 248, 233, .98);
  }

  .stable-section-heading h2,
  .signature-edit h2,
  .collection-hero h1,
  .product-page__title {
    animation: none;
  }
}

/* Storefront density and touch-first refinements */
.home-products { padding-top: 42px; padding-bottom: 42px; }
.stable-load-more {
  min-height: 44px;
  display: block;
  margin: 28px auto 0;
  padding: 11px 20px;
  border: 1px solid var(--stable-ink);
  color: #fff;
  background: var(--stable-ink);
  font-weight: 700;
  cursor: pointer;
}
.stable-load-more[hidden] { display: none; }
.stable-card__media,
.stable-pdp__gallery,
.stable-quick__gallery { isolation: isolate; }
.stable-card__image { background: #f3e5cc; }
.stable-card__title { overflow-wrap: anywhere; }
.stable-card__add { border-radius: 2px; }
.phase-footer__finale { min-height: 380px; }
.phase-footer__finale h2 { font-size: clamp(54px, 8vw, 118px); }

@media (max-width: 767px) {
  body.catalog-stable { padding-bottom: env(safe-area-inset-bottom); }
  .stable-announcement {
    height: 27px;
    min-height: 27px;
    overflow: hidden;
    white-space: nowrap;
  }
  .stable-header {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    min-height: 56px;
    padding: 6px 8px;
  }
  .stable-header__menu { width: 40px; height: 40px; padding: 0; }
  .stable-logo { justify-self: center; font-size: 23px; }
  .stable-header__actions { gap: 0; }
  .stable-header__actions button,
  .stable-header__actions > a { min-width: 38px; height: 40px; }

  .stable-hero {
    min-height: 540px;
    height: calc(100svh - 83px);
    max-height: 680px;
    align-items: end;
  }
  .stable-hero > img { object-fit: cover; object-position: center; }
  .stable-hero__shade {
    background: linear-gradient(0deg, rgba(12,12,10,.9) 0%, rgba(12,12,10,.55) 35%, rgba(12,12,10,.05) 72%);
  }
  .stable-hero__content { padding: 26px 14px 70px; }
  .stable-hero__content > p:first-child { margin-bottom: 7px; font-size: 8px; }
  .stable-hero h1 { max-width: 100%; font-size: 39px; line-height: .98; }
  .stable-hero__content > p:nth-of-type(2) {
    max-width: 96%;
    margin: 9px 0 15px;
    font-size: 11px;
    line-height: 1.4;
  }
  .stable-hero__content > div { display: grid; grid-template-columns: 1fr 1fr; width: 100%; gap: 7px; }
  .stable-hero .stable-button { min-height: 40px; padding: 8px; font-size: 9px; }
  .stable-hero__progress { right: 12px; bottom: 12px; }
  .stable-hero__progress span { font-size: 9px; }

  .category-rail-section,
  .stable-products,
  .stable-page { padding-right: 9px; padding-left: 9px; }
  .category-rail-section { padding-top: 19px; padding-bottom: 14px; }
  .stable-section-heading { align-items: end; gap: 8px; margin-bottom: 12px; }
  .stable-section-heading p { margin-bottom: 5px; font-size: 8px; letter-spacing: 1.2px; }
  .stable-section-heading h2 { font-size: 25px; }
  .stable-section-heading > a { padding-bottom: 2px; white-space: nowrap; }
  .stable-category-rail { grid-auto-columns: 76px; gap: 8px; }
  .stable-category-rail strong { margin-top: 6px; font-size: 9px; }
  .stable-category-rail small { display: none; }
  .stable-shop-intents { display: none !important; }

  .commerce-product-grid { gap: 1rem 0.6rem !important; }
  .stable-card__media { aspect-ratio: 4 / 5; border-radius: 2px; }
  .stable-card__wish { top: 5px; right: 5px; width: 29px; height: 29px; font-size: 17px; }
  .stable-card__badge { top: 6px; left: 6px; padding: 4px 5px; font-size: 7px; }
  .stable-card__quick { right: 5px; bottom: 5px; min-width: 30px; min-height: 30px; justify-content: center; padding: 4px 7px; border-radius: 50%; }
  .stable-card__quick > span:last-child { display: none; }
  .stable-card__body { min-height: 122px; padding-top: 7px; }
  .stable-card__category { display: none; }
  .stable-card__title { min-height: 30px; font-size: 10px; line-height: 1.35; }
  .stable-card__price { min-height: 24px; margin: 1px 0 3px; }
  .stable-card__add { min-height: 33px; padding: 5px 4px; font-size: 8px; }

  .signature-edit { display: block; }
  .signature-edit__copy { position: relative; padding: 30px 14px 16px; }
  .signature-edit__copy h2 { max-width: 310px; font-size: 34px; }
  .signature-edit__product { display: grid; grid-template-columns: 1.05fr .95fr; gap: 12px; padding: 10px 14px 30px; }
  .signature-edit__image { height: auto; aspect-ratio: 4 / 5; }
  .signature-edit__product h3 { margin: 6px 0; font-size: 24px; }
  .signature-edit__product p { margin: 8px 0; font-size: 9px; line-height: 1.45; }
  .signature-edit__product .stable-button { min-height: 36px; padding: 7px; font-size: 8px; }

  .stable-collection-hero { margin-bottom: 14px; }
  .stable-collection-hero > p:first-child { margin-bottom: 5px; font-size: 8px; }
  .stable-collection-hero h1 { margin-bottom: 8px; font-size: 36px; line-height: 1; }
  .stable-collection-hero > p:last-child { max-width: 100%; margin: 0; font-size: 11px; line-height: 1.45; }
  .stable-collection-chips { margin: 0 -9px 12px; padding: 0 9px 5px; }
  .stable-collection-chips a { min-height: 31px; padding: 6px 11px; font-size: 8px; }
  .stable-collection-search { margin-bottom: 12px; }
  .stable-collection-search > label { display: none; }
  .stable-collection-search > div { min-height: 38px; }
  .stable-collection-search input { min-height: 36px; font-size: 11px; }
  .stable-collection-toolbar { position: static; padding: 8px 0; background: var(--stable-paper); }
  .stable-collection-layout { padding-top: 10px; }
  .stable-filters fieldset { grid-template-columns: repeat(3, 1fr); }
  .stable-filters label {
    min-height: 34px;
    align-items: center;
    padding: 5px 6px;
    border: 1px solid var(--stable-line);
    background: #fff;
  }
  .stable-load-more { width: 100%; margin-top: 22px; }

  .stable-pdp { gap: 14px; }
  .stable-breadcrumb { margin-bottom: 10px; font-size: 8px; white-space: nowrap; overflow: hidden; }
  .stable-pdp__gallery { margin: 0 -9px; }
  .stable-pdp__gallery-meta { padding-top: 7px; }
  .stable-pdp__info { position: static; }
  .stable-pdp__meta { align-items: center; font-size: 8px; }
  .stable-pdp__gallery > img,
  .stable-pdp__gallery > video { aspect-ratio: 1 / 1.18; }
  .stable-pdp__info > p:first-child { font-size: 8px; }
  .stable-pdp h1 { margin: 6px 0; font-size: 34px; line-height: 1; }
  .stable-pdp__price { margin: 13px 0; }
  .stable-pdp__info > p { margin: 10px 0; font-size: 11px; line-height: 1.55; }
  .stable-pdp__qty { margin: 14px 0; }
  .stable-pdp__actions { gap: 7px; }
  .stable-pdp__actions .stable-button { min-height: 42px; font-size: 10px; }
  .stable-pdp__assurance { margin-top: 15px; }
  .stable-pdp__assurance div { padding: 10px 7px; }
  .stable-pdp__assurance strong { font-size: 8px; }
  .stable-pdp__assurance span { font-size: 7px; }
  .stable-delivery-check { margin: 13px -9px 0; padding: 15px 12px; }
  .stable-delivery-check > div strong { font-size: 18px; }
  .stable-delivery-check input,
  .stable-delivery-check button { min-height: 40px; }
  .stable-accordions { margin-top: 18px; }
  .stable-accordions details { padding: 12px 0; }

  .phase-footer__finale { display: none; }
  .phase-footer__links { grid-template-columns: 1fr 1fr; padding-top: 30px; }
  .stable-mobile-buy > div > small { display: block; margin-top: 2px; color: #6f6d66; font-size: 7px; }
  .stable-drawer--menu { padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
  .stable-cart-footer { padding-bottom: calc(24px + env(safe-area-inset-bottom)); }
}

@media (max-width: 350px) {
  .stable-logo { font-size: 21px; }
  .stable-header__actions button,
  .stable-header__actions > a { min-width: 34px; padding-inline: 2px; }
  .stable-hero h1 { font-size: 35px; }
  .signature-edit__product { grid-template-columns: 1fr; }
  .signature-edit__image { max-height: 360px; }
  .stable-pdp__assurance { grid-template-columns: 1fr; }
  .stable-pdp__assurance div { border-right: 0; border-bottom: 1px solid var(--stable-line); }
}

/* Shivara atelier experience */
.stable-header {
  border-bottom-color: rgba(23, 23, 20, .1);
  background: rgba(247, 247, 243, .9);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.stable-nav a {
  position: relative;
}

.stable-nav a::after {
  position: absolute;
  right: 0;
  bottom: -7px;
  left: 0;
  height: 1px;
  content: "";
  background: var(--stable-ink);
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .3s ease;
}

.stable-nav a:hover::after,
.stable-nav a:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left;
}

.stable-nav__mega-wrap {
  position: static;
}

.stable-nav__mega-wrap > button {
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  font: inherit;
  font-size: 11px;
  cursor: pointer;
}

.stable-nav__mega {
  position: absolute;
  z-index: 50;
  top: 100%;
  right: 0;
  left: 0;
  display: grid;
  grid-template-columns: .55fr .55fr 1.9fr;
  gap: 34px;
  padding: 28px clamp(24px, 5vw, 76px) 32px;
  visibility: hidden;
  border-top: 1px solid rgba(23, 23, 20, .08);
  border-bottom: 1px solid var(--stable-line);
  opacity: 0;
  background: rgba(247, 247, 243, .98);
  box-shadow: 0 24px 55px rgba(23, 23, 20, .12);
  transform: translateY(-8px);
  transition: opacity .2s ease, transform .25s ease, visibility .2s;
  pointer-events: none;
}

.stable-nav__mega-wrap:hover .stable-nav__mega,
.stable-nav__mega-wrap:focus-within .stable-nav__mega {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.stable-nav__mega-links,
.stable-nav__mega-categories {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.stable-nav__mega small {
  margin-bottom: 5px;
  color: #77746b;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 1.4px;
}

.stable-nav__mega-links a,
.stable-nav__mega-categories a {
  font-family: "Italiana", serif;
  font-size: 19px;
}

.stable-nav__mega-features {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.stable-nav__mega-features > a {
  position: relative;
  aspect-ratio: 4 / 3;
  display: block;
  overflow: hidden;
  color: #fff;
}

.stable-nav__mega-features img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .45s cubic-bezier(.22, 1, .36, 1);
}

.stable-nav__mega-features > a:hover img {
  transform: scale(1.035);
}

.stable-nav__mega-features > a::after {
  position: absolute;
  inset: auto 0 0;
  height: 60%;
  content: "";
  background: linear-gradient(0deg, rgba(0, 0, 0, .74), transparent);
  transform: none;
}

.stable-nav__mega-features span {
  position: absolute;
  z-index: 1;
  right: 12px;
  bottom: 12px;
  left: 12px;
}

.stable-nav__mega-features span small,
.stable-nav__mega-features span strong {
  display: block;
}

.stable-nav__mega-features span small {
  margin-bottom: 3px;
  color: #fff;
}

.stable-nav__mega-features span strong {
  color: #fff;
  font-family: "Italiana", serif;
  font-size: 18px;
  font-weight: 400;
  text-shadow: 0 1px 12px rgba(0, 0, 0, .55);
}

.stable-mobile-dock {
  display: none;
}

.stable-hero {
  --pointer-x: 0;
  --pointer-y: 0;
  position: relative;
  min-height: clamp(650px, 84svh, 900px);
  overflow: hidden;
  background: #1e0a02;
}

.stable-hero__backdrop {
  position: absolute;
  inset: -3%;
  transform: translate3d(calc(var(--pointer-x) * -8px), calc(var(--pointer-y) * -6px), 0) scale(1.04);
  transition: transform .8s cubic-bezier(.22, 1, .36, 1);
}

.stable-hero__backdrop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 43%;
  filter: saturate(.86) contrast(1.03);
}

.stable-hero__shade {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(10, 10, 9, .79) 0%, rgba(10, 10, 9, .48) 42%, rgba(10, 10, 9, .08) 76%),
    linear-gradient(0deg, rgba(10, 10, 9, .46), transparent 54%);
}

.stable-hero__glow {
  position: absolute;
  z-index: 2;
  top: -30%;
  left: 42%;
  width: 34%;
  height: 150%;
  opacity: .16;
  background: linear-gradient(90deg, transparent, #fff 48%, transparent);
  transform: rotate(16deg) translateX(-120%);
  animation: atelier-reflection 10s ease-in-out infinite;
  pointer-events: none;
}

.stable-hero__content {
  z-index: 4;
  width: min(700px, 62%);
  padding-left: clamp(28px, 7vw, 110px);
  transform: translate3d(calc(var(--pointer-x) * 4px), calc(var(--pointer-y) * 3px), 0);
  transition: transform .8s cubic-bezier(.22, 1, .36, 1);
}

.stable-hero__content > p:first-child {
  display: flex;
  align-items: center;
  gap: 10px;
}

.stable-hero__content > p:first-child span {
  width: 32px;
  height: 1px;
  display: inline-block;
  background: var(--stable-gold);
}

.stable-hero h1 {
  max-width: 680px;
  font-size: clamp(58px, 7.2vw, 108px);
}



.stable-hero__progress {
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 12px;
}

.stable-hero__progress i {
  width: 112px;
  height: 1px;
  display: block;
  overflow: hidden;
  background: rgba(255, 255, 255, .35);
}

.stable-hero__progress b {
  width: var(--hero-progress, 33.333%);
  height: 100%;
  display: block;
  background: #fff;
  transition: width .7s cubic-bezier(.22, 1, .36, 1);
}

.atelier-marquee {
  overflow: hidden;
  border-bottom: 1px solid var(--stable-line);
  color: #fdf6ee;
  background: var(--stable-ink);
}

.atelier-marquee > div {
  width: max-content;
  display: flex;
  align-items: center;
  gap: 30px;
  padding: 13px 0;
  animation: atelier-marquee 28s linear infinite;
}

.atelier-marquee span {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2px;
}

.atelier-marquee i {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--stable-gold);
}

.category-rail-section {
  padding-top: clamp(52px, 7vw, 92px);
  padding-bottom: clamp(48px, 6vw, 78px);
}

.stable-section-heading h2 {
  max-width: 700px;
  font-size: clamp(32px, 4vw, 58px);
}

.stable-category-rail {
  grid-auto-columns: minmax(132px, 1fr);
  gap: clamp(9px, 1.2vw, 18px);
}

.stable-category-rail a {
  text-align: left;
}

.stable-category-rail a > span {
  aspect-ratio: 3 / 4;
  border-radius: 2px;
}

.stable-category-rail img {
  object-fit: cover;
}

.stable-category-rail strong {
  font-family: "Italiana", serif;
  font-size: 17px;
  font-weight: 400;
}

.living-deck {
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 40px 5% !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 340px) 1fr !important;
  gap: 2.5rem !important;
  align-items: center !important;
  color: #fdf6ee;
  background: #19120c;
  box-sizing: border-box !important;
}

.living-deck__intro {
  max-width: 340px;
}

.living-deck__intro > p {
  margin: 0 0 10px;
  color: var(--stable-gold);
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}

.living-deck__intro h2 {
  margin: 0;
  font: 400 clamp(32px, 4vw, 54px)/1.05 var(--font-serif);
  color: #ffffff;
}

.living-deck__intro span {
  max-width: 320px;
  display: block;
  margin-top: 14px;
  color: rgba(255, 255, 255, 0.85);
  font-size: 13px;
  line-height: 1.6;
}

.living-deck__stage {
  position: static !important;
  min-height: auto !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.25rem !important;
  perspective: none !important;
  width: 100% !important;
}

.living-card {
  position: static !important;
  width: 100% !important;
  transform: none !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  color: var(--stable-ink);
  background: #fdfaf6;
  border: 1px solid var(--stable-line);
  border-radius: var(--radius-sm);
  overflow: hidden !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.living-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

.living-card--1,
.living-card--2,
.living-card--3 {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}

.living-card__media {
  position: relative;
  aspect-ratio: 4 / 5;
  width: 100%;
  display: block;
  overflow: hidden;
  background: #fdfaf6;
}

.living-card__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.living-card:hover .living-card__media img {
  transform: scale(1.035);
}

.living-card__media > span {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: rgba(18, 18, 16, 0.82);
  font-size: 8.5px;
  font-weight: 700;
}

@media (max-width: 960px) {
  .living-deck {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  .living-deck__stage {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
  }
}

.living-card__copy {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  padding: 14px 16px 16px;
  background: #ffffff;
  border-top: 1px solid var(--stable-line-light);
}

.living-card__copy small {
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #75736c;
}

.living-card__copy h3 {
  margin: 4px 0 8px;
  font-family: var(--font-serif);
  font-size: 18px;
  line-height: 1.2;
}

.living-card__copy a {
  color: inherit;
  text-decoration: none;
}

.living-card__copy > div {
  margin-bottom: 12px;
}

.living-card__copy > div strong {
  font-size: 13px;
  color: var(--stable-ink);
}

.living-card__copy button {
  width: 100%;
  min-height: 36px;
  margin-top: auto;
  border: 1px solid var(--stable-ink);
  color: #fff;
  background: var(--stable-ink);
  font: inherit;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: all 0.2s ease;
}

.home-products {
  padding-top: clamp(48px, 6vw, 78px);
  padding-bottom: clamp(48px, 6vw, 78px);
}

.stable-card {
  transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}

.stable-card:hover {
  transform: translateY(-5px);
}

.stable-card__media {
  overflow: hidden;
  background: #f3e5cc;
}

.stable-card__image {
  transition: transform .6s cubic-bezier(.22, 1, .36, 1);
}

.stable-card:hover .stable-card__image {
  transform: scale(1.025);
}

.stable-card__add,
.stable-button,
.stable-card__quick {
  transition: color .2s ease, background .2s ease, transform .2s ease;
}

.stable-card__add:active,
.stable-button:active,
.stable-card__quick:active {
  transform: scale(.98);
}

.signature-edit {
  background: #f0ddc0;
}

.signature-edit__image {
  overflow: hidden;
  box-shadow: 0 22px 55px rgba(29, 28, 24, .16);
}

.signature-edit__image img {
  transition: transform .7s cubic-bezier(.22, 1, .36, 1);
}

.signature-edit__image:hover img {
  transform: scale(1.025);
}

.motion-reveal {
  opacity: 1;
  transform: none;
}

.motion-reveal.is-in-view {
  opacity: 1;
  transform: translateY(0);
}

@keyframes atelier-reflection {
  0%, 18% { transform: rotate(16deg) translateX(-140%); }
  52%, 100% { transform: rotate(16deg) translateX(340%); }
}

@keyframes atelier-marquee {
  to { transform: translateX(-50%); }
}

@media (max-width: 1100px) {
  .stable-hero__float--two { right: 8vw; }
  .stable-hero__float--one { right: 4vw; }
  .living-deck { grid-template-columns: .7fr 1.3fr; gap: 30px; padding-right: 30px; padding-left: 30px; }
  .living-card { width: 260px; }
  .living-card--2 { left: 27%; }
}

@media (max-width: 767px) {
  body.catalog-stable {
    padding-bottom: calc(58px + env(safe-area-inset-bottom));
  }

  body[data-page="product"].catalog-stable {
    padding-bottom: env(safe-area-inset-bottom);
  }

  /* ─── Luxury Mobile Bottom Navigation Dock ─── */
  .stable-mobile-dock {
    position: fixed;
    z-index: 1000;
    right: 0;
    bottom: 0;
    left: 0;
    height: calc(56px + env(safe-area-inset-bottom));
    display: flex !important;
    align-items: center;
    justify-content: space-around;
    padding: 2px 4px calc(4px + env(safe-area-inset-bottom));
    border-top: 1px solid rgba(197, 168, 128, 0.28);
    background: rgba(253, 251, 247, 0.98);
    box-shadow: 0 -4px 20px rgba(25, 18, 12, 0.08);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }

  .stable-dock-item {
    flex: 1 1 0;
    min-width: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--stable-ink);
    text-decoration: none;
    cursor: pointer;
    position: relative;
    transition: color 0.15s ease;
  }

  .stable-dock-item:hover,
  .stable-dock-item:active {
    color: #97641d;
  }

  .dock-icon-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .dock-icon {
    font-size: 17px;
    line-height: 1;
    color: inherit;
  }

  .dock-label {
    font-family: var(--font-sans);
    font-size: 8.5px;
    font-weight: 600;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: #6a5a4a;
    line-height: 1;
  }

  .dock-badge {
    position: absolute;
    top: -5px;
    right: -10px;
    min-width: 15px;
    height: 15px;
    padding: 0 3px;
    border-radius: 999px;
    background: #140e09;
    color: #ffffff;
    font-size: 8px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.9);
  }

  body[data-page="product"] .stable-mobile-dock {
    display: none !important;
  }

  .stable-footer {
    padding-bottom: calc(80px + env(safe-area-inset-bottom));
  }

  body[data-page="product"] .stable-footer {
    padding-bottom: 90px;
  }

  .stable-hero {
    min-height: 570px;
    height: calc(100svh - 83px);
    max-height: 720px;
  }

  .stable-hero__backdrop {
    inset: 0;
    transform: none;
  }

  .stable-hero__backdrop img {
    object-position: 54% center;
  }

  .stable-hero__shade {
    background:
      linear-gradient(0deg, rgba(10, 10, 9, .93) 0%, rgba(10, 10, 9, .59) 38%, rgba(10, 10, 9, .05) 76%),
      linear-gradient(90deg, rgba(10, 10, 9, .2), transparent);
  }

  .stable-hero__content {
    width: 100%;
    padding: 24px 13px 66px;
    transform: none;
  }

  .stable-hero h1 {
    max-width: 92%;
    font-size: clamp(38px, 12vw, 52px);
  }

  .stable-hero__float--one {
    top: 54px;
    right: 11px;
    bottom: auto;
    width: 108px;
    padding: 6px 6px 8px;
    transform: rotate(3deg);
  }

  .stable-hero__float--one > span {
    margin-bottom: 4px;
    font-size: 6px;
    letter-spacing: 1px;
  }

  .stable-hero__float--one strong {
    margin-top: 5px;
    font-size: 12px;
  }

  .stable-hero__float--one small {
    font-size: 6px;
  }

  .stable-hero__float--two {
    display: none;
  }

  .stable-hero__progress i {
    width: 76px;
  }

  .stable-hero__progress {
    bottom: 68px;
  }

  .atelier-marquee > div {
    gap: 20px;
    padding: 10px 0;
  }

  .atelier-marquee span {
    font-size: 7px;
    letter-spacing: 1.4px;
  }

  .category-rail-section {
    padding-top: 31px;
    padding-bottom: 27px;
  }

  .stable-category-rail {
    grid-auto-columns: 102px;
    gap: 8px;
  }

  .stable-category-rail a > span {
    aspect-ratio: 3 / 4;
  }

  .stable-category-rail strong {
    margin-top: 7px;
    font-size: 13px;
  }

  .stable-category-rail small {
    display: block;
    font-size: 7px;
  }

  .living-deck {
    min-height: 0;
    display: block;
    padding: 48px 0 50px;
  }

  .living-deck__intro {
    padding: 0 14px;
  }

  .living-deck__intro h2 {
    max-width: 350px;
    font-size: 46px;
  }

  .living-deck__intro span {
    max-width: 330px;
    margin-top: 15px;
    font-size: 10px;
    line-height: 1.55;
  }

  .living-deck__stage {
    min-height: 0;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(235px, 72vw);
    gap: 10px;
    overflow-x: auto;
    margin-top: 27px;
    padding: 10px 14px 18px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .living-deck__stage::-webkit-scrollbar {
    display: none;
  }

  .living-card,
  .living-card--1,
  .living-card--2,
  .living-card--3 {
    position: relative;
    inset: auto;
    width: auto;
    transform: none;
    scroll-snap-align: center;
  }

  .living-card:hover {
    transform: none;
  }

  .living-card__copy {
    padding: 12px 12px 14px;
  }

  .living-card__copy h3 {
    min-height: 37px;
    font-size: 19px;
  }

  .living-card__copy button {
    min-height: 36px;
    margin-top: 10px;
  }

  .home-products {
    padding-top: 34px;
    padding-bottom: 34px;
  }

  .stable-card:hover {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stable-hero__glow,
  .atelier-marquee > div {
    animation: none;
  }

  .motion-reveal {
    opacity: 1;
    transform: none;
  }
}

/* ═══════════════════════════════════════════════════════════════
   LUXURY STOREFRONT & DIRECT CHECKOUT ENHANCEMENTS
═══════════════════════════════════════════════════════════════ */

/* Wishlist Heart Icon & Pulse Animation */
.stable-card__wish {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 10;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.7);
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #2b1a0e;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.2s ease, color 0.2s ease;
}
.stable-card__wish:hover {
  transform: scale(1.12);
  background: #ffffff;
}
.stable-card__wish.is-active {
  background: #9b2d30;
  color: #ffffff;
  border-color: #9b2d30;
  animation: heartPulse 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}
@keyframes heartPulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.3); }
  100% { transform: scale(1); }
}

/* Sold Out Overlay & Badge */
.stable-card.is-sold-out .stable-card__media img {
  filter: grayscale(0.55) opacity(0.8);
}
.stable-card__sold-out-overlay {
  position: absolute;
  inset: 0;
  background: rgba(43, 26, 14, 0.35);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.stable-card__sold-out-overlay span {
  padding: 6px 14px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #ffffff;
  background: rgba(43, 26, 14, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 4px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}
.stable-card__add.stable-card__add--sold-out {
  background: #e2ddd6 !important;
  color: #8c8378 !important;
  cursor: not-allowed !important;
  border: none !important;
}

/* ─── Sleek Luxury Floating Filter & Search Toolbar ─── */
.storefront-filter-dock {
  position: relative;
  z-index: 5;
  margin: 0 auto 28px;
  padding: 0;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  border: 0;
  box-shadow: none;
}

.storefront-search-wrap {
  position: relative;
  flex: 1;
  min-width: 240px;
  max-width: 440px;
}

.storefront-search-input {
  width: 100%;
  height: 42px;
  padding: 0 18px 0 40px;
  border-radius: 999px;
  border: 1px solid rgba(197, 168, 128, 0.35);
  background: #ffffff;
  font-family: var(--font-sans);
  font-size: 12px;
  letter-spacing: 0.3px;
  color: var(--stable-ink);
  outline: none;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(25, 18, 12, 0.04);
}

.storefront-search-input:focus {
  border-color: var(--stable-ink);
  background: #ffffff;
  box-shadow: 0 4px 16px rgba(25, 18, 12, 0.09);
}

.storefront-search-icon {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  color: #97641d;
  pointer-events: none;
}

.storefront-dock-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.storefront-filter-btn {
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(197, 168, 128, 0.35);
  background: #ffffff;
  color: var(--stable-ink);
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(25, 18, 12, 0.04);
}

.storefront-filter-btn:hover {
  border-color: var(--stable-ink);
  background: #fdfaf6;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(25, 18, 12, 0.09);
}

.storefront-filter-btn.is-active {
  background: var(--stable-ink);
  color: #ffffff;
  border-color: var(--stable-ink);
}

.storefront-filter-btn svg {
  color: #97641d;
  transition: color 0.2s ease;
}

.storefront-filter-btn.is-active svg {
  color: #ffffff;
}

.storefront-sort-wrap {
  position: relative;
}

.storefront-sort-select {
  height: 42px;
  padding: 0 34px 0 18px;
  border-radius: 999px;
  border: 1px solid rgba(197, 168, 128, 0.35);
  background: #ffffff;
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--stable-ink);
  outline: none;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(25, 18, 12, 0.04);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2397641d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

.storefront-sort-select:focus,
.storefront-sort-select:hover {
  border-color: var(--stable-ink);
  background-color: #fdfaf6;
  box-shadow: 0 4px 16px rgba(25, 18, 12, 0.09);
}

/* Luxury Direct Checkout Modal */
.stable-checkout-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  background: rgba(20, 12, 6, 0.72);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
}
.stable-checkout-modal.is-open {
  opacity: 1;
  pointer-events: auto;
}
.luxury-checkout-card {
  position: relative;
  width: 100%;
  max-width: 520px;
  max-height: 90vh;
  overflow-y: auto;
  padding: 32px 28px;
  background: #fdfaf6;
  border-radius: 16px;
  border: 1px solid rgba(212, 168, 67, 0.35);
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.25);
  transform: scale(0.95);
  transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.stable-checkout-modal.is-open .luxury-checkout-card {
  transform: scale(1);
}
.checkout-header {
  text-align: center;
  margin-bottom: 22px;
}
.checkout-header small {
  font-size: 10px;
  letter-spacing: 2px;
  color: var(--stable-gold);
  font-weight: 700;
  text-transform: uppercase;
}
.checkout-header h2 {
  font-family: "Italiana", serif;
  font-size: 26px;
  margin: 6px 0 8px;
  color: var(--stable-ink);
}
.checkout-header p {
  font-size: 12px;
  color: #6d5d4d;
  margin: 0;
  line-height: 1.45;
}
.checkout-order-summary {
  background: rgba(235, 226, 214, 0.45);
  border-radius: 10px;
  padding: 14px 16px;
  margin-bottom: 20px;
  border: 1px solid rgba(180, 130, 60, 0.18);
  font-size: 13px;
}
.checkout-form .form-row {
  margin-bottom: 14px;
}
.checkout-form label span {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--stable-ink);
  margin-bottom: 5px;
  text-transform: uppercase;
}
.checkout-form .req {
  color: var(--stable-red);
}
.checkout-form input,
.checkout-form textarea {
  width: 100%;
  padding: 10px 14px;
  border-radius: 8px;
  border: 1px solid rgba(180, 130, 60, 0.28);
  background: #ffffff;
  font-size: 13px;
  color: var(--stable-ink);
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.checkout-form input:focus,
.checkout-form textarea:focus {
  border-color: var(--stable-gold);
  box-shadow: 0 0 0 3px rgba(212, 168, 67, 0.15);
}
.pincode-status-msg {
  font-size: 11.5px;
  line-height: 1.45;
  padding: 8px 12px;
  border-radius: 6px;
  margin: -6px 0 14px;
  transition: all 0.2s ease;
}
.pincode-status--loading {
  background: rgba(184, 134, 45, 0.08);
  color: #7b581e;
  border: 1px solid rgba(184, 134, 45, 0.25);
}
.pincode-status--success {
  background: rgba(34, 197, 94, 0.08);
  color: #15803d;
  border: 1px solid rgba(34, 197, 94, 0.3);
}
.pincode-status--success .pincode-timeline-badge {
  font-weight: 700;
  color: #166534;
  background: rgba(34, 197, 94, 0.15);
  padding: 2px 6px;
  border-radius: 4px;
}
.pincode-status--error {
  background: rgba(239, 68, 68, 0.08);
  color: #b91c1c;
  border: 1px solid rgba(239, 68, 68, 0.25);
  font-weight: 500;
}
.checkout-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 20px;
}

/* ═════════════════════════════════════════════════════
   ACCOUNT DRAWER & PATRON STYLING
═════════════════════════════════════════════════════ */
.stable-drawer--account {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(440px, 100vw);
  background: var(--stable-paper);
  z-index: 600;
  display: flex;
  flex-direction: column;
  visibility: hidden;
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s;
  box-shadow: -10px 0 40px rgba(0, 0, 0, 0.2);
  padding: 24px;
  overflow-y: auto;
}

.stable-drawer--account.is-open {
  visibility: visible;
  transform: translateX(0);
}

.stable-account-container {
  margin-top: 16px;
}

.stable-account-profile {
  text-align: center;
}

.account-avatar {
  width: 64px;
  height: 64px;
  background: linear-gradient(135deg, #2a1b12, #140b06);
  border: 2px solid var(--stable-gold);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  margin: 0 auto 12px;
  box-shadow: 0 4px 14px rgba(212, 168, 67, 0.25);
}

.stable-account-profile h3 {
  font-family: "Italiana", serif;
  font-size: 24px;
  font-weight: 400;
  color: var(--stable-ink);
  margin-bottom: 4px;
}

.account-phone, .account-email {
  font-size: 13px;
  color: #68675f;
  margin-bottom: 2px;
}

.account-details-box {
  background: #ffffff;
  border: 1px solid rgba(180, 130, 60, 0.2);
  border-radius: 8px;
  padding: 14px;
  margin: 18px 0;
  text-align: left;
}

.account-details-box small {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--stable-gold);
  margin-bottom: 6px;
}

.account-details-box p {
  font-size: 13px;
  color: var(--stable-ink);
  line-height: 1.5;
}

.account-actions-grid {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 16px;
}

.account-actions-grid a {
  text-decoration: none;
  text-align: center;
}

.account-actions-grid .stable-button--line {
  border: 1px solid var(--stable-line);
  color: var(--stable-ink) !important;
  background: #ffffff;
}

.account-actions-grid .stable-button--line:hover {
  background: rgba(212, 168, 67, 0.1);
  border-color: var(--stable-gold);
}

.account-actions-grid .stable-button--plain {
  border: 1px solid var(--stable-line);
  color: var(--stable-ink);
  background: #ffffff;
}

.account-actions-grid .stable-button--plain:hover {
  background: rgba(212, 168, 67, 0.1);
  border-color: var(--stable-gold);
}

.account-logout-btn {
  background: transparent;
  border: none;
  color: var(--stable-red, #a32227);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  cursor: pointer;
  padding: 8px;
}

.account-login-header {
  margin-bottom: 16px;
}

.account-login-header small {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.6px;
  color: var(--stable-gold);
  display: block;
  margin-bottom: 4px;
}

.account-login-header h3 {
  font-family: "Italiana", serif;
  font-size: 26px;
  font-weight: 400;
  color: var(--stable-ink);
  margin-bottom: 6px;
}

.account-login-header p {
  font-size: 13px;
  color: #68675f;
  line-height: 1.4;
}

.account-form .form-row {
  margin-bottom: 12px;
}

.account-form label span {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: var(--stable-ink);
  margin-bottom: 4px;
  text-transform: uppercase;
}

.account-form input {
  width: 100%;
  padding: 10px 12px;
  border-radius: 6px;
  border: 1px solid rgba(180, 130, 60, 0.28);
  background: #ffffff;
  font-size: 13px;
  color: var(--stable-ink);
  outline: none;
}

.account-perks {
  margin-top: 24px;
  background: rgba(212, 168, 67, 0.08);
  border: 1px dashed rgba(212, 168, 67, 0.35);
  border-radius: 8px;
  padding: 14px 16px;
  text-align: left;
}

.account-perks small {
  display: block;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--stable-gold);
  margin-bottom: 8px;
}

.account-perks ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.account-perks li {
  font-size: 12px;
  color: var(--stable-ink);
  margin-bottom: 6px;
  line-height: 1.4;
}

/* ═════════════════════════════════════════════════════
   COUPONS IN BAG & CHECKOUT
═════════════════════════════════════════════════════ */
.cart-coupon-section {
  margin: 14px 0 10px;
}

.cart-coupon-box {
  display: flex;
  gap: 8px;
}

.cart-coupon-box input {
  flex: 1;
  padding: 8px 12px;
  border-radius: 6px;
  border: 1px solid rgba(180, 130, 60, 0.3);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 600;
  outline: none;
}

.cart-coupon-box input:focus {
  border-color: var(--stable-gold);
}

.cart-coupon-box button {
  padding: 8px 16px;
  font-size: 11px;
  white-space: nowrap;
}

.cart-coupon-applied {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(31, 107, 59, 0.08);
  border: 1px solid rgba(31, 107, 59, 0.25);
  border-radius: 6px;
  padding: 8px 12px;
}

.coupon-tag {
  font-size: 12px;
  font-weight: 700;
  color: #1f6b3b;
  letter-spacing: 0.5px;
  display: block;
}

.cart-coupon-applied small {
  font-size: 11px;
  color: #1f6b3b;
}

.coupon-remove-btn {
  background: transparent;
  border: none;
  font-size: 11px;
  color: var(--stable-red);
  cursor: pointer;
  text-decoration: underline;
  font-weight: 600;
}

.stable-cart-total-breakdown {
  margin: 12px 0 14px;
  border-top: 1px solid rgba(180, 130, 60, 0.15);
  padding-top: 10px;
}

.cart-breakdown-row {
  display: flex;
  justify-content: space-between;
  font-size: 13px;
  color: #68675f;
  margin-bottom: 4px;
}

.cart-discount-row {
  color: #1f6b3b;
  font-weight: 600;
}

.cart-total-row {
  color: var(--stable-ink);
  font-size: 15px;
  font-weight: 700;
  margin-top: 8px;
  border-top: 1px dashed rgba(180, 130, 60, 0.25);
  padding-top: 6px;
}

/* Form row multi-column */
.form-row--two {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.form-row--three {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 10px;
}

@media (max-width: 500px) {
  .form-row--two,
  .form-row--three {
    grid-template-columns: 1fr;
  }
}

/* Payment selection box */
.payment-methods-box {
  margin: 16px 0;
  background: #ffffff;
  border: 1px solid rgba(180, 130, 60, 0.22);
  border-radius: 8px;
  padding: 12px 14px;
}

.payment-methods-box small {
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--stable-gold);
  margin-bottom: 10px;
}

.payment-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.payment-option {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 6px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  cursor: pointer;
  transition: all 0.2s ease;
}

.payment-option:hover {
  background: rgba(212, 168, 67, 0.04);
  border-color: var(--stable-gold);
}

.payment-option input {
  margin-top: 3px;
  width: auto;
}

.payment-option__content strong {
  display: block;
  font-size: 13px;
  color: var(--stable-ink);
}

.payment-option__content small {
  display: block;
  font-size: 11px;
  color: #68675f;
  margin-top: 1px;
  letter-spacing: 0;
}

/* ══════════════════════════════════════════════════════
   REFERENCE VIDEO DESIGN ENHANCEMENTS (RAINBOW RANG & SANDOOK)
   ══════════════════════════════════════════════════════ */

/* ─── Story Category Rail (Top of Storefront) ─── */
.story-category-rail-wrap {
  width: 100%;
  background: #ffffff;
  border-bottom: 1px solid rgba(197, 168, 128, 0.2);
  padding: 14px 0 12px;
  overflow: hidden;
  position: relative;
}

.story-category-rail {
  display: flex;
  align-items: flex-start;
  gap: clamp(14px, 2.5vw, 28px);
  padding: 4px clamp(16px, 4vw, 48px);
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.story-category-rail::-webkit-scrollbar { display: none; }

.story-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  text-decoration: none;
  color: var(--stable-ink);
  flex-shrink: 0;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  cursor: pointer;
}

.story-item:hover {
  transform: translateY(-3px);
}

.story-avatar-wrap {
  position: relative;
  width: clamp(62px, 7vw, 76px);
  height: clamp(62px, 7vw, 76px);
  border-radius: 50%;
  padding: 2.5px;
  background: linear-gradient(135deg, #d4a843 0%, #f3e5b8 50%, #b8860b 100%);
  box-shadow: 0 4px 14px rgba(212, 168, 67, 0.25);
  transition: box-shadow 0.25s ease;
}

.story-item:hover .story-avatar-wrap {
  box-shadow: 0 6px 20px rgba(212, 168, 67, 0.45);
}

.story-avatar-img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  background: #f5efe6;
  border: 2px solid #ffffff;
  display: block;
}

.story-label {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: #2b231d;
  text-align: center;
  white-space: nowrap;
}

/* ─── 4-Column Trust Proposition Strip ─── */
.trust-strip {
  width: 100%;
  background: #fbf8f2;
  border-top: 1px solid rgba(197, 168, 128, 0.2);
  border-bottom: 1px solid rgba(197, 168, 128, 0.2);
  padding: 16px clamp(16px, 4vw, 48px);
}

.trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  max-width: 1280px;
  margin: 0 auto;
}

@media (max-width: 900px) {
  .trust-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}

.trust-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 6px 10px;
}

.trust-icon-box {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(212, 168, 67, 0.12);
  border: 1px solid rgba(212, 168, 67, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
  color: #8c6a28;
}

.trust-text-wrap strong {
  display: block;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: #1a1512;
}

.trust-text-wrap span {
  display: block;
  font-size: 11px;
  color: #68675f;
  margin-top: 1px;
}

/* ─── Product Card High-Converting Elements ─── */
.stable-card__rating-badge {
  position: absolute;
  bottom: 8px;
  right: 8px;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 12px;
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 700;
  color: #1e150f;
  display: inline-flex;
  align-items: center;
  gap: 3px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  z-index: 2;
  pointer-events: none;
}

.stable-card__rating-badge .star-icon {
  color: #d4a843;
  font-size: 10px;
}

.stable-card__rating-badge small {
  color: #7a756f;
  font-weight: 500;
  font-size: 9.5px;
}

.stable-card__discount-tag {
  display: inline-block;
  background: #fdf0f0;
  color: #c62828;
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.3px;
  padding: 2px 6px;
  border-radius: 4px;
  border: 1px solid rgba(198, 40, 40, 0.18);
  margin-left: 6px;
}

.stable-card__best-price {
  font-size: 10.5px;
  color: #244b3d;
  background: rgba(36, 75, 61, 0.06);
  padding: 3px 6px;
  border-radius: 4px;
  margin: 3px 0 2px;
  display: inline-block;
  width: fit-content;
}

.stable-card__best-price strong {
  font-weight: 700;
  color: #1b382d;
}

.stable-card__stars-row {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 2px 0 6px;
}

.stable-card__stars-row .stars-gold {
  color: #d4a843;
  font-size: 11px;
  letter-spacing: 1px;
}

.stable-card__stars-row .review-text {
  font-size: 10.5px;
  color: #7a756f;
}

/* ─── Watch and Buy Video Commerce Section ─── */
.watch-and-buy-section {
  width: 100%;
  padding: 36px clamp(16px, 4vw, 48px);
  background: linear-gradient(180deg, #fbf8f2 0%, #ffffff 100%);
  border-top: 1px solid rgba(197, 168, 128, 0.2);
  border-bottom: 1px solid rgba(197, 168, 128, 0.2);
  margin: 20px 0;
  box-sizing: border-box;
}

.watch-buy-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 22px;
}

.watch-buy-eyebrow {
  display: block;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 2px;
  color: #a07830;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.watch-buy-title {
  font-family: var(--font-serif);
  font-size: clamp(24px, 3.2vw, 36px);
  font-weight: 400;
  letter-spacing: 0.5px;
  color: var(--stable-ink);
  margin: 0;
  line-height: 1.15;
}

.watch-buy-subtitle {
  font-size: 13px;
  color: #68675f;
  margin: 4px 0 0;
}

.watch-buy-nav-controls {
  display: flex;
  gap: 8px;
}

.reel-nav-btn {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: #ffffff;
  color: #1e150f;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
}

.reel-nav-btn:hover {
  background: #1e150f;
  color: #ffffff;
}

.reels-track-wrap {
  width: 100%;
  overflow: hidden;
}

.reels-track {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  padding: 6px 0 16px;
}

.reels-track::-webkit-scrollbar { display: none; }

.reel-card {
  flex: 0 0 220px;
  border-radius: 14px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(197, 168, 128, 0.25);
  display: flex;
  flex-direction: column;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.reel-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
}

.reel-video-container {
  position: relative;
  width: 100%;
  height: 290px;
  background: #1a1512;
  overflow: hidden;
}

.reel-poster-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.reel-card:hover .reel-poster-img {
  transform: scale(1.04);
}

.reel-live-pill {
  position: absolute;
  top: 10px;
  left: 10px;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  color: #ffffff;
  padding: 3px 8px;
  border-radius: 20px;
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 1px;
  display: flex;
  align-items: center;
  gap: 5px;
}

.pulse-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #e53935;
  box-shadow: 0 0 6px #e53935;
  animation: pulseAnimation 1.5s infinite;
}

@keyframes pulseAnimation {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.4); opacity: 0.6; }
}

.reel-views-pill {
  position: absolute;
  top: 10px;
  right: 10px;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  color: #ffffff;
  padding: 3px 8px;
  border-radius: 20px;
  font-size: 9.5px;
  font-weight: 600;
}

.reel-play-trigger {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(4px);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
}

.reel-play-trigger:hover {
  background: #ffffff;
  transform: translate(-50%, -50%) scale(1.1);
}

.play-icon-triangle {
  color: #1a1512;
  font-size: 14px;
  margin-left: 2px;
}

.reel-product-card {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  background: #ffffff;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.reel-product-thumb {
  width: 36px;
  height: 36px;
  border-radius: 6px;
  overflow: hidden;
  flex-shrink: 0;
  background: #f4ede4;
}

.reel-product-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.reel-product-info {
  flex: 1;
  min-width: 0;
}

.reel-product-title {
  display: block;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--stable-ink);
}

.reel-product-pricing {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 1px;
}

.reel-curr-price {
  font-size: 12px;
  font-weight: 700;
  color: var(--stable-ink);
}

.reel-old-price {
  font-size: 10px;
  color: #88837e;
}

.reel-quick-add-btn {
  background: #244b3d;
  color: #ffffff;
  border: none;
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.reel-quick-add-btn:hover {
  background: #19352b;
}

/* Fullscreen Reel Modal */
.reel-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1200;
  align-items: center;
  justify-content: center;
}

.reel-modal.is-active {
  display: flex;
}

.reel-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 8, 6, 0.85);
  backdrop-filter: blur(10px);
}

.reel-modal-content {
  position: relative;
  z-index: 2;
  width: min(420px, 92vw);
  height: min(740px, 90vh);
  border-radius: 18px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
}

.reel-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 10;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  border: none;
  font-size: 14px;
  cursor: pointer;
}

.reel-modal-media {
  position: relative;
  width: 100%;
  height: 100%;
}

.reel-modal-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.reel-modal-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 20px 16px;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.88) 70%);
  color: #fff;
}

.reel-modal-caption {
  font-size: 13px;
  line-height: 1.4;
  margin-bottom: 12px;
}

.reel-modal-live-badge {
  display: inline-block;
  background: rgba(229, 185, 90, 0.25);
  border: 1px solid #e5b95a;
  color: #f7d070;
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.5px;
  padding: 4px 10px;
  border-radius: 20px;
  margin-bottom: 10px;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}

.reel-dock-card {
  background: rgba(255, 255, 255, 0.98);
  border-radius: 12px;
  padding: 12px 14px;
  color: #1e150f;
  display: flex;
  flex-direction: column;
  gap: 10px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
}

.reel-dock-details {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.reel-dock-title {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: #1a1512;
}

.reel-dock-price strong {
  font-size: 15px;
  color: #1a1512;
}

.reel-dock-price s {
  font-size: 12px;
  color: #888;
  margin-left: 4px;
}

.reel-dock-discount {
  font-size: 11px;
  font-weight: 800;
  color: #2e7d32;
  margin-left: 6px;
  background: rgba(46, 125, 50, 0.1);
  padding: 2px 6px;
  border-radius: 4px;
}

.reel-dock-actions-row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.reel-dock-view-btn {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #f4ede4;
  color: #1a1512;
  border: 1px solid #dcd4c8;
  border-radius: 6px;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.2s ease;
}

.reel-dock-view-btn:hover {
  background: #e8ded2;
}

.reel-dock-buy-btn {
  flex: 1;
  background: #244b3d;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 9px 14px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
}

.reel-dock-buy-btn:hover {
  background: #18352b;
}

/* ─── Explore All Banner & Editorial Feature ─── */
.explore-all-banner-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 24px 16px 36px;
}

.explore-all-bar-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #0d1b2a;
  color: #ffffff;
  padding: 14px 38px;
  border-radius: 30px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: 0 6px 20px rgba(13, 27, 42, 0.2);
  transition: all 0.25s ease;
}

.explore-all-bar-btn:hover {
  background: #1a3250;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(13, 27, 42, 0.3);
}

.editorial-promo-banner {
  width: 100%;
  margin: 32px 0;
  background: linear-gradient(135deg, #101924 0%, #1a2738 100%);
  border-top: 1px solid rgba(223, 183, 120, 0.3);
  border-bottom: 1px solid rgba(223, 183, 120, 0.3);
  color: #ffffff;
  padding: clamp(36px, 5vw, 64px) clamp(16px, 4vw, 48px);
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}

.editorial-promo-content {
  max-width: 600px;
  position: relative;
  z-index: 2;
}

.editorial-eyebrow {
  display: inline-block;
  font-family: var(--font-serif);
  font-style: italic;
  font-size: 22px;
  color: #d4a843;
  margin-bottom: 6px;
}

.editorial-title {
  font-family: var(--font-serif);
  font-size: clamp(28px, 4.5vw, 48px);
  font-weight: 400;
  letter-spacing: 1px;
  line-height: 1.1;
  margin: 0 0 12px;
  color: #ffffff;
}

.editorial-desc {
  font-size: 14px;
  line-height: 1.6;
  color: #d8d2c8;
  margin-bottom: 22px;
}

.editorial-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #d4a843;
  color: #1a1512;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  padding: 12px 28px;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.editorial-btn:hover {
  background: #f1cf85;
}

/* ─── Full-Width Solid Navy Explore All Bar ─── */
.explore-all-fullwidth-bar {
  width: 100%;
  background: #0b1a30;
  border-top: 1px solid rgba(223, 183, 120, 0.3);
  border-bottom: 1px solid rgba(223, 183, 120, 0.3);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.explore-all-fullwidth-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  padding: 18px 24px;
  color: #ffffff;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  text-decoration: none;
  transition: all 0.25s ease;
}

.explore-all-fullwidth-link:hover {
  background: rgba(255, 255, 255, 0.06);
  color: #f7d070;
}

/* ─── Arched Dome Categories Rail (Shop by Categories) ─── */
.arched-categories-section {
  width: 100%;
  max-width: var(--layout-max);
  margin: 48px auto;
  padding: 0 var(--layout-pad);
  box-sizing: border-box;
}

.arched-categories-rail {
  display: flex;
  align-items: flex-start;
  gap: clamp(14px, 2vw, 24px);
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  padding: 12px 4px 20px;
}

.arched-categories-rail::-webkit-scrollbar { display: none; }

.arched-cat-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  flex-shrink: 0;
  width: clamp(130px, 14vw, 175px);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.arched-cat-card:hover {
  transform: translateY(-6px);
}

.arched-cat-media {
  width: 100%;
  aspect-ratio: 3 / 4;
  border-radius: 90px 90px 12px 12px;
  overflow: hidden;
  background: #f4ede4;
  box-shadow: 0 8px 24px rgba(25, 18, 12, 0.08);
  border: 2px solid rgba(212, 168, 67, 0.2);
  transition: all 0.3s ease;
}

.arched-cat-card:hover .arched-cat-media {
  border-color: #d4a843;
  box-shadow: 0 12px 32px rgba(212, 168, 67, 0.3);
}

.arched-cat-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.arched-cat-card:hover .arched-cat-media img {
  transform: scale(1.05);
}

.arched-cat-pill {
  display: inline-block;
  background: #ffffff;
  border: 1px solid #e2dcd4;
  color: #1e150f;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  padding: 6px 16px;
  border-radius: 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: all 0.2s ease;
}

.arched-cat-card:hover .arched-cat-pill {
  background: #1e150f;
  color: #ffffff;
  border-color: #1e150f;
}

.arched-cat-action {
  display: flex;
  justify-content: center;
  margin-top: 18px;
}

.arched-view-all-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #1e150f;
  color: #ffffff;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  padding: 10px 32px;
  border-radius: 24px;
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15);
  transition: all 0.2s ease;
}

.arched-view-all-btn:hover {
  background: #3a2b20;
  transform: translateY(-2px);
}

/* ─── Artwork By Richa Showcase Banner ─── */
.artwork-showcase-banner {
  position: relative;
  width: 100%;
  min-height: clamp(380px, 45vw, 560px);
  margin: 48px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  overflow: hidden;
  box-sizing: border-box;
}

.artwork-showcase-backdrop {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.artwork-showcase-backdrop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.artwork-showcase-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: radial-gradient(circle at center, rgba(15, 15, 18, 0.5) 0%, rgba(15, 15, 18, 0.85) 100%);
}

.artwork-showcase-content {
  position: relative;
  z-index: 3;
  max-width: 680px;
  padding: 32px 20px;
  color: #ffffff;
}

.artwork-kicker {
  display: block;
  font-family: var(--font-serif);
  font-style: italic;
  font-size: clamp(20px, 2.5vw, 28px);
  color: #e5b95a;
  margin-bottom: 2px;
}

.artwork-title {
  font-family: var(--font-serif);
  font-size: clamp(38px, 6vw, 68px);
  font-weight: 400;
  letter-spacing: 2px;
  line-height: 1;
  color: #ffffff;
  margin: 0 0 12px;
}

.artwork-tagline {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 3px;
  color: #dcd3c7;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.artwork-sub {
  font-size: 14px;
  color: #b8b0a5;
  margin-bottom: 24px;
}

.artwork-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: #e5b95a;
  border: 1.5px solid #e5b95a;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 12px 34px;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.25s ease;
}

.artwork-btn:hover {
  background: #e5b95a;
  color: #1a1512;
  box-shadow: 0 0 20px rgba(229, 185, 90, 0.4);
}

/* ─── Indo-Western Showcase Banner ─── */
.indowestern-showcase-banner {
  position: relative;
  width: 100%;
  min-height: clamp(380px, 45vw, 560px);
  margin: 48px 0;
  display: flex;
  align-items: center;
  overflow: hidden;
  box-sizing: border-box;
}

.indowestern-backdrop {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.indowestern-backdrop img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.indowestern-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(90deg, rgba(20, 16, 12, 0.88) 0%, rgba(20, 16, 12, 0.6) 45%, rgba(20, 16, 12, 0.15) 100%);
}

.indowestern-content {
  position: relative;
  z-index: 3;
  max-width: 580px;
  padding: 40px clamp(20px, 5vw, 64px);
  color: #ffffff;
}

.indowestern-eyebrow {
  display: inline-block;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  color: #e5b95a;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.indowestern-title {
  font-family: var(--font-serif);
  font-size: clamp(26px, 4vw, 44px);
  font-weight: 400;
  letter-spacing: 1px;
  line-height: 1.15;
  color: #ffffff;
  margin: 0 0 14px;
}

.indowestern-desc {
  font-size: 14px;
  line-height: 1.6;
  color: #e2dcd4;
  margin-bottom: 20px;
}

.indowestern-features {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
  color: #f3e5b8;
  margin-bottom: 24px;
}

.indowestern-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ffffff;
  color: #1a1512;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  padding: 13px 32px;
  border-radius: 4px;
  text-decoration: none;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  transition: all 0.2s ease;
}

.indowestern-btn:hover {
  background: #f7d070;
  transform: translateY(-2px);
}

.indowestern-tagline {
  margin-top: 20px;
  font-size: 10px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.6);
  text-transform: uppercase;
}

/* ─── Luxury Wave Divider ─── */
.luxury-wave-divider {
  width: 100%;
  line-height: 0;
  overflow: hidden;
  margin-top: 40px;
}

.luxury-wave-divider svg {
  display: block;
  width: 100%;
  height: clamp(50px, 8vw, 100px);
}

/* ══════════════════════════════════════════════════════
   WORLD-CLASS LUXURY ATELIER UPGRADES
══════════════════════════════════════════════════════ */

/* ─── Continuous Smooth Marquee Announcement Ticker ─── */
.stable-announcement {
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  background: #14100c;
  color: #f7ede1;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid rgba(197, 160, 89, 0.25);
}

.announcement-ticker-track {
  display: inline-flex;
  align-items: center;
  gap: 36px;
  animation: marqueeTicker 28s linear infinite;
}

@keyframes marqueeTicker {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
  .announcement-ticker-track { animation: none; }
}

/* ─── Transparent to Frosted Glass Header Transition ─── */
.stable-header.is-scrolled {
  background: rgba(253, 251, 247, 0.96) !important;
  box-shadow: 0 10px 30px rgba(20, 16, 12, 0.08) !important;
  border-bottom-color: rgba(197, 160, 89, 0.35) !important;
}

/* ─── "Shop The Edit" Editorial Stories Section ─── */
.atelier-edits-section {
  width: 100%;
  padding: clamp(48px, 6vw, 84px) clamp(16px, 4vw, 48px);
  background: #faf8f5;
  border-top: 1px solid rgba(197, 160, 89, 0.18);
  border-bottom: 1px solid rgba(197, 160, 89, 0.18);
  box-sizing: border-box;
}

.atelier-edits-header {
  text-align: center;
  max-width: 680px;
  margin: 0 auto clamp(28px, 4vw, 48px);
}

.atelier-edits-header small {
  display: block;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  color: #a07830;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.atelier-edits-header h2 {
  font-family: var(--font-serif);
  font-size: clamp(28px, 3.8vw, 46px);
  font-weight: 400;
  line-height: 1.15;
  color: var(--stable-ink);
  margin: 0 0 10px;
}

.atelier-edits-header p {
  font-size: 14px;
  line-height: 1.6;
  color: #6a645d;
  margin: 0;
}

.atelier-edits-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(14px, 2vw, 24px);
  max-width: 1360px;
  margin: 0 auto;
}

@media (max-width: 1024px) {
  .atelier-edits-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 580px) {
  .atelier-edits-grid {
    grid-template-columns: 1fr;
  }
}

.atelier-edit-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid rgba(197, 160, 89, 0.25);
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, border-color 0.3s ease;
}

.atelier-edit-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(26, 21, 18, 0.1);
  border-color: rgba(197, 160, 89, 0.6);
}

.atelier-edit-media {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: #f4eee5;
}

.atelier-edit-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.atelier-edit-card:hover .atelier-edit-media img {
  transform: scale(1.05);
}

.atelier-edit-tag {
  position: absolute;
  top: 14px;
  left: 14px;
  background: rgba(20, 16, 12, 0.85);
  backdrop-filter: blur(4px);
  color: #f7ede1;
  font-family: var(--font-sans);
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 2px;
  border: 1px solid rgba(197, 160, 89, 0.3);
}

.atelier-edit-content {
  padding: 20px 18px 22px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.atelier-edit-content h3 {
  font-family: var(--font-serif);
  font-size: 21px;
  font-weight: 400;
  letter-spacing: 0.5px;
  color: #1a1512;
  margin: 0 0 6px;
  line-height: 1.25;
}

.atelier-edit-content p {
  font-size: 13px;
  line-height: 1.5;
  color: #68625b;
  margin: 0 0 16px;
  flex-grow: 1;
}

.atelier-edit-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: #9e7529;
  transition: gap 0.2s ease;
}

.atelier-edit-card:hover .atelier-edit-cta {
  gap: 10px;
  color: #1a1512;
}

/* ─── Luxury Product Showcase (Split Story Section) ─── */
.atelier-split-showcase {
  width: 100%;
  background: #14110e;
  color: #ffffff;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  min-height: clamp(480px, 55vw, 680px);
  margin: clamp(40px, 6vw, 72px) 0;
  border-top: 1px solid rgba(197, 160, 89, 0.3);
  border-bottom: 1px solid rgba(197, 160, 89, 0.3);
  box-sizing: border-box;
  overflow: hidden;
}

@media (max-width: 860px) {
  .atelier-split-showcase {
    grid-template-columns: 1fr;
  }
}

.atelier-split-media {
  position: relative;
  width: 100%;
  min-height: 380px;
  background: #1e1915;
  overflow: hidden;
}

.atelier-split-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.atelier-split-showcase:hover .atelier-split-media img {
  transform: scale(1.03);
}

.atelier-split-story {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(36px, 6vw, 72px) clamp(24px, 5vw, 64px);
  max-width: 580px;
}

.atelier-split-kicker {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  color: #e5b95a;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.atelier-split-title {
  font-family: var(--font-serif);
  font-size: clamp(28px, 4vw, 48px);
  font-weight: 400;
  letter-spacing: 0.8px;
  line-height: 1.15;
  color: #ffffff;
  margin: 0 0 16px;
}

.atelier-split-desc {
  font-size: 15px;
  line-height: 1.7;
  color: #d6cfc7;
  margin: 0 0 28px;
}

.atelier-split-highlights {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 32px;
  font-size: 13px;
  color: #f0e6d6;
}

.atelier-split-highlights span {
  display: flex;
  align-items: center;
  gap: 10px;
}

.atelier-split-highlights span i {
  color: #e5b95a;
  font-style: normal;
}

.atelier-split-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #e5b95a;
  color: #14110e;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 15px 36px;
  border-radius: 4px;
  text-decoration: none;
  width: fit-content;
  box-shadow: 0 6px 20px rgba(229, 185, 90, 0.3);
  transition: all 0.25s ease;
}

.atelier-split-btn:hover {
  background: #ffffff;
  color: #14110e;
  box-shadow: 0 8px 24px rgba(255, 255, 255, 0.4);
  transform: translateY(-2px);
}

/* ─── Brand Story Section ("The Shivara Atelier") ─── */
.atelier-story-section {
  width: 100%;
  padding: clamp(56px, 7vw, 96px) clamp(16px, 4vw, 48px);
  background: #fbf9f6;
  text-align: center;
  box-sizing: border-box;
}

.atelier-story-container {
  max-width: 820px;
  margin: 0 auto;
}

.atelier-story-kicker {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  color: #9e7529;
  text-transform: uppercase;
  margin-bottom: 12px;
  display: block;
}

.atelier-story-heading {
  font-family: var(--font-serif);
  font-size: clamp(30px, 4.2vw, 52px);
  font-weight: 400;
  line-height: 1.15;
  color: #1a1512;
  margin: 0 0 18px;
}

.atelier-story-text {
  font-size: clamp(14.5px, 1.3vw, 16.5px);
  line-height: 1.8;
  color: #5c554e;
  margin: 0 0 32px;
}

.atelier-story-badges {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: clamp(16px, 3vw, 36px);
  margin-bottom: 36px;
}

.atelier-story-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  color: #2b231d;
  text-transform: uppercase;
}

.atelier-story-badge-icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(197, 160, 89, 0.15);
  border: 1px solid rgba(197, 160, 89, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #9e7529;
  font-size: 13px;
}

.atelier-story-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1.5px solid #1a1512;
  color: #1a1512;
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 13px 32px;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.25s ease;
}

.atelier-story-cta:hover {
  background: #1a1512;
  color: #ffffff;
}

/* ─── Visual Instagram / Social Editorial Section ─── */
.atelier-social-section {
  width: 100%;
  padding: clamp(40px, 5vw, 68px) clamp(16px, 4vw, 48px);
  background: #faf8f5;
  box-sizing: border-box;
}

.atelier-social-header {
  text-align: center;
  margin-bottom: clamp(24px, 3vw, 36px);
}

.atelier-social-header small {
  display: block;
  font-family: var(--font-sans);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 2.5px;
  color: #9e7529;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.atelier-social-header h2 {
  font-family: var(--font-serif);
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 400;
  color: var(--stable-ink);
  margin: 0 0 8px;
}

.atelier-social-header a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #a07830;
  text-decoration: none;
  transition: color 0.2s ease;
}

.atelier-social-header a:hover {
  color: #1a1512;
}

.atelier-social-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: clamp(8px, 1.2vw, 16px);
  max-width: 1360px;
  margin: 0 auto;
}

@media (max-width: 900px) {
  .atelier-social-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 480px) {
  .atelier-social-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.atelier-social-item {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 4px;
  background: #f0eae1;
  display: block;
  border: 1px solid rgba(197, 160, 89, 0.2);
}

.atelier-social-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.atelier-social-item:hover img {
  transform: scale(1.08);
}

.atelier-social-overlay {
  position: absolute;
  inset: 0;
  background: rgba(20, 16, 12, 0.45);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 20px;
  transition: opacity 0.25s ease;
}

.atelier-social-item:hover .atelier-social-overlay {
  opacity: 1;
}

/* ══════════════════════════════════════════════════════
   PRODUCTION HARDENING: MOBILE-FIRST FULL QA & FIXES
   Viewports: 320px, 360px, 375px, 390px, 430px, 768px
══════════════════════════════════════════════════════ */

html, body {
  overflow-x: clip;
  overflow-x: hidden;
  max-width: 100vw;
  width: 100%;
  box-sizing: border-box;
}

/* Ensure no child can force horizontal viewport overflow */
body.catalog-stable > * {
  max-width: 100vw;
  box-sizing: border-box;
}

/* Mobile dock collision prevention: hide dock when any drawer or modal is open */
body.stable-modal-open .stable-mobile-dock {
  display: none !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

/* Mobile bottom dock iOS safe-area-inset padding */
.stable-mobile-dock {
  padding-bottom: calc(4px + env(safe-area-inset-bottom, 0px)) !important;
  height: calc(56px + env(safe-area-inset-bottom, 0px)) !important;
  z-index: 90 !important;
}

/* Sticky Mobile Add to Bag PDP bar: ensure it doesn't overlap or collide */
.stable-mobile-buy {
  z-index: 85 !important;
  padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)) !important;
  max-width: 100vw;
  box-sizing: border-box;
}

/* Checkout Modal Mobile Optimization (320px - 430px) */
.stable-checkout-modal {
  z-index: 1000 !important;
  padding: 8px !important;
  box-sizing: border-box !important;
}

.luxury-checkout-card {
  width: min(520px, 100%) !important;
  max-width: 100% !important;
  max-height: calc(100vh - 16px) !important;
  max-height: calc(100dvh - 16px) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  box-sizing: border-box !important;
}

@media (max-width: 500px) {
  .luxury-checkout-card {
    padding: 24px 16px !important;
    border-radius: 12px !important;
  }

  .checkout-header h2 {
    font-size: 22px !important;
  }

  /* Stack PIN, City, State on mobile */
  .form-row--two,
  .form-row--three {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  /* Mobile input sizing: 16px prevents iOS Safari auto-zoom */
  .checkout-form input,
  .checkout-form textarea,
  .checkout-form select {
    font-size: 16px !important;
    padding: 11px 12px !important;
  }
}

/* Ensure drawers fit within mobile viewport height with internal scroll */
.stable-drawer {
  max-width: 100vw !important;
  box-sizing: border-box !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.stable-drawer--cart,
.stable-drawer--search,
.stable-drawer--menu,
.stable-drawer--account {
  padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px)) !important;
}

/* Quick View Mobile Bottom Sheet (320px - 767px) */
@media (max-width: 767px) {
  .stable-quick {
    width: 100% !important;
    max-width: 100vw !important;
    max-height: 90vh !important;
    max-height: 90dvh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    left: 0 !important;
    transform: translateY(100%) !important;
    border-radius: 16px 16px 0 0 !important;
    margin: 0 !important;
  }

  .stable-quick.is-open {
    transform: translateY(0) !important;
  }

  .stable-quick__actions {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 10 !important;
    background: var(--stable-paper) !important;
    padding: 10px 0 calc(12px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* Small Viewport Hardening (<= 360px: iPhone SE, Galaxy Fold) */
@media (max-width: 360px) {
  .stable-header {
    padding: 6px 10px !important;
  }

  .stable-logo {
    font-size: 20px !important;
    letter-spacing: 1px !important;
  }

  .stable-header__btn {
    padding: 0 8px !important;
    font-size: 9.5px !important;
  }

  .stable-hero h1 {
    font-size: 38px !important;
    line-height: 1 !important;
  }

  .commerce-product-grid {
    gap: 8px 6px !important;
  }

  .stable-card__body {
    padding: 8px 8px 10px !important;
  }

  .stable-card__title {
    font-size: 10px !important;
    min-height: 28px !important;
  }

  .stable-category-rail {
    grid-auto-columns: 82px !important;
    gap: 8px !important;
  }

  .category-rail-section,
  .stable-products,
  .stable-page {
    padding: 20px 8px !important;
  }
}
/* Keep the editorial product features on larger screens only. */
@media (max-width: 767px) {
  body[data-page="home"] .living-deck,
  body[data-page="home"] .atelier-split-showcase {
    display: none !important;
  }
}




/* Keep navigation glyphs legible independently of compact button labels. */
@media (max-width: 767px) {
  .stable-header__menu .menu-icon {
    font-size: 20px;
    line-height: 1;
  }
  .stable-header__actions [data-search-open] {
    font-size: 24px !important;
    line-height: 1;
  }
}

@media (max-width: 767px) {
  .stable-announcement {
    height: 40px;
    min-height: 40px;
    padding: 4px 12px;
    white-space: normal;
    font-size: 10px;
    letter-spacing: 1px;
    line-height: 1.4;
    text-align: center;
  }
  .stable-announcement [data-announcement-text] {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
  }
}

/* Shivara visual refresh: calmer rhythm, richer editorial polish. */
:root {
  --stable-paper: #fbf8f4;
  --stable-surface: #fffefd;
  --stable-line: rgba(139, 105, 68, .16);
  --stable-gold: #bd9861;
  --stable-gold-hover: #936c38;
}
body.catalog-stable { background: #fbf8f4; color: #281a14; font-size: 14px; }
.stable-announcement { min-height: 30px; padding-block: 5px; background: #241611; font-size: 9px; letter-spacing: 1.45px; }
.stable-header { min-height: 68px; padding-inline: clamp(16px, 4vw, 56px); background: rgba(251,248,244,.96); border-bottom-color: rgba(139,105,68,.14); box-shadow: 0 5px 22px rgba(48,31,21,.045); }
.stable-logo { font-size: 27px; }
.stable-logo small { color: #96713f; }
.stable-hero { min-height: clamp(520px, 69svh, 760px); max-height: 800px; background: #261712; }
.stable-hero__backdrop img { object-position: center 46%; filter: saturate(.9) contrast(1.02); }
.stable-hero__shade { background: linear-gradient(90deg,rgba(25,15,11,.76),rgba(25,15,11,.35) 48%,rgba(25,15,11,.03) 82%),linear-gradient(0deg,rgba(25,15,11,.42),transparent 58%); }
.stable-hero__content { width: min(760px,92%); }
.stable-hero h1 { max-width: 680px; line-height: .99; }
.stable-hero__content > p:nth-of-type(2) { max-width: 440px; }
.stable-button { min-height: 48px; padding-inline: 24px; border-radius: 3px; letter-spacing: .8px; }
.stable-button--light { background: #f5e9d7; border-color: #f5e9d7; }
.stable-button--light:hover { background: #fff; border-color: #fff; }
.trust-strip { padding: 18px clamp(16px,4vw,56px); background: #f4eee6; border-bottom: 1px solid rgba(139,105,68,.12); }
.trust-grid { max-width: 1440px; margin: 0 auto; }
.trust-item { min-height: 54px; padding: 7px clamp(10px,1.8vw,25px); }
.trust-icon-box { font-size: 19px; }
.trust-text-wrap strong { font-size: 9px; letter-spacing: 1px; }
.trust-text-wrap span { color: #73655a; font-size: 11px; }
.category-rail-section,.stable-products,.home-products,.living-deck,.signature-edit,.collection-main,.product-page,.stable-page { max-width: 1520px !important; padding: clamp(38px,4.2vw,62px) clamp(18px,5vw,72px) !important; }
.category-rail-section { padding-top: 42px !important; padding-bottom: 36px !important; }
.stable-section-heading { margin-bottom: 20px; padding-bottom: 12px; border-color: rgba(139,105,68,.18); }
.stable-section-heading p,.signature-edit__copy > p,.living-deck__intro > p { letter-spacing: 1.45px; color: #9a7444; }
.stable-section-heading h2,.living-deck__intro h2,.signature-edit__copy h2 { letter-spacing: -.35px; }
.stable-section-heading > a { color: #765831; }
.stable-category-rail { gap: clamp(12px,1.5vw,22px); }
.stable-category-rail a > span { border-radius: 7px; box-shadow: 0 8px 22px rgba(48,31,21,.08); }
.stable-category-rail img { transition: transform .5s cubic-bezier(.2,.7,.2,1); }
.stable-category-rail a:hover img { transform: scale(1.045); }
.stable-category-rail strong { margin-top: 9px; font-size: 16px; }
.living-deck { max-width: none !important; padding-inline: max(5vw,calc((100vw - 1380px)/2)) !important; gap: clamp(24px,4vw,60px) !important; color: #fffaf4; background: #2a1b15; }
.living-deck__intro h2 { color: #fffaf4; }
.living-deck__intro span { color: rgba(255,250,244,.76); }
.living-card { border: 0; border-radius: 10px; box-shadow: 0 12px 30px rgba(0,0,0,.2); }
.living-card__media { aspect-ratio: 1 / 1.08; }
.living-card__copy { padding: 14px 16px 17px; }
.atelier-split-showcase { min-height: clamp(390px,43vw,590px); margin: 42px auto; background: #241812; border: 0; }
.atelier-split-media { min-height: 340px; }
.atelier-split-story { padding: clamp(28px,5vw,66px); }
.atelier-split-title { letter-spacing: 0; }
.atelier-split-desc { max-width: 520px; font-size: 14px; line-height: 1.65; }
.atelier-split-highlights { gap: 10px; margin-bottom: 24px; }
.atelier-split-btn { border-radius: 3px; letter-spacing: 1.2px; }
.home-products { padding-top: clamp(38px,4vw,58px) !important; padding-bottom: clamp(38px,4vw,58px) !important; }
.commerce-product-grid { gap: clamp(12px,1.55vw,22px) !important; }
.stable-card { border: 1px solid rgba(139,105,68,.13); border-radius: 9px; background: #fffefd; box-shadow: 0 4px 16px rgba(48,31,21,.035); }
.stable-card:hover { transform: translateY(-4px); border-color: rgba(139,105,68,.28); box-shadow: 0 13px 28px rgba(48,31,21,.11); }
.stable-card__media { aspect-ratio: 1 / 1 !important; background: #f2ece4; }
.stable-card__image { object-fit: cover !important; }
.stable-card__body { padding: 11px 12px 13px; }
.stable-card__title { font-size: 13px; line-height: 1.38; }
.stable-card__price { font-size: 12px; }
.stable-card__price strong { font-size: 15px; }
.stable-card__add { min-height: 38px; border-radius: 3px; letter-spacing: .8px; }
.stable-card__wish { box-shadow: 0 3px 12px rgba(40,26,20,.12); }
.stable-load-more { margin-top: 24px; border-radius: 3px; background: #2a1b15; }
.atelier-edits-section { padding-block: clamp(42px,5vw,68px); background: #f3ede5; border: 0; }
.atelier-edits-header { margin-bottom: clamp(22px,3vw,34px); }
.atelier-edits-header h2 { letter-spacing: -.3px; }
.atelier-edits-grid { gap: clamp(12px,1.5vw,20px); }
.atelier-edit-card { border: 1px solid rgba(139,105,68,.13); border-radius: 9px; box-shadow: 0 5px 18px rgba(48,31,21,.055); }
.atelier-edit-card:hover { transform: translateY(-4px); }
.atelier-edit-media { aspect-ratio: 1 / 1.12; }
.atelier-edit-tag { border-radius: 3px; }
.atelier-edit-content { padding: 15px 16px 17px; }
.atelier-edit-content h3 { font-size: 20px; }
.atelier-edit-content p { font-size: 12px; }
.signature-edit { max-width: none !important; padding-inline: max(5vw,calc((100vw - 1380px)/2)) !important; background: #eee1d0; }
.signature-edit__image { border-radius: 9px; }
.signature-edit__product { gap: clamp(20px,4vw,56px); }
.signature-edit__product h3 { letter-spacing: -.25px; }
.atelier-story-section { padding-block: clamp(50px,6vw,78px); background: #fbf8f4; }
.atelier-story-container { max-width: 900px; }
.atelier-story-heading { max-width: 780px; margin-inline: auto; letter-spacing: -.4px; }
.atelier-story-text { max-width: 760px; margin-inline: auto; line-height: 1.75; }
.atelier-story-badges { gap: 10px; }
.atelier-story-badge { border-radius: 999px; background: #f2ebe2; }
.atelier-social-section { padding-block: clamp(38px,4.5vw,60px); background: #f3ede5; }
.atelier-social-header { margin-bottom: 22px; }
.atelier-social-grid { gap: 10px; }
.atelier-social-item { border: 0; border-radius: 7px; }
.stable-reassurance { max-width: 1440px; margin: 0 auto; padding: 26px clamp(18px,4vw,56px); gap: 12px; background: #fbf8f4; }
.reassurance-card { min-height: 0; padding: 16px 18px; border: 1px solid rgba(139,105,68,.13); border-radius: 8px; background: #fffefd; }
.reassurance-card__icon { margin-bottom: 6px; font-size: 20px; }
.reassurance-card strong { font-size: 12px; }
.reassurance-card span { font-size: 11px; line-height: 1.5; }
.luxury-wave-divider { display: none !important; }
@media (max-width: 767px) {
  .stable-announcement { min-height: 26px; height: 26px; font-size: 8px; letter-spacing: 1px; }
  .stable-header { min-height: 54px; padding-inline: 8px; }
  .stable-logo { font-size: 22px; }
  .stable-hero { min-height: min(660px,max(490px,70svh)); height: 70svh; max-height: 660px; }
  .stable-hero__content { padding: 24px 18px 68px; }
  .stable-hero h1 { max-width: 350px; font-size: clamp(38px,10vw,48px); line-height: .99; }
  .stable-hero__content > p:nth-of-type(2) { max-width: 330px; font-size: 12px; line-height: 1.5; }
  .stable-hero__content > div { gap: 8px; }
  .stable-hero .stable-button { min-height: 42px; font-size: 8.5px; }
  .trust-strip { padding: 10px 12px; }
  .trust-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 0; }
  .trust-item { min-height: 48px; padding: 5px 7px; gap: 7px; }
  .trust-icon-box { font-size: 16px; }
  .trust-text-wrap strong { font-size: 7px; letter-spacing: .6px; }
  .trust-text-wrap span { font-size: 9px; line-height: 1.25; }
  .category-rail-section,.stable-products,.home-products,.living-deck,.signature-edit,.collection-main,.product-page,.stable-page { padding: 32px 16px !important; }
  .category-rail-section { padding-top: 27px !important; padding-bottom: 22px !important; }
  .stable-section-heading { margin-bottom: 14px; padding-bottom: 9px; }
  .stable-section-heading h2 { font-size: 27px; }
  .stable-section-heading > a { font-size: 8px; letter-spacing: .25px; }
  .stable-category-rail { grid-auto-columns: 82px; gap: 10px; }
  .stable-category-rail a > span { border-radius: 6px; }
  .stable-category-rail strong { margin-top: 7px; font-size: 10px; }
  .living-deck { gap: 18px !important; }
  .living-deck__intro h2 { font-size: 34px; }
  .living-deck__intro span { margin-top: 8px; font-size: 12px; }
  .living-deck__stage { grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 8px !important; }
  .living-card { border-radius: 7px; }
  .living-card__media { aspect-ratio: 1 / 1.12; }
  .living-card__copy { padding: 8px; }
  .living-card__copy small { font-size: 7px; }
  .living-card__copy strong { font-size: 10px; }
  .living-card__copy p { font-size: 9px; }
  .atelier-split-showcase { margin: 24px 0; }
  .atelier-split-media { min-height: 280px; max-height: 420px; }
  .atelier-split-story { padding: 26px 20px 30px; }
  .atelier-split-title { font-size: 34px; }
  .atelier-split-desc { font-size: 12px; line-height: 1.55; }
  .atelier-split-highlights { gap: 8px; margin-bottom: 20px; font-size: 11px; }
  .atelier-split-btn { min-height: 44px; padding: 12px 18px; font-size: 10px; }
  .home-products { padding-block: 30px !important; }
  .commerce-product-grid { gap: 12px 9px !important; }
  .stable-card { border-radius: 7px; }
  .stable-card__media { aspect-ratio: 1 / 1 !important; border-radius: 6px 6px 0 0; }
  .stable-card__body { min-height: 0; padding: 8px 9px 10px; }
  .stable-card__title { min-height: 31px; font-size: 10px; line-height: 1.35; }
  .stable-card__price { min-height: 22px; margin: 2px 0; font-size: 9px; }
  .stable-card__price strong { font-size: 12px; }
  .stable-card__add { min-height: 33px; font-size: 8px; }
  .stable-card__wish { width: 29px; height: 29px; }
  .atelier-edits-section { padding: 34px 16px; }
  .atelier-edits-header { margin-bottom: 20px; }
  .atelier-edits-header p { font-size: 12px; }
  .atelier-edits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .atelier-edit-card { border-radius: 7px; }
  .atelier-edit-media { aspect-ratio: 1 / 1; }
  .atelier-edit-content { padding: 10px; }
  .atelier-edit-content h3 { font-size: 16px; }
  .atelier-edit-content p { margin-bottom: 10px; font-size: 10px; line-height: 1.4; }
  .atelier-edit-cta { font-size: 9px; letter-spacing: .7px; }
  .signature-edit { padding: 0 16px 24px !important; }
  .signature-edit__copy { padding: 25px 0 12px; }
  .signature-edit__copy h2 { font-size: 30px; }
  .signature-edit__product { gap: 12px; padding: 6px 0 8px; }
  .signature-edit__product h3 { font-size: 21px; }
  .signature-edit__image { border-radius: 7px; }
  .atelier-story-section { padding: 38px 18px; }
  .atelier-story-heading { font-size: 30px; line-height: 1.12; }
  .atelier-story-text { font-size: 12px; line-height: 1.6; }
  .atelier-story-badges { display: grid; grid-template-columns: 1fr; gap: 7px; }
  .atelier-story-badge { justify-content: center; padding: 8px 12px; font-size: 10px; }
  .atelier-social-section { padding: 32px 16px; }
  .atelier-social-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
  .stable-reassurance { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; padding: 16px 12px; }
  .reassurance-card { padding: 10px 8px; border-radius: 6px; text-align: center; }
  .reassurance-card__icon { font-size: 17px; }
  .reassurance-card strong { font-size: 9px; }
  .reassurance-card span { font-size: 8px; }
}
@media (max-width: 360px) {
  .stable-hero h1 { font-size: 36px; }
  .living-deck__stage { grid-template-columns: 1fr !important; }
  .living-card__media { aspect-ratio: 1 / .85; }
  .stable-reassurance { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .stable-category-rail img,.atelier-edit-card,.stable-card,.stable-card__image { transition-duration: .01ms !important; }
}

@media (min-width: 1101px) {
  .stable-nav {
    min-width: 0;
    flex: 1 1 0%;
    justify-content: flex-start;
    gap: clamp(5px,.65vw,10px);
    overflow: hidden;
  }
  .stable-nav > a[data-nav-category]:not([data-nav-category="new-arrivals"]):not([data-nav-category="earrings"]):not([data-nav-category="rings"]):not([data-nav-category="bracelets"]) {
    display: none;
  }
}
@media (min-width: 768px) {
  .stable-hero__content { width: min(900px, 92%); }
  .stable-hero h1 { max-width: 800px; font-size: clamp(56px, 5.4vw, 78px); }
}
/* Shared customer experience: black showroom, champagne type and antique-gold accents. */
:root {
  --shop-bg:#080807; --shop-panel:#14120e; --shop-raised:#211b13;
  --shop-text:#f7eee0; --shop-muted:#c7bba7; --shop-gold:#d2b27d; --shop-border:#6c5738;
  --stable-ink:var(--shop-text); --stable-paper:var(--shop-bg); --stable-surface:var(--shop-panel);
  --stable-line:var(--shop-border); --stable-muted:var(--shop-muted); --stable-gold:var(--shop-gold);
  --stable-gold-bright:#edd5aa; --stable-gold-hover:#ecd0a2; --stable-rose:var(--shop-gold);
  --stable-green:#91d7ae; --stable-red:#f0a79f;
}
body.catalog-stable {color:var(--shop-text);background:var(--shop-bg);color-scheme:dark}
body.catalog-stable :focus-visible {outline:2px solid #edd5aa;outline-offset:3px}
body.catalog-stable :is(.stable-header,.stable-footer,.stable-mobile-dock){background:var(--shop-bg);color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable .stable-announcement{background:linear-gradient(95deg,#c5a77a,#f2dfba 50%,#c5a77a);color:#21190f;border-color:#c7a16a}
body.catalog-stable :is(.stable-logo,.stable-nav>a,.stable-nav>div>button,.stable-footer a,.stable-footer strong){color:var(--shop-text)}
body.catalog-stable :is(.stable-header__btn,.stable-header__menu,.stable-dock-item){background:transparent;color:var(--shop-text);border-color:var(--shop-border);box-shadow:none}
body.catalog-stable .stable-header__btn--bag{background:#d2b27d;color:#18120a}
body.catalog-stable :is(.stable-header__btn,.stable-header__menu,.dock-icon) svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
body.catalog-stable :is(.stable-mobile-dock,.stable-dock-item){color:var(--shop-text)}
body.catalog-stable :is(.stable-nav__mega,.stable-nav__mega-categories,.stable-menu,.stable-drawer,.stable-layer__head,.stable-cart-lines,.stable-cart-footer,.stable-quick,.stable-quick__info,.stable-checkout-modal,.luxury-checkout-card){background:var(--shop-panel)!important;color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable :is(.stable-layer__head h2,.stable-drawer h2,.stable-drawer h3,.stable-cart-line a,.stable-cart-line strong,.stable-cart-complement strong,.stable-cart-complement small,.stable-quick h2,.stable-quick h3,.checkout-header h2,.stable-menu h2,.account-login-header h3){color:var(--shop-text)!important;background:none!important;-webkit-text-fill-color:var(--shop-text)!important}
body.catalog-stable :is(.stable-layer__head>button,.stable-quick__close,.stable-search-box>button,.stable-qty button,.stable-cart-line__links button,.stable-cart-complement>button,.stable-menu-utility button,.stable-menu-utility a,.stable-menu nav a){background:transparent;color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable :is(.stable-menu a,.stable-nav__mega a,.stable-nav__mega button,.stable-menu-feature strong,.stable-menu-feature em,.stable-menu-help a,.stable-menu-help p){color:var(--shop-text)}
body.catalog-stable :is(.stable-search-box,.stable-search-discovery,.stable-search-discovery>div,.stable-search-discovery button,.stable-search-discovery a,.stable-cart-complement,.stable-qty,.luxury-packaging-bar,.account-details-box,.account-perks,.checkout-order-summary,.payment-methods-box,.payment-option,.quick-craftsmanship-tags .spec-tag){background:var(--shop-raised)!important;color:var(--shop-text);border-color:var(--shop-border)!important;box-shadow:none}
body.catalog-stable :is(.stable-search-count,.stable-search-discovery span,.stable-cart-line small,.stable-cart-line__mode,.stable-cart-note small,.stable-cart-service,.account-phone,.account-email,.account-perks,.checkout-header p,.stable-quick__info>small,.stable-quick__info>p,.checkout-order-summary){color:var(--shop-muted)!important}
body.catalog-stable :is(.stable-drawer,.stable-quick,.luxury-checkout-card) :is(input,textarea,select),body.catalog-stable :is(.storefront-search-input,.storefront-sort-select,.stable-sort select,.collection-toolbar select){background:#0d0c09!important;color:var(--shop-text)!important;border-color:var(--shop-border)!important;box-shadow:none;color-scheme:dark}
body.catalog-stable :is(input,textarea)::placeholder{color:#bbaf9c;opacity:1}
body.catalog-stable :is(.stable-button--dark,.checkout-submit-btn,.track-submit-btn,#cart-coupon-apply,.btn-apply-code){background:linear-gradient(105deg,#c2a06a,#ebd4a9)!important;color:#181109!important;border-color:#d2b27d!important;box-shadow:none!important;-webkit-text-fill-color:#181109!important}
body.catalog-stable :is(.stable-button--light,.stable-button--line,.stable-button--plain){background:transparent!important;color:var(--shop-text)!important;border-color:var(--shop-gold)!important;box-shadow:none!important;-webkit-text-fill-color:var(--shop-text)!important}
body.catalog-stable :is(.stable-button,.stable-header__btn,.stable-header__menu,.stable-cart-complement>button):hover{filter:brightness(1.12)}
body.catalog-stable :is(.stable-cart-group,.stable-cart-line,.stable-cart-total-breakdown,.cart-breakdown-row,.stable-cart-note,.stable-quick details,.checkout-actions,.stable-layer__head){border-color:var(--shop-border)}
body.catalog-stable .luxury-packaging-text{color:var(--shop-text)}
body.catalog-stable .luxury-packaging-text>span{color:var(--shop-gold)}
body.catalog-stable .luxury-packaging-track{background:#3d3020}.catalog-stable .luxury-packaging-fill{background:linear-gradient(90deg,#aa8248,#e5c893)}
body.catalog-stable :is(.cart-promo-offers,.cart-promo-card,.cart-coupon-applied){background:var(--shop-raised)!important;border-color:var(--shop-border)!important;color:var(--shop-text)!important}
body.catalog-stable .cart-promo-offers :is(div,strong,span){color:var(--shop-text)!important}
body.catalog-stable :is(.btn-copy-code,.coupon-remove-btn,.account-logout-btn){color:var(--shop-gold)!important;border-color:var(--shop-gold)!important;background:transparent!important}
body.catalog-stable :is(.cart-total-row strong,.stable-cart-footer>strong,.stable-quick__price strong,.checkout-order-summary strong){color:var(--shop-text)!important}
body.catalog-stable :is(.cart-discount-row span,.cart-breakdown-row span[style],.checkout-order-summary div[style*="color"]){color:#91d7ae!important}
body.catalog-stable :is(.payment-option small,.payment-option__content,.checkout-form label,.stable-account-container label){color:var(--shop-text)!important}
body.catalog-stable .payment-option--disabled{background:#1a1711!important;border-color:#7a674b!important;opacity:.8!important}
body.catalog-stable :is(.account-avatar,.account-actions-grid .stable-button){color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable :is(.stable-page,.collection-page,.collection-hero,.collection-toolbar,.collection-layout,.stable-products,.home-products,.stable-reassurance){background:var(--shop-bg);color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable :is(.collection-hero h1,.stable-section-heading h2,.product-page__title,.stable-pdp h1,.stable-empty h1,.stable-empty h2,.stable-empty h3){background:none!important;-webkit-text-fill-color:var(--shop-text)!important;color:var(--shop-text)!important;animation:none}
body.catalog-stable :is(.collection-hero p,.stable-breadcrumb,.stable-breadcrumb a,.collection-toolbar p,.collection-toolbar span,.stable-empty p,.stable-pdp__info>small,.stable-pdp__info>p,.stable-pdp__meta,.stable-pdp__gallery-meta){color:var(--shop-muted)}
body.catalog-stable :is(#collection-filters,.stable-filters,.collection-filters,.stable-pdp details,.stable-pdp__gallery,.stable-pdp__gallery>img,.stable-pdp__thumbs button,.stable-pdp__info .spec-tag,.stable-pdp__policies,.stable-pdp__service,.reassurance-card){background:var(--shop-panel);color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable :is(#collection-filters a,#collection-filters label,#collection-filters strong,.stable-filters a,.stable-filters label,.stable-pdp details p,.stable-pdp details summary,.stable-pdp__price strong,.reassurance-card strong,.reassurance-card span){color:var(--shop-text)}
body.catalog-stable :is(.filter-chip,.stable-chip,.collection-filters button,.storefront-filter-btn){background:var(--shop-raised);color:var(--shop-text);border-color:var(--shop-border);box-shadow:none}
body.catalog-stable :is(.filter-chip.is-active,.stable-chip.is-active){background:#d2b27d;color:#18120a}
body.catalog-stable .stable-card{background:#f6efe4;color:#22190f;border-color:#59462c;color-scheme:light;box-shadow:none}
body.catalog-stable .stable-card :is(.stable-card__title,.stable-card__price strong,.stable-card__category,.stable-card__body){color:#22190f;-webkit-text-fill-color:#22190f}
body.catalog-stable .stable-card__add{background:linear-gradient(105deg,#c2a06a,#ebd4a9);color:#181109;border-color:#c7a16a;box-shadow:none;min-height:44px}
body.catalog-stable :is(.stable-card__wish,.stable-card__quick){color:#22190f;background:#f6efe4}
body.catalog-stable :is(.track-hero,.confirmation-hero,.track-search-card,.track-result-card,.confirmation-card,.shipping-detail-block,.assurance-pill-box,.cost-breakdown,.order-status-pill){background:var(--shop-panel)!important;color:var(--shop-text)!important;border-color:var(--shop-border)!important;box-shadow:none!important}
body.catalog-stable :is(.track-title,.confirmation-title,.track-head h2,.confirmation-card h2,.confirmation-card h3,.track-details-grid strong,.order-meta-row strong,.item-info h4,.item-price,.cost-row strong,.shipping-detail-block strong){color:var(--shop-text)!important}
body.catalog-stable :is(.track-subtitle,.confirmation-subtitle,.step-label,.step-desc,.order-meta-row,.item-info,.cost-row,.shipping-detail-block,.track-details-grid){color:var(--shop-muted)!important}
body.catalog-stable .track-input{background:#0d0c09!important;color:var(--shop-text)!important;border-color:var(--shop-border)!important}
body.catalog-stable .stable-page article[style]{color:var(--shop-text)}
body.catalog-stable .stable-page article[style] :is(h1,p){color:var(--shop-text)!important}
body.catalog-stable :is(.stable-toast,.pincode-status-msg){background:var(--shop-raised);color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable .pincode-status-msg.success{color:#91d7ae;background:#14271c}
body.catalog-stable .pincode-status-msg.error{color:#f0a79f;background:#321918}
@media(max-width:767px){body.catalog-stable .stable-mobile-dock{background:var(--shop-bg)}body.catalog-stable .stable-dock-item{color:var(--shop-text)}}
body.catalog-stable .cart-breakdown-row{color:var(--shop-muted)}
@media(max-width:767px){body.catalog-stable .stable-header__btn--bag .bag-label{display:none}}
body.catalog-stable :is(.stable-collection-search>div,.stable-collection-toolbar select,.stable-collection-toolbar__actions>button,.stable-collection-chips a){background:var(--shop-panel);color:var(--shop-text);border-color:var(--shop-border)}
body.catalog-stable .stable-collection-chips a.is-active{background:var(--shop-gold);color:#181109;border-color:var(--shop-gold)}
body.catalog-stable .stable-collection-search :is(input,button){color:var(--shop-text)}
body.catalog-stable :is(.account-login-header p,.stable-account-login>p,.stable-layer__head small,.stable-account-profile p){color:var(--shop-muted)}
body.catalog-stable .stable-pdp__price .stable-card__discount-tag{color:#92342a}
body.catalog-stable :is(.stable-pdp__assurance span,.stable-pdp details small){color:var(--shop-muted)}
body.catalog-stable .stable-share{color:var(--shop-text)}
body.catalog-stable .stable-card__add--sold-out{background:#dfd6c7;color:#5c5041;border-color:#b6a58a}
body.catalog-stable input[type=radio],body.catalog-stable input[type=checkbox]{accent-color:var(--shop-gold)}
body.catalog-stable :is(.stable-cart-footer p,.stable-drawer--menu nav>small,.stable-drawer--menu nav a span,.stable-menu-feature small,.stable-footer>small){color:var(--shop-muted)}
body.catalog-stable .stable-menu-utility a span{background:var(--shop-gold);color:#181109}
body.catalog-stable :is(.stable-quick__stage,.stable-quick__gallery img,.stable-quick__pagination){background:var(--shop-raised);color:var(--shop-text)}
body.catalog-stable .luxury-packaging-text small{color:var(--shop-gold)}
body.catalog-stable .stable-card__wish.is-active{color:#92342a}
body.catalog-stable .stable-quick__badge{background:#6a3029;color:#fff2ea}


/* SHIVARA UX FIX — 2026-10-12
   Customer search: compact mobile cards and discovery pills.
   Catalogue toolbar: calm bronze contrast without changing site-wide palette.
   Applies to shared storefront pages without touching checkout/admin. */

/* Search shortcuts must remain compact and readable, including on mobile. */
body.catalog-stable #search-drawer .stable-search-discovery {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  padding: 14px !important;
  border: 1px solid #504130 !important;
  border-radius: 12px;
  margin-bottom: 16px;
  background: #1c1711 !important;
}
body.catalog-stable #search-drawer .stable-search-discovery > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  min-width: 0;
  background: transparent !important;
}
body.catalog-stable #search-drawer .stable-search-discovery span {
  display: block;
  width: 100%;
  margin: 0 0 3px;
  font-size: 10px;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.09em;
  color: #d5c09d !important;
}
body.catalog-stable #search-drawer .stable-search-discovery :is(a, button) {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 auto;
  min-height: 35px;
  max-width: 100%;
  padding: 7px 11px;
  border-radius: 999px;
  border: 1px solid #63513b !important;
  background: #251f18 !important;
  color: #f2e6d6 !important;
  font: 500 11px/1.2 var(--font-sans, sans-serif);
  letter-spacing: 0;
  white-space: nowrap;
  box-shadow: none !important;
  text-decoration: none;
}
body.catalog-stable #search-drawer .stable-search-discovery :is(a, button):is(:hover, :focus-visible) {
  background: #34291e !important;
  border-color: #ad9067 !important;
}

/* A restrained matte dark/bronze catalogue toolbar, consistent in all states. */
body.catalog-stable #live-storefront-section .storefront-filter-dock {
  padding: 12px;
  border: 1px solid #453829 !important;
  border-radius: 14px;
  background: #16120e !important;
  gap: 10px;
  box-shadow: none !important;
}
body.catalog-stable #live-storefront-section :is(
  .storefront-search-input,
  .storefront-filter-btn,
  .storefront-sort-select
) {
  min-width: 0;
  height: 42px;
  color: #f3e8d7 !important;
  background-color: #1e1813 !important;
  border: 1px solid #67543c !important;
  box-shadow: none !important;
  transform: none;
  font-size: 11px;
  letter-spacing: 0.01em;
  transition: border-color 150ms ease, background-color 150ms ease;
}
body.catalog-stable #live-storefront-section :is(
  .storefront-search-input,
  .storefront-filter-btn,
  .storefront-sort-select
):is(:hover, :focus-visible) {
  color: #fff2e0 !important;
  background-color: #261e17 !important;
  border-color: #b6986b !important;
  box-shadow: none !important;
  transform: none;
}
body.catalog-stable #live-storefront-section .storefront-search-icon,
body.catalog-stable #live-storefront-section .storefront-filter-btn svg {
  color: #d2b58c;
}
body.catalog-stable #live-storefront-section .storefront-sort-wrap,
body.catalog-stable #live-storefront-section .storefront-search-wrap {
  min-width: 0;
}
body.catalog-stable #live-storefront-section .storefront-filter-chips .filter-chip {
  min-height: 35px;
  padding: 7px 12px;
  background: #211a14 !important;
  color: #e5d5bd !important;
  border: 1px solid #52412f !important;
  font-size: 10px;
  letter-spacing: 0.025em;
  transform: none;
  box-shadow: none !important;
}
body.catalog-stable #live-storefront-section .storefront-filter-chips .filter-chip.is-active {
  background: #d2b27d !important;
  color: #1b130b !important;
  border-color: #d2b27d !important;
}
body.catalog-stable #live-storefront-section .storefront-filter-chips .filter-chip.is-active .chip-count {
  color: #1b130b !important;
  background: rgba(33, 24, 13, .12);
}
body.catalog-stable #live-storefront-section .storefront-filter-chips .filter-chip:not(.is-active):is(:hover, :focus-visible) {
  border-color: #ae9065 !important;
  background: #2a2119 !important;
}
@media (max-width: 767px) {
  body.catalog-stable #search-drawer {
    padding-left: 14px;
    padding-right: 14px;
  }
  body.catalog-stable #search-drawer .stable-search-results {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 10px;
    width: 100%;
    min-width: 0;
    padding-bottom: calc(88px + env(safe-area-inset-bottom));
  }
  body.catalog-stable #search-drawer .stable-search-results > .stable-empty {
    grid-column: 1 / -1;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card {
    min-width: 0 !important;
    height: 100% !important;
    border-radius: 10px;
    transform: none !important;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__media {
    min-height: 0;
    width: 100%;
    max-height: 195px;
    aspect-ratio: 1 / 1.08 !important;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__image {
    object-fit: contain !important;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__body {
    min-height: 0 !important;
    padding: 9px 8px 10px !important;
    gap: 3px;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__category {
    font-size: 8px;
    margin-bottom: 1px;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    min-height: 31px !important;
    max-height: 34px;
    overflow: hidden;
    font-size: 11px;
    line-height: 1.45;
    margin-bottom: 0;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__price {
    min-height: 0 !important;
    margin: 2px 0 6px;
    gap: 3px 6px;
    font-size: 10px;
    line-height: 1.25;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__price strong {
    font-size: 13px;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__discount-tag {
    padding: 3px 4px;
    font-size: 9px;
  }
  body.catalog-stable #search-drawer .stable-search-results :is(
    .stable-card__best-price,
    .stable-card__stars-row,
    .stable-card__rating-badge,
    .stable-card__quick
  ) {
    display: none !important;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__wish {
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__add {
    min-height: 40px;
    padding: 8px 5px;
    margin-top: auto;
    font-size: 10px;
    letter-spacing: 0.02em;
    white-space: normal;
  }
  body.catalog-stable #live-storefront-section .storefront-filter-dock {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    padding: 10px;
    gap: 9px;
  }
  body.catalog-stable #live-storefront-section .storefront-search-wrap {
    max-width: none;
    width: 100%;
  }
  body.catalog-stable #live-storefront-section .storefront-dock-actions {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(95px, 0.8fr) minmax(0, 1.2fr);
    gap: 8px;
  }
  body.catalog-stable #live-storefront-section .storefront-dock-actions :is(
    .storefront-filter-btn,
    .storefront-sort-wrap,
    .storefront-sort-select
  ) {
    width: 100%;
    min-width: 0;
  }
  body.catalog-stable #live-storefront-section .storefront-sort-select {
    padding-left: 12px;
    padding-right: 25px;
    font-size: 10px;
    text-overflow: ellipsis;
  }
  body.catalog-stable #live-storefront-section .storefront-filter-btn {
    padding: 0 10px;
  }
}
@media (max-width: 360px) {
  body.catalog-stable #search-drawer .stable-search-results {
    gap: 8px;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__body {
    padding: 8px 6px 9px !important;
  }
  body.catalog-stable #search-drawer .stable-search-results .stable-card__price strong {
    font-size: 12px;
  }
}
.product-discovery-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:16px;overflow-x:auto;padding-bottom:16px;scroll-snap-type:x proximity}
.product-discovery-rail .stable-card{scroll-snap-align:start;min-width:0}
@media(max-width:767px){.product-discovery-rail{grid-auto-columns:72%;gap:12px}}
body.catalog-stable .watch-and-buy-section{background:var(--shop-bg);color:var(--shop-text)}
body.catalog-stable .watch-buy-title{color:var(--shop-text);-webkit-text-fill-color:var(--shop-text)}
body.catalog-stable .watch-buy-subtitle{color:var(--shop-muted)}
