/* =========================================================
   LORA — LUXURY SLEEP POLISH LAYER
   Aesthetic Refinement: Fresh Warm Luxury Sleep Theme
   Transforms cold cyber/neon accents into a calming, organic,
   warm sleep sanctuary (warm linen, soft ivory, rich terracotta,
   warm sunset amber, and 24K champagne gold).
   ========================================================= */

:root {
  --lp-ease: cubic-bezier(.16, 1, .3, 1);
  --lp-glow: 0 0 0 1px rgba(194, 97, 54, .3), 0 18px 45px -12px rgba(194, 97, 54, .35);
  --lp-card-bg: #FFFFFF;
  --lp-hairline: #E8DFD5;
  --lp-warm-canvas: #FAF7F2;
  --lp-warm-secondary: #F3EDE4;
  --lp-espresso: #1C1917;
  --lp-charcoal: #44403C;
  --lp-terracotta: #C26136;
  --lp-amber: #D97746;
  --lp-gold: #D4AF37;
}

/* ---------- global feel ---------- */
html { -webkit-tap-highlight-color: transparent; }
body {
  text-rendering: optimizeLegibility;
  background-color: var(--lp-warm-canvas) !important;
  color: var(--lp-espresso) !important;
}
::selection { background: rgba(217, 119, 70, .28); color: #1C1917; }
@media (pointer: fine) {
  ::-webkit-scrollbar { width: 10px; height: 10px; }
  ::-webkit-scrollbar-track { background: #FAF7F2; }
  ::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #D97746, #B85D30);
    border-radius: 10px; border: 2px solid #FAF7F2;
  }
  ::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #C26136, #9E461E); }
}
:focus-visible { outline: 2px solid var(--lp-terracotta); outline-offset: 3px; border-radius: 6px; }

/* ---------- header: fresh warm frosted glass ---------- */
.site-header { transition: transform .45s var(--lp-ease), top .45s var(--lp-ease); }
.header-container {
  background: rgba(255, 255, 255, 0.94) !important;
  backdrop-filter: blur(18px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%) !important;
  border-color: rgba(194, 97, 54, 0.22) !important;
  box-shadow: 0 10px 30px -10px rgba(90, 60, 30, 0.1), 0 1px 3px rgba(0, 0, 0, 0.04) !important;
}

.header-nav-link {
  color: #44403C !important;
  font-weight: 600 !important;
}
.header-nav-link:hover {
  color: var(--lp-terracotta) !important;
}
.header-nav-link.active {
  color: var(--lp-terracotta) !important;
}
.header-nav-link.active::after {
  background: linear-gradient(90deg, #D97746, #C26136) !important;
  box-shadow: 0 0 8px rgba(194, 97, 54, 0.45) !important;
}

.header-action-btn {
  background: #FAF7F2 !important;
  border-color: #E8DFD5 !important;
  color: #1C1917 !important;
}
.header-action-btn:hover {
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
  background: #FFFFFF !important;
}

.header-auth-btn {
  background: #FAF7F2 !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.header-auth-btn:hover {
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
}
.header-auth-btn.is-logged-in {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
  box-shadow: 0 2px 8px rgba(60, 40, 20, 0.08) !important;
}
.header-auth-btn.is-logged-in:hover {
  background: #FAF7F2 !important;
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
}
.header-auth-avatar {
  width: 22px !important;
  height: 22px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #C26136 0%, #A24B24 100%) !important;
  color: #FFFFFF !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 6px rgba(194, 97, 54, 0.25) !important;
}
#header-auth-icon {
  stroke: var(--lp-terracotta) !important;
}
.mobile-menu-toggle {
  color: #1C1917 !important;
}

/* Active cart bag badge */
.cart-count-badge {
  background: linear-gradient(135deg, #D97746 0%, #C26136 100%) !important;
  color: #FFFFFF !important;
  border: 1.5px solid #FFFFFF !important;
}

/* ---------- buttons: warm terracotta sunset ---------- */
.btn { transition: transform .35s var(--lp-ease), box-shadow .35s ease, background-color .3s ease, border-color .3s ease, color .3s ease; }
.btn-primary {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #D97746 0%, #C26136 55%, #A84E25 100%) !important;
  box-shadow: 0 10px 28px -8px rgba(194, 97, 54, .55), inset 0 1px 0 rgba(255, 255, 255, .3) !important;
  color: #FFFFFF !important;
}
.btn-primary::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, .32) 50%, transparent 70%);
  transform: translateX(-120%);
  transition: transform .8s var(--lp-ease);
  pointer-events: none;
}
.btn-primary:hover::after { transform: translateX(120%); }
.btn-primary:hover {
  box-shadow: 0 16px 38px -10px rgba(194, 97, 54, .75), inset 0 1px 0 rgba(255, 255, 255, .35) !important;
  color: #FFFFFF !important;
}
.btn-secondary {
  background: #FFFFFF !important;
  border-color: #E8DFD5 !important;
  color: #1C1917 !important;
}
.btn-secondary:hover {
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
  background: #FAF7F2 !important;
}

/* ---------- section headings: deep warm espresso ---------- */
.section-title {
  letter-spacing: -.025em;
  color: var(--lp-espresso) !important;
  background: none !important;
  -webkit-background-clip: unset !important;
}
.section-subtitle {
  color: var(--lp-charcoal) !important;
}
.section-head-center { position: relative; }
.section-head-center::after {
  content: "";
  display: block;
  width: 64px; height: 3px;
  margin: 1.1rem auto 0;
  border-radius: 3px;
  background: linear-gradient(90deg, transparent, var(--lp-terracotta), transparent) !important;
}

/* ---------- category filter pills ---------- */
.cat-pill-btn {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  color: #57534E !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}
.cat-pill-btn:hover {
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
  background: #FAF7F2 !important;
}
.cat-pill-btn.active {
  background: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
  border-color: var(--lp-terracotta) !important;
  box-shadow: 0 4px 14px rgba(194, 97, 54, 0.35) !important;
}

/* ---------- collection section & mattress cards ---------- */
.collection-section {
  background: var(--lp-warm-canvas) !important;
  border-bottom: 1px solid #E8DFD5 !important;
}

.mattress-card {
  background: var(--lp-card-bg) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid var(--lp-hairline) !important;
  box-shadow: 0 10px 30px -10px rgba(90, 60, 30, 0.08), 0 2px 6px rgba(0, 0, 0, 0.04) !important;
  transition: transform .5s var(--lp-ease), box-shadow .5s var(--lp-ease), border-color .4s ease;
  color: var(--lp-espresso) !important;
}
.mattress-card::before {
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(140deg, rgba(217, 119, 70, .45), transparent 35%, transparent 65%, rgba(194, 97, 54, .35));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity .5s ease;
  pointer-events: none;
  z-index: 2;
}
@media (hover: hover) {
  .mattress-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 50px -12px rgba(194, 97, 54, 0.22), 0 4px 16px rgba(0, 0, 0, 0.04) !important;
    border-color: rgba(194, 97, 54, 0.45) !important;
  }
  .mattress-card:hover::before { opacity: 1; }
  .mattress-card .card-hero-img { transition: transform 1.1s var(--lp-ease); }
  .mattress-card:hover .card-hero-img { transform: scale(1.04); }
}

.card-header-bar {
  background: #FAF7F2 !important;
  border-bottom: 1px solid #E8DFD5 !important;
}
.model-index-tag {
  color: var(--lp-terracotta) !important;
  background: rgba(194, 97, 54, 0.1) !important;
  border: 1px solid rgba(194, 97, 54, 0.25) !important;
  font-family: inherit !important;
  font-weight: 700 !important;
}
.card-firmness-meter-mini {
  color: #57534E !important;
}
.firmness-dots {
  color: var(--lp-terracotta) !important;
}

.card-visual-stage {
  background: #F8F4EE !important;
}

.card-tab-nav {
  background: #F4EDE4 !important;
  border-top: 1px solid #E8DFD5 !important;
  border-bottom: 1px solid #E8DFD5 !important;
}
.card-tab-btn {
  color: #78716C !important;
}
.card-tab-btn:hover {
  color: var(--lp-espresso) !important;
}
.card-tab-btn.active {
  color: var(--lp-terracotta) !important;
  border-bottom-color: var(--lp-terracotta) !important;
  background: rgba(194, 97, 54, 0.08) !important;
  font-weight: 700 !important;
}

.mattress-name {
  color: var(--lp-espresso) !important;
}
.mattress-title-link {
  color: var(--lp-espresso) !important;
}
.mattress-title-link:hover {
  color: var(--lp-terracotta) !important;
}
.tab-indicator-icon {
  color: var(--lp-terracotta) !important;
}
.mattress-descriptor {
  color: var(--lp-charcoal) !important;
}

.card-config-selectors {
  background: #F8F4EE !important;
  border: 1px solid #E8DFD5 !important;
}
.card-selector-label {
  color: #78716C !important;
}
.card-pill-btn {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  color: #44403C !important;
}
.card-pill-btn:hover {
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
  background: #FAF7F2 !important;
}
.card-pill-btn.active {
  background: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
  border-color: var(--lp-terracotta) !important;
  box-shadow: 0 2px 8px rgba(194, 97, 54, 0.3) !important;
}

/* Sizing options in detailed product modal / cards */
.inner-bed-type-btn, .inner-inch-pill-btn, .inner-thick-pill-btn, .inner-inch-btn, .inner-thick-btn, .inner-size-btn {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.inner-bed-type-btn:hover, .inner-inch-pill-btn:hover, .inner-thick-pill-btn:hover, .inner-inch-btn:hover, .inner-thick-btn:hover, .inner-size-btn:hover {
  border-color: var(--lp-terracotta) !important;
  background: #FAF7F2 !important;
  color: var(--lp-terracotta) !important;
}
.inner-bed-type-btn.active, .inner-inch-pill-btn.active, .inner-thick-pill-btn.active, .inner-inch-btn.active, .inner-thick-btn.active, .inner-size-btn.active {
  background: linear-gradient(135deg, #D97746 0%, #C26136 100%) !important;
  border-color: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(194, 97, 54, 0.35) !important;
}

.price-current {
  color: var(--lp-espresso) !important;
}
.card-spec-badge {
  color: var(--lp-terracotta) !important;
  background: rgba(194, 97, 54, 0.1) !important;
  border: 1px solid rgba(194, 97, 54, 0.28) !important;
  font-family: inherit !important;
  font-weight: 700 !important;
}
.mini-spec-chip {
  color: #44403C !important;
  background: #F4EDE4 !important;
  border: 1px solid #E8DFD5 !important;
}
.mini-spec-dot {
  color: var(--lp-terracotta) !important;
}
.emi-hint {
  color: #059669 !important;
}

/* Layers View in card */
.layers-visual-list {
  background: #F8F4EE !important;
}
.layer-bar-item {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.layer-bar-num {
  background: rgba(194, 97, 54, 0.12) !important;
  color: var(--lp-terracotta) !important;
  border: 1px solid rgba(194, 97, 54, 0.3) !important;
}

/* Comfort & Firmness meter in card */
.comfort-meter-detailed {
  background: #F8F4EE !important;
  border: 1px solid #E8DFD5 !important;
}

/* ---------- craftsmanship / inside comfort section (compact & short) ---------- */
.inside-comfort-section {
  background: var(--lp-warm-secondary) !important;
  border-top: 1px solid #E8DFD5 !important;
  border-bottom: 1px solid #E8DFD5 !important;
  scroll-margin-top: 85px !important;
  padding: 2.25rem 0 2rem !important;
}
.comfort-header-editorial {
  margin: 0 auto 1.25rem !important;
  text-align: center;
}
.comfort-header-editorial .eyebrow,
.comfort-header-editorial .eyebrow-gold {
  margin-bottom: 0.25rem !important;
  font-size: 0.74rem !important;
  color: #A24B24 !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}
.comfort-title {
  color: var(--lp-espresso, #1C1917) !important;
  font-size: clamp(1.7rem, 2.5vw, 2.2rem) !important;
  margin: 0.15rem 0 0.35rem !important;
  line-height: 1.2 !important;
}
.comfort-subtext {
  color: #44403C !important;
  font-size: 0.94rem !important;
  line-height: 1.55 !important;
  font-weight: 450 !important;
  max-width: 680px !important;
  margin: 0 auto !important;
}
.comfort-interactive-grid {
  gap: 1.75rem !important;
  align-items: center !important;
}
.comfort-media-frame {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 12px 30px rgba(90, 60, 30, 0.07) !important;
  padding: 0.85rem 1rem !important;
  aspect-ratio: 16 / 11 !important;
  border-radius: 16px !important;
}
.comfort-stage-img {
  max-height: 350px !important;
  object-fit: contain !important;
}
.comfort-frame-glow {
  display: none !important;
}
.comfort-badge-overlay {
  background: rgba(255, 255, 255, 0.94) !important;
  color: #1C1917 !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 4px 14px rgba(90, 60, 30, 0.08) !important;
  padding: 0.3rem 0.75rem !important;
  font-size: 0.72rem !important;
  bottom: 10px !important;
  left: 10px !important;
}
.badge-accent-line {
  background: var(--lp-terracotta) !important;
}
.comfort-layers-deck {
  gap: 0.5rem !important;
}
.comfort-layer-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
  padding: 0.65rem 1rem !important;
  border-radius: 12px !important;
  transition: all 0.25s ease !important;
}
.comfort-layer-card:hover {
  background: #FFFFFF !important;
  border-color: var(--lp-terracotta) !important;
  transform: translateX(3px) !important;
}
.comfort-layer-card.active {
  background: #FFFFFF !important;
  border-color: var(--lp-terracotta) !important;
  box-shadow: 0 6px 20px rgba(194, 97, 54, 0.12) !important;
  transform: translateX(4px) !important;
}
.card-tier-meta {
  margin-bottom: 0.15rem !important;
  gap: 0.45rem !important;
}
.tier-number {
  color: #A24B24 !important;
  background: rgba(162, 75, 36, 0.12) !important;
  font-size: 0.70rem !important;
  font-weight: 800 !important;
  padding: 0.12rem 0.45rem !important;
  border-radius: 4px !important;
}
.tier-role {
  color: #A24B24 !important;
  font-size: 0.70rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
}
.tier-heading {
  color: #1C1917 !important;
  font-size: 1rem !important;
  margin-bottom: 0.25rem !important;
  font-weight: 800 !important;
}
.tier-body {
  color: #44403C !important;
  font-size: 0.82rem !important;
  line-height: 1.45 !important;
  font-weight: 450 !important;
  margin-bottom: 0.4rem !important;
}
.tier-pills {
  gap: 0.4rem !important;
}
.tpill {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #44403C !important;
  font-size: 0.68rem !important;
  font-weight: 600 !important;
  padding: 0.18rem 0.55rem !important;
  border-radius: 6px !important;
}
.comfort-layer-card.active .tpill {
  background: rgba(194, 97, 54, 0.12) !important;
  border-color: rgba(194, 97, 54, 0.35) !important;
  color: #A24B24 !important;
  font-weight: 700 !important;
}

/* ---------- trust / proof strip ---------- */
.proof-strip {
  background: var(--lp-warm-canvas, #FAF7F2) !important;
  border-top: 1px solid #E8DFD5 !important;
  border-bottom: 1px solid #E8DFD5 !important;
  box-shadow: none !important;
}
.proof-item {
  transition: transform .45s var(--lp-ease);
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 14px rgba(60, 40, 20, 0.05) !important;
}
@media (hover: hover) { .proof-item:hover { transform: translateY(-4px); } }
.proof-title {
  color: #1C1917 !important;
  font-weight: 700 !important;
}
.proof-subtext {
  color: #57534E !important;
  font-weight: 500 !important;
}
.proof-icon-box {
  background: #FAF7F2 !important;
  box-shadow: inset 0 0 0 1px rgba(194, 97, 54, .2), 0 2px 6px rgba(60, 40, 20, 0.06) !important;
  border: 1px solid #E8DFD5 !important;
}
.proof-item-emerald .proof-icon-box {
  background: #FAF7F2 !important;
  border-color: rgba(16, 185, 129, 0.4) !important;
}
.proof-item-gold .proof-icon-box {
  background: #FAF7F2 !important;
  border-color: rgba(245, 158, 11, 0.4) !important;
}

/* ---------- spine simulator & factory direct ---------- */
.simulator-section {
  background: var(--lp-warm-canvas) !important;
  color: var(--lp-espresso) !important;
  border-bottom: 1px solid #E8DFD5 !important;
}
.simulator-graphic-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 20px 50px rgba(90, 60, 30, 0.08) !important;
}
.spine-canvas-box {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
}
.posture-btn {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #57534E !important;
}
.posture-btn:hover {
  background: #F3EDE4 !important;
  color: #1C1917 !important;
}
.posture-btn.active {
  background: var(--lp-terracotta) !important;
  border-color: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(194, 97, 54, 0.3) !important;
}
.comparison-toggle-bar {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
}
.factory-direct-section {
  background: var(--lp-warm-secondary) !important;
  color: var(--lp-espresso) !important;
}
.usp-main-headline {
  color: var(--lp-espresso) !important;
}
.usp-main-headline .text-highlight {
  background: linear-gradient(135deg, #D97746 0%, #C26136 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.usp-supporting-line {
  color: #57534E !important;
}
.usp-side-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important;
}
.usp-side-right {
  border: 2px solid var(--lp-terracotta) !important;
  box-shadow: 0 10px 35px rgba(194, 97, 54, 0.18) !important;
}
.label-right {
  color: var(--lp-terracotta) !important;
}
.usp-side-title {
  color: var(--lp-espresso) !important;
}
.usp-side-desc {
  color: #57534E !important;
}
.usp-point-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
}
.usp-point-title {
  color: var(--lp-espresso) !important;
}
.usp-point-desc {
  color: #57534E !important;
}
.usp-point-icon {
  color: var(--lp-terracotta) !important;
}

/* ---------- slim 3d rotating offer ribbon ---------- */
.lora-offer-ribbon {
  background: linear-gradient(90deg, #8A3D18 0%, #B85D30 25%, #C26136 50%, #B85D30 75%, #8A3D18 100%) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.22) !important;
  border-bottom: 1px solid rgba(138, 61, 24, 0.5) !important;
  box-shadow: 0 2px 10px rgba(138, 61, 24, 0.2) !important;
}
.lora-offer-ribbon::before {
  background: linear-gradient(90deg, #8A3D18 0%, rgba(138, 61, 24, 0) 100%) !important;
}
.lora-offer-ribbon::after {
  background: linear-gradient(270deg, #8A3D18 0%, rgba(138, 61, 24, 0) 100%) !important;
}
.lora-ribbon-tag {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #FFF9D2 !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
}
.lora-ribbon-text {
  color: #FFFFFF !important;
}

/* ---------- cart drawer & modals: clean warm luxury ---------- */
.cart-drawer {
  background: #FFFFFF !important;
  color: var(--lp-espresso) !important;
  border-left: 1px solid #E8DFD5 !important;
  box-shadow: -15px 0 50px rgba(60, 40, 20, 0.15) !important;
}
.cart-header {
  border-bottom: 1px solid #E8DFD5 !important;
}
.cart-item-card {
  border-bottom: 1px solid #F0E9DF !important;
}
.cart-item-thumb {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
}
.cart-footer-block {
  background: #FAF7F2 !important;
  border-top: 1px solid #E8DFD5 !important;
  color: var(--lp-espresso) !important;
}
.modal-dialog {
  background: #FFFFFF !important;
  color: var(--lp-espresso) !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 25px 60px rgba(60, 40, 20, 0.18), 0 0 25px rgba(194, 97, 54, 0.08) !important;
}
.modal-close-btn:hover {
  background: rgba(194, 97, 54, 0.1) !important;
  color: var(--lp-terracotta) !important;
  border-color: var(--lp-terracotta) !important;
}
.checkout-modal-card {
  background: #FFFFFF !important;
  color: var(--lp-espresso) !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 25px 60px rgba(60, 40, 20, 0.18) !important;
}
.checkout-modal-header {
  border-bottom: 1px solid #F0E9DF !important;
}
.checkout-close-btn:hover {
  background: rgba(194, 97, 54, 0.1) !important;
  color: var(--lp-terracotta) !important;
  border-color: var(--lp-terracotta) !important;
}
.checkout-input-block label {
  color: #44403C !important;
}
.checkout-input {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.checkout-input:focus {
  border-color: var(--lp-terracotta) !important;
  background: #FFFFFF !important;
  box-shadow: 0 0 0 3px rgba(194, 97, 54, 0.2) !important;
}

/* ---------- reveal on scroll ---------- */
.lp-reveal-ready .lp-reveal {
  opacity: 0;
  transform: translate3d(0, 28px, 0);
  transition: opacity .9s var(--lp-ease), transform .9s var(--lp-ease);
}
.lp-reveal-ready .lp-reveal.lp-in { opacity: 1; transform: none; }

/* ---------- section separators ---------- */
.collection-section::before, .factory-direct-section::before, .quiz-section::before {
  content: "";
  position: absolute; left: 10%; right: 10%; top: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(194, 97, 54, .25), transparent);
  pointer-events: none;
}

/* ---------- mobile responsiveness ---------- */
@media (max-width: 768px) {
  .header-container {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background: rgba(255, 255, 255, .96) !important;
  }
  .site-header { transition: none; }
  .lp-reveal-ready .lp-reveal { transform: translate3d(0, 16px, 0); transition-duration: .6s; }
  .section-head-center::after { width: 48px; }
}

@media (prefers-reduced-motion: reduce) {
  .lp-reveal-ready .lp-reveal { opacity: 1; transform: none; transition: none; }
  .btn-primary::after { display: none; }
}

/* ---------- Dedicated Inner PDP Suite (Warm Sanctuary Theme) ---------- */
.inner-pdp-suite {
  background: var(--lp-warm-secondary, #F3EDE4) !important;
  border-top: 1px solid #E8DFD5 !important;
  border-bottom: 1px solid #E8DFD5 !important;
  color: var(--lp-espresso, #1C1917) !important;
}
.inner-pdp-top-nav {
  border-bottom: 1px solid #E8DFD5 !important;
}
.inner-pdp-back-btn {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
  box-shadow: 0 2px 8px rgba(60, 40, 20, 0.05) !important;
}
.inner-pdp-back-btn:hover {
  background: #FAF7F2 !important;
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
}
.inner-model-pill {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #57534E !important;
}
.inner-model-pill:hover {
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
}
.inner-model-pill.active {
  background: linear-gradient(135deg, #D97746 0%, #C26136 100%) !important;
  border-color: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(194, 97, 54, 0.35) !important;
}
.inner-main-stage {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 10px 30px rgba(60, 40, 20, 0.07) !important;
}
.inner-thumb-btn {
  background: #FFFFFF !important;
  border: 2px solid #E8DFD5 !important;
}
.inner-thumb-btn.active {
  border-color: var(--lp-terracotta) !important;
  box-shadow: 0 0 10px rgba(194, 97, 54, 0.35) !important;
}
.inner-config-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 12px 35px rgba(60, 40, 20, 0.07) !important;
  color: var(--lp-espresso) !important;
}
.inner-pdp-title {
  color: #1C1917 !important;
}
.inner-pdp-tagline {
  color: var(--lp-terracotta) !important;
}
.inner-price-val {
  color: #1C1917 !important;
}
.inner-opt-label {
  color: #1C1917 !important;
}
.inner-opt-label span:first-child {
  color: #57534E !important;
}
.pdp-detailed-firmness-box {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-firmness-box-title {
  color: #1C1917 !important;
}
.pdp-firmness-posture-text {
  color: #57534E !important;
}
.pdp-free-gift-showcase {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
}
.pdp-free-gift-title {
  color: #1C1917 !important;
}
.pdp-gift-mini-chip {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  color: #57534E !important;
}
.pdp-gift-strike-price {
  color: #78716C !important;
}
.pdp-reassurance-micro {
  color: #57534E !important;
}
.inner-large-emi-box {
  background: rgba(194, 97, 54, 0.06) !important;
  border: 1px solid rgba(194, 97, 54, 0.25) !important;
}
.pdp-large-emi-title {
  color: #1C1917 !important;
}
.pdp-large-emi-desc {
  color: #57534E !important;
}
.lora-accordion {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
}
.lora-accordion-summary {
  background: #FFFFFF !important;
  color: #1C1917 !important;
}
.lora-accordion-title {
  color: #1C1917 !important;
}
.lora-accordion-subtitle {
  color: #57534E !important;
}
.specs-table {
  background: #FFFFFF !important;
  color: #1C1917 !important;
}
.specs-table th {
  background: #F3EDE4 !important;
  color: #1C1917 !important;
  border-bottom: 2px solid #E8DFD5 !important;
}
.specs-table td {
  border-bottom: 1px solid #F0E9DF !important;
  color: #44403C !important;
}
.specs-table tr:hover {
  background: #FAF7F2 !important;
}
.comparison-model-link {
  color: #1C1917 !important;
}
.comparison-model-link:hover {
  color: var(--lp-terracotta) !important;
}
.comparison-explore-btn {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: var(--lp-terracotta) !important;
}
.comparison-explore-btn:hover {
  background: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
}
.model-comparison-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 4px 15px rgba(60, 40, 20, 0.05) !important;
}
.model-card-name {
  color: #1C1917 !important;
}
.model-spec-chip {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
}
.model-spec-label {
  color: #78716C !important;
}
.model-spec-val {
  color: #1C1917 !important;
}
.model-card-focus {
  color: #57534E !important;
}
.model-card-btn {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: var(--lp-terracotta) !important;
}
.model-card-btn:hover {
  background: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
}

/* =========================================================
   DEDICATED PRODUCT DETAIL PAGE (PDP) & EXPANDED CONFIGURATOR
   Complete Warm Sanctuary Luxury Unification
   ========================================================= */
.pdp-main-stage {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 14px 40px rgba(60, 40, 20, 0.08) !important;
}
.pdp-thumb-btn {
  background: #FAF7F2 !important;
  border: 2px solid #E8DFD5 !important;
}
.pdp-thumb-btn:hover {
  border-color: var(--lp-terracotta) !important;
}
.pdp-thumb-btn.active {
  border-color: var(--lp-terracotta) !important;
  background: #FFFFFF !important;
  box-shadow: 0 0 12px rgba(194, 97, 54, 0.35) !important;
}
.pdp-main-stage,
.inner-main-stage {
  position: relative !important;
  touch-action: pan-y !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}

.pdp-stage-arrow,
.inner-stage-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  border: 1.5px solid #E8DFD5;
  color: #1C1917;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 6;
  box-shadow: 0 4px 14px rgba(60, 40, 20, 0.12);
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  padding: 0;
  outline: none;
}

.pdp-stage-arrow:hover,
.inner-stage-arrow:hover,
.pdp-stage-arrow:focus-visible,
.inner-stage-arrow:focus-visible {
  background: var(--lp-terracotta, #C26136) !important;
  border-color: var(--lp-terracotta, #C26136) !important;
  color: #FFFFFF !important;
  transform: translateY(-50%) scale(1.08);
  box-shadow: 0 6px 18px rgba(194, 97, 54, 0.35);
}

.pdp-stage-arrow:active,
.inner-stage-arrow:active {
  transform: translateY(-50%) scale(0.96);
}

.pdp-stage-prev,
.inner-stage-prev {
  left: 12px;
}

.pdp-stage-next,
.inner-stage-next {
  right: 12px;
}

.pdp-stage-counter,
.inner-stage-counter {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 5;
  background: rgba(28, 25, 23, 0.78);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #FFFFFF;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  padding: 0.22rem 0.65rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  pointer-events: none;
  font-family: monospace, -apple-system, BlinkMacSystemFont, sans-serif;
}

.pdp-stage-dots,
.inner-stage-dots {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 6px;
  z-index: 5;
  background: rgba(28, 25, 23, 0.45);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  padding: 4px 8px;
  border-radius: 999px;
  pointer-events: auto;
}

.pdp-dot,
.inner-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.45);
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  display: inline-block;
}

.pdp-dot:hover,
.inner-dot:hover {
  background: rgba(255, 255, 255, 0.85);
}

.pdp-dot.active,
.inner-dot.active {
  width: 18px;
  border-radius: 999px;
  background: #FFFFFF;
  box-shadow: 0 0 6px rgba(255, 255, 255, 0.6);
}

@media (max-width: 768px) {
  .pdp-stage-arrow,
  .inner-stage-arrow {
    width: 36px;
    height: 36px;
  }
  .pdp-stage-prev,
  .inner-stage-prev {
    left: 8px;
  }
  .pdp-stage-next,
  .inner-stage-next {
    right: 8px;
  }
  .pdp-stage-counter,
  .inner-stage-counter {
    top: 8px;
    right: 8px;
    font-size: 0.68rem;
    padding: 0.18rem 0.55rem;
  }
  .pdp-stage-dots,
  .inner-stage-dots {
    bottom: 8px;
  }
}

.pdp-stage-expand-cue {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-gallery-expand-btn {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-gallery-expand-btn:hover {
  background: #FAF7F2 !important;
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
}
.pdp-lightbox-thumbs-bar {
  background: rgba(255, 255, 255, 0.95) !important;
  border: 1px solid #E8DFD5 !important;
}
.pdp-lightbox-thumb-pill {
  background: #FAF7F2 !important;
  border: 1.5px solid #E8DFD5 !important;
}
.pdp-lightbox-thumb-pill.active {
  border-color: var(--lp-terracotta) !important;
  box-shadow: 0 0 10px rgba(194, 97, 54, 0.4) !important;
}

/* Configurator Panel & Typography */
.pdp-config-panel {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 12px 35px rgba(60, 40, 20, 0.07) !important;
  color: #1C1917 !important;
}
.pdp-title {
  color: #1C1917 !important;
}
.pdp-tagline {
  color: var(--lp-terracotta) !important;
}
.pdp-model-tag {
  color: var(--lp-terracotta) !important;
  background: rgba(194, 97, 54, 0.1) !important;
  border: 1px solid rgba(194, 97, 54, 0.28) !important;
}
.pdp-price-val {
  color: #1C1917 !important;
}
.pdp-price-row {
  border-top: 1px solid #E8DFD5 !important;
  border-bottom: 1px solid #E8DFD5 !important;
}
.pdp-emi-card {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-quick-selector-card {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 4px 16px rgba(60, 40, 20, 0.04) !important;
}
.pdp-pill-label {
  color: #1C1917 !important;
}
.pdp-pill-val-tag {
  color: var(--lp-terracotta) !important;
  background: rgba(194, 97, 54, 0.1) !important;
  border: 1px solid rgba(194, 97, 54, 0.28) !important;
}
.pdp-pill-btn {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-pill-btn:hover {
  background: #FAF7F2 !important;
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
}
.pdp-pill-btn.active {
  background: linear-gradient(135deg, #D97746 0%, #C26136 100%) !important;
  border-color: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(194, 97, 54, 0.35) !important;
}
.pdp-custom-builder-compact {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-input-chip-group input {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-preset-chip {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #57534E !important;
}
.pdp-preset-chip.active {
  background: var(--lp-terracotta) !important;
  border-color: var(--lp-terracotta) !important;
  color: #FFFFFF !important;
}
.pdp-badge-zero-extra {
  color: #059669 !important;
  background: rgba(16, 185, 129, 0.12) !important;
  border-color: rgba(16, 185, 129, 0.3) !important;
}

/* Primary Dual Action Buttons */
.btn-pdp-buy-now {
  background: linear-gradient(135deg, #D97746 0%, #C26136 55%, #A84E25 100%) !important;
  color: #FFFFFF !important;
  border: 1.5px solid rgba(255, 255, 255, 0.3) !important;
  box-shadow: 0 10px 28px -8px rgba(194, 97, 54, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
  text-shadow: none !important;
  animation: none !important;
}
.btn-pdp-buy-now svg {
  color: #FFFFFF !important;
  filter: none !important;
}
.btn-pdp-buy-now:hover {
  background: linear-gradient(135deg, #E08252 0%, #C26136 60%, #9E461E 100%) !important;
  border-color: #FFFFFF !important;
  box-shadow: 0 16px 38px -10px rgba(194, 97, 54, 0.75), inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
  transform: translateY(-2px) !important;
}
.btn-pdp-add-bag {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(60, 40, 20, 0.05) !important;
}
.btn-pdp-add-bag:hover {
  background: #FAF7F2 !important;
  border-color: var(--lp-terracotta) !important;
  color: var(--lp-terracotta) !important;
}

/* Deep Technical Section & Anatomy */
.pdp-deep-dive {
  background: var(--lp-warm-secondary, #F3EDE4) !important;
  border-top: 1px solid #E8DFD5 !important;
  border-bottom: 1px solid #E8DFD5 !important;
}
.anatomy-layer-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 6px 20px rgba(60, 40, 20, 0.05) !important;
}
.anatomy-layer-card:hover {
  border-color: var(--lp-terracotta) !important;
  box-shadow: 0 10px 28px rgba(194, 97, 54, 0.12) !important;
}
.layer-num-badge {
  background: rgba(194, 97, 54, 0.1) !important;
  color: var(--lp-terracotta) !important;
  border-color: rgba(194, 97, 54, 0.28) !important;
}
.layer-title-text {
  color: #1C1917 !important;
}
.layer-body-desc {
  color: #57534E !important;
}

/* Specs Table Card */
.specs-table-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 8px 24px rgba(60, 40, 20, 0.06) !important;
}

/* =========================================================
   WARM SANCTUARY STRICT OVERRIDE ENGINE
   Permanently replaces all legacy electric blue/cyan styles
   ========================================================= */
.pdp-pill-btn.active,
.pdp-bed-card.active,
.pdp-dim-pill.active,
.pdp-thick-pill.active,
.inner-cot-btn.active,
.inner-inch-btn.active,
.inner-thick-btn.active,
.model-switch-btn.active,
.inner-model-pill.active {
  background: linear-gradient(135deg, #C26136 0%, #A24B24 100%) !important;
  border-color: #C26136 !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 16px rgba(194, 97, 54, 0.35) !important;
}

.pdp-pill-btn:hover,
.pdp-bed-card:hover,
.pdp-dim-pill:hover,
.pdp-thick-pill:hover,
.inner-cot-btn:hover,
.inner-inch-btn:hover,
.inner-thick-btn:hover {
  border-color: #C26136 !important;
  background: rgba(194, 97, 54, 0.08) !important;
  color: #1C1917 !important;
}

.pdp-tagline,
.inner-pdp-tagline {
  color: #78716C !important;
}

.pdp-price-val,
.inner-price-val {
  color: #1C1917 !important;
}

.emi-hint,
.pdp-emi-hint {
  color: #C26136 !important;
}

.pdp-emi-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 4px 16px rgba(60, 40, 20, 0.04) !important;
}

.pdp-back-btn:hover {
  background: rgba(194, 97, 54, 0.08) !important;
  border-color: #C26136 !important;
  color: #C26136 !important;
}

/* =========================================================
   GLOBAL TEXT CONTRAST & LEGIBILITY SAFEGUARD (WARM SANCTUARY)
   Guarantees 100% crystal-clear readability across every viewport
   ========================================================= */

/* Headings on light surfaces (excluding dark hero section & dark footer) */
body h1:not(.site-footer *):not(.lf *):not(.lf-title):not(#the-hero *),
body h2:not(.site-footer *):not(.lf *):not(#the-hero *),
body h3:not(.site-footer *):not(.lf *):not(#the-hero *),
body h4:not(.site-footer *):not(.lf *):not(#the-hero *),
body .section-title,
body .comfort-title {
  color: #1C1917 !important;
  font-weight: 800;
}

/* Hero Section: Enforce brilliant white visibility for "Sleep," heading */
.lf .lf-title,
h1.lf-title,
.lf-title {
  color: #FFFFFF !important;
  font-weight: 800 !important;
  text-shadow: 0 10px 40px rgba(0, 0, 0, 0.7) !important;
}

.lf .lf-title em,
.lf-title em {
  font-style: normal !important;
  background: linear-gradient(100deg, #FFFFFF 0%, #FED7AA 45%, #F97316 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* Eyebrow Pill: Remove decorative dot indicator */
.lf-eyebrow::before {
  display: none !important;
}
.lf-eyebrow {
  gap: 0 !important;
}

/* Eyebrows & Category Badges */
.eyebrow,
.eyebrow-gold,
.eyebrow-pill,
.section-eyebrow {
  color: #A24B24 !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

/* Subtitles, Descriptors & Body Paragraphs */
.section-subtitle,
.comfort-subtext,
.hero-subtext,
.section-head p,
.feature-desc,
.step-desc {
  color: #44403C !important;
  font-weight: 450 !important;
  line-height: 1.6 !important;
}

/* Secondary hints and metadata */
.text-muted,
.meta-text,
.card-meta,
.spec-label {
  color: #57534E !important;
  font-weight: 500;
}

/* Sleep Match AI: Absolute legibility guarantee */
.quiz-step-title-block h3 {
  color: #1C1917 !important;
  font-weight: 800 !important;
}
.quiz-step-title-block p {
  color: #57534E !important;
  font-weight: 500 !important;
}
.quiz-opt-title {
  color: #1C1917 !important;
  font-weight: 750 !important;
}
.quiz-opt-desc {
  color: #57534E !important;
  font-weight: 500 !important;
}
.quiz-opt-card {
  background: #FAF7F2 !important;
  border: 1.5px solid #E8DFD5 !important;
}
.quiz-opt-card:hover,
.quiz-opt-card.selected {
  background: #FFFFFF !important;
  border-color: #C26136 !important;
}
.quiz-step-tag {
  color: #A24B24 !important;
  font-weight: 700 !important;
}
.quiz-step-counter {
  color: #78716C !important;
  font-weight: 700 !important;
}

/* Product Detail Page (product.html) Light-Theme Enforcement */
.pdp-title {
  color: #1C1917 !important;
  font-weight: 800 !important;
}
.pdp-tagline {
  color: #A24B24 !important;
  font-weight: 600 !important;
}
.pdp-price-val {
  color: #1C1917 !important;
  font-weight: 800 !important;
}
.pdp-mrp-val {
  color: #78716C !important;
  font-weight: 500 !important;
  text-decoration: line-through !important;
}
.pdp-pill-label {
  color: #1C1917 !important;
  font-weight: 750 !important;
}
.pdp-pill-btn {
  background: #FAF7F2 !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
  font-weight: 700 !important;
}
.pdp-pill-btn:hover {
  background: #FFFFFF !important;
  border-color: #C26136 !important;
  color: #C26136 !important;
}
.pdp-pill-btn.active {
  background: linear-gradient(135deg, #C26136 0%, #A24B24 100%) !important;
  border-color: #C26136 !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(194, 97, 54, 0.3) !important;
}
.pdp-quick-selector-card {
  background: #FFFFFF !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 4px 20px rgba(60, 40, 20, 0.05) !important;
}
.pdp-custom-builder-compact {
  background: #FAF7F2 !important;
  border: 1.5px solid #E8DFD5 !important;
}
.pdp-custom-compact-top {
  color: #1C1917 !important;
  font-weight: 700 !important;
}
.pdp-custom-compact-col label {
  color: #57534E !important;
  font-weight: 600 !important;
}
.pdp-input-chip-group input {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
}
.pdp-preset-chip {
  background: #FAF7F2 !important;
  border: 1px solid #E8DFD5 !important;
  color: #57534E !important;
}
.pdp-preset-chip.active {
  background: rgba(194, 97, 54, 0.15) !important;
  border-color: #C26136 !important;
  color: #A24B24 !important;
  font-weight: 700 !important;
}
.pdp-stage-expand-cue {
  background: #FFFFFF !important;
  border: 1.5px solid #E8DFD5 !important;
  color: #1C1917 !important;
  box-shadow: 0 2px 8px rgba(60, 40, 20, 0.08) !important;
}
.pdp-stage-counter {
  background: rgba(255, 255, 255, 0.95) !important;
  color: #1C1917 !important;
  border: 1px solid #E8DFD5 !important;
  box-shadow: 0 2px 8px rgba(60, 40, 20, 0.08) !important;
}

/* Footer Safeguard: Preserves crisp ivory text on dark charcoal footer */
.site-footer {
  background: #0C0A09 !important;
  color: #E7E5E4 !important;
}
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer .footer-col-title {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}
.site-footer p,
.site-footer .footer-subtext,
.site-footer .footer-legal-text {
  color: #A8A29E !important;
}
.site-footer a.footer-link,
.site-footer a:not(.btn) {
  color: #A8A29E !important;
  transition: color 0.15s ease !important;
}
.site-footer a.footer-link:hover,
.site-footer a:not(.btn):hover {
  color: #E87A48 !important;
}



