/* Private Concierge for posts + products */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Outfit:wght@500;600;700&display=swap");
.concierge-shell {
  max-width: 1280px;
  margin: 0 auto;
  padding: 8px 24px 20px;
}
/* Private Concierge (amazonb lux-cg) — products + articles */
#lux-concierge,
.lux-cg,
.lux-cg-frame {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}
#lux-concierge {
  margin: 18px 0 8px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
}
#lux-concierge *,
#lux-concierge *::before,
#lux-concierge *::after {
  box-sizing: border-box !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  min-height: 0 !important;
}
#lux-concierge img {
  display: block !important;
  width: 112px !important;
  height: 112px !important;
  max-width: 112px !important;
  max-height: 112px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}
.lux-cg {
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}
.lux-cg-frame {
  position: relative;
  overflow: hidden;
  height: auto !important;
  min-height: 0 !important;
  max-height: 360px;
  border: 1px solid #2a2620 !important;
  color: #f3efe6 !important;
  background: #12110f !important;
  background-image: linear-gradient(165deg, #1a1815 0%, #12110f 55%, #0e0d0c 100%) !important;
  box-shadow: 0 8px 22px rgba(18, 16, 12, .12);
}
.lux-cg-frame::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #c4a574 20%, #e8d5a8 50%, #c4a574 80%, transparent);
}
.lux-cg-head {
  padding: 10px 16px 2px;
  text-align: center;
}
.lux-cg-kicker {
  margin: 0 0 2px;
  color: #c4a574;
  font-family: var(--sans, "Outfit", "Helvetica Neue", Arial, sans-serif);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  line-height: 1.2;
}
.lux-cg-lead {
  margin: 0 auto;
  max-width: none;
  color: #f7f2e8;
  font-family: var(--display, "Cormorant Garamond", "Times New Roman", serif);
  font-size: 0.98rem;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: .01em;
}
.lux-cg-body {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) minmax(0, 1fr) !important;
  grid-template-rows: auto !important;
  gap: 8px 14px !important;
  align-items: stretch !important;
  justify-items: stretch;
  padding: 8px 14px 12px !important;
  height: auto !important;
}
.lux-cg-channel {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 4px !important;
  width: 100% !important;
  min-width: 0;
  height: auto !important;
  padding: 8px 10px 10px;
  border: 1px solid rgba(196, 165, 116, .28);
  background: rgba(255, 255, 255, .03);
  text-decoration: none;
  color: inherit;
}
a.lux-cg-channel:hover {
  border-color: rgba(196, 165, 116, .7);
  background: rgba(255, 255, 255, .06);
}
.lux-cg-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #25d366;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height: 1.2;
}
.lux-cg-badge--wx { background: #07c160; }
.lux-cg-qr {
  display: grid;
  place-items: center;
  width: 112px;
  height: 112px;
  padding: 4px;
  background: #fff;
  flex: 0 0 auto !important;
}
.lux-cg-qr--dark { background: #0a0a0a; }
.lux-cg-id {
  color: #f3efe6;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .01em;
  text-align: center;
  word-break: break-all;
  line-height: 1.25;
}
.lux-cg-sub {
  color: rgba(243, 239, 230, .5);
  font-size: 9px;
  text-align: center;
  line-height: 1.25;
}
.lux-cg-mid {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0;
  width: 100% !important;
  min-width: 0;
  height: auto !important;
  padding: 6px 10px;
  text-align: center;
}
.lux-cg-mid-title {
  margin: 0 0 4px;
  color: #c4a574;
  font-family: var(--display, "Cormorant Garamond", "Times New Roman", serif);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: .02em;
  line-height: 1.2;
  white-space: normal;
}
.lux-cg-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid !important;
  gap: 3px !important;
  width: 100% !important;
  max-width: none !important;
  align-content: start !important;
}
.lux-cg-list li {
  display: grid;
  gap: 0;
  padding: 3px 0;
  border-bottom: 1px solid rgba(196, 165, 116, .16);
  height: auto !important;
}
.lux-cg-list li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.lux-cg-list span {
  color: rgba(243, 239, 230, .55);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  line-height: 1.2;
}
.lux-cg-list a,
.lux-cg-wx {
  color: #fff;
  font-family: var(--display, "Cormorant Garamond", "Times New Roman", serif);
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: .01em;
  text-decoration: none;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  line-height: 1.25;
}
.lux-cg-list a:hover,
.lux-cg-wx:hover { color: #e8d5a8; }
.lux-cg-hint {
  margin: 6px 0 0;
  color: rgba(243, 239, 230, .55);
  font-size: 11px;
  letter-spacing: .02em;
  line-height: 1.3;
}
@media (max-width: 820px) {
  .lux-cg-frame { max-height: none; }
  .lux-cg-body {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    padding: 8px 10px 10px !important;
  }
  .lux-cg-head { padding: 10px 10px 2px; }
  .lux-cg-mid {
    grid-column: 1 / -1;
    order: -1;
    padding: 0 0 6px;
    border-bottom: 1px solid rgba(196, 165, 116, .2);
  }
  .lux-cg-qr,
  #lux-concierge img {
    width: 104px !important;
    height: 104px !important;
    max-width: 104px !important;
    max-height: 104px !important;
  }
  .lux-cg-qr { width: 104px; height: 104px; }
}
@media (max-width: 520px) {
  .lux-cg-body { grid-template-columns: 1fr 1fr !important; }
  .lux-cg-qr,
  #lux-concierge img {
    width: 96px !important;
    height: 96px !important;
    max-width: 96px !important;
    max-height: 96px !important;
  }
  .lux-cg-qr { width: 96px; height: 96px; }
  .lux-cg-lead { font-size: 0.9rem; }
}

/* Article column: sit between END and RECOMMENDED, no extra shell padding */
.article-main .concierge-shell,
.article-main #lux-concierge,
.article .concierge-shell,
.article #lux-concierge {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 22px 0 12px !important;
}
.article-main .lux-cg-frame,
.article .lux-cg-frame {
  max-height: none;
}
