/* ==========================================================================
   USER FIXES: LOGO DEAD CENTER, CAPSULE SWITCHER, HORIZONTALLY PARALLEL CARDS
   ========================================================================== */

/* 1. HEADER LAYOUT & DEAD-CENTER LOGO */
.header-section header,
.header__container,
.header__container[layout],
[class*="header__container"] {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  position: relative !important;
}

.header__container-top {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 84px !important;
  position: relative !important;
}

.header__container-top-wrap {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 84px !important;
  position: relative !important;
  display: block !important;
}

.header__container-top-wrap > theme-nav-bar {
  display: none !important;
}


/* Pin Left Cluster to Far Left */
.bcs-header-left-cluster {
  position: absolute !important;
  left: 32px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  z-index: 20 !important;
  margin: 0 !important;
}

/* Force Logo into Absolute Exact Center across all screen widths */
.header__logo,
.header-section .header__logo,
.header__container-top .header__logo {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  z-index: 25 !important;
  pointer-events: auto !important;
  width: auto !important;
  text-align: center !important;
}

.header__logo-wrapper,
.header__logo-wrapper a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.header__logo-wrapper img,
.header__logo img {
  width: 150px !important;
  height: auto !important;
  max-width: 150px !important;
  display: block !important;
  margin: 0 auto !important;
}

/* Pin Right Action Bar to Far Right */
.header-action-bar.right {
  position: absolute !important;
  right: 32px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  z-index: 20 !important;
  margin: 0 !important;
}

/* Navigation in Container Bottom */
.header__container-bottom {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
  padding: 8px 0 !important;
}

@media (max-width: 768px) {
  .header__container-top {
    min-height: 64px !important;
  }
  .header__container-top-wrap {
    min-height: 64px !important;
    padding: 0 14px !important;
  }
  .bcs-header-left-cluster {
    left: 12px !important;
    gap: 6px !important;
  }
  .header__logo,
  .header-section .header__logo,
  .header__container-top .header__logo {
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
  .header__logo-wrapper img,
  .header__logo img {
    width: 110px !important;
    max-width: 110px !important;
  }
  .header-action-bar.right {
    right: 12px !important;
    gap: 6px !important;
  }
}


/* 2. RESTORED CAPSULE SWITCHER (HIGH-END FROSTED GLASS & GLOWING GRADIENTS) */
.bcs-festive-capsule,
.zv-festive-capsule {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(255, 255, 255, 0.94) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  border-radius: 9999px !important;
  padding: 3px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08), inset 0 1px 2px rgba(255, 255, 255, 0.9) !important;
  touch-action: manipulation !important;
  user-select: none !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  gap: 3px !important;
}

.bcs-capsule-btn,
.zv-capsule-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 6px 14px !important;
  min-height: 34px !important;
  height: 34px !important;
  border-radius: 9999px !important;
  border: none !important;
  background: transparent !important;
  color: #555555 !important;
  font-family: var(--bcs-font-body), sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.bcs-capsule-btn:hover,
.zv-capsule-btn:hover {
  color: #111111 !important;
  background: rgba(0, 0, 0, 0.04) !important;
}

/* Active Glowing Gradients */
.bcs-capsule-btn.is-active,
.bcs-capsule-btn.active,
.zv-capsule-btn.active {
  color: #ffffff !important;
  font-weight: 700 !important;
}

.bcs-capsule-btn[data-bcs-switch="christmas"].is-active,
.bcs-capsule-btn[data-festival="christmas"].active,
.bcs-capsule-btn[data-festival="christmas"].is-active,
.bcs-switch-xmas.is-active {
  background: linear-gradient(135deg, #184E3F 0%, #0D3328 100%) !important;
  box-shadow: 0 2px 14px rgba(24, 78, 63, 0.5) !important;
  color: #FFFDF8 !important;
}

.bcs-capsule-btn[data-bcs-switch="halloween"].is-active,
.bcs-capsule-btn[data-festival="halloween"].active,
.bcs-capsule-btn[data-festival="halloween"].is-active,
.bcs-switch-hw.is-active {
  background: linear-gradient(135deg, #FF6600 0%, #D84315 100%) !important;
  box-shadow: 0 2px 14px rgba(255, 102, 0, 0.55) !important;
  color: #FFFFFF !important;
}

.bcs-capsule-icon,
.zv-capsule-icon {
  font-size: 15px !important;
  line-height: 1 !important;
}

@media (max-width: 768px) {
  .bcs-festive-capsule,
  .zv-festive-capsule {
    height: 30px !important;
    min-height: 30px !important;
    padding: 2px !important;
    gap: 2px !important;
  }
  .bcs-capsule-text,
  .zv-capsule-text {
    display: none !important;
  }
  .bcs-capsule-btn,
  .zv-capsule-btn {
    padding: 4px 8px !important;
    min-height: 26px !important;
    height: 26px !important;
    font-size: 12px !important;
    gap: 0 !important;
  }
}

/* 3. STRICT PRODUCT CARD BOX & HORIZONTALLY PARALLEL BUY BUTTONS */
theme-product-card,
.block-product-card,
.product-card-style--normal,
.product-card-shadow-space,
.bcs-prod-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  box-sizing: border-box !important;
}

.bcs-product-grid,
.product-grid,
[class*="product-grid"] {
  align-items: stretch !important;
}

.block-product-card-info,
.bcs-prod-info {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  box-sizing: border-box !important;
  padding: 14px 14px 16px !important;
}

/* Clamped Product Title: exactly 2 lines with fixed uniform height */
.block-product-title,
.product-card-title,
.product-card__title,
.bcs-prod-title,
.bcs-product-title,
theme-product-card a[class*="title"],
.block-product-card a[class*="title"],
[class*="block-product-title"] {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-family: var(--bcs-font-body), sans-serif !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  height: 2.8em !important;
  max-height: 2.8em !important;
  min-height: 2.8em !important;
  margin: 0 0 8px 0 !important;
  word-break: break-word !important;
}

.block-product-title span,
.bcs-prod-title span,
theme-product-card a[class*="title"] span {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.4 !important;
}

/* Price row uniform height */
.block-product-price,
theme-product-price,
.product-price,
.bcs-prod-price-row {
  height: 26px !important;
  line-height: 26px !important;
  margin: 0 0 12px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Pin Shopping Buttons to Bottom across all cards */
.block-product-buy-button-wrapper,
theme-product-form,
.product-card__quick-add,
.bcs-quick-add-btn,
.product-form,
[class*="product-buy-button"] {
  margin-top: auto !important;
  width: 100% !important;
  display: block !important;
}

/* Unified Button Box Geometry */
.block-product-buy-button,
.block-product-buy-button-wrapper button,
.bcs-quick-add-btn,
theme-product-card button[type="submit"],
.block-product-card button[type="submit"],
.product-card-btn {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: var(--bcs-font-body), sans-serif !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  letter-spacing: 0.03em !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  cursor: pointer !important;
  transition: transform 180ms ease, opacity 180ms ease, box-shadow 180ms ease !important;
}

/* Themed Colors for Buttons in Both Native & Custom Cards */
html[data-bcs-theme="christmas"] .block-product-buy-button,
html[data-bcs-theme="christmas"] .block-product-buy-button-wrapper button,
html:not([data-bcs-theme]) .block-product-buy-button,
html:not([data-bcs-theme]) .block-product-buy-button-wrapper button,
html[data-bcs-theme="christmas"] .bcs-quick-add-btn,
html:not([data-bcs-theme]) .bcs-quick-add-btn {
  background: #183F35 !important;
  color: #FFFDF8 !important;
  border: 1px solid #183F35 !important;
}

html[data-bcs-theme="christmas"] .block-product-buy-button:hover,
html:not([data-bcs-theme]) .block-product-buy-button:hover,
html[data-bcs-theme="christmas"] .bcs-quick-add-btn:hover,
html:not([data-bcs-theme]) .bcs-quick-add-btn:hover {
  background: #0F2A23 !important;
  box-shadow: 0 4px 14px rgba(24, 63, 53, 0.25) !important;
}

html[data-bcs-theme="halloween"] .block-product-buy-button,
html[data-bcs-theme="halloween"] .block-product-buy-button-wrapper button,
html[data-bcs-theme="halloween"] .bcs-quick-add-btn {
  background: #D96B1E !important;
  color: #FFFDF8 !important;
  border: 1px solid #D96B1E !important;
}

html[data-bcs-theme="halloween"] .block-product-buy-button:hover,
html[data-bcs-theme="halloween"] .bcs-quick-add-btn:hover {
  background: #B85510 !important;
  box-shadow: 0 4px 14px rgba(217, 107, 30, 0.28) !important;
}

/* ==========================================================================
   3.5. LUXURY REDESIGNED VARIANT PICKER (SKU SELECTOR)
   ========================================================================== */
.product-detail__variant-picker,
.block-product-variant-picker,
theme-variant-radio-picker {
  display: block !important;
  width: 100% !important;
  margin: 16px 0 24px 0 !important;
}

.variant-picker__group,
fieldset.variant-picker__group {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  width: 100% !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  border: none !important;
}

.product-detail__row,
.product-detail__row--desktop-direction-row,
.product-detail__row--desktop-direction-column,
.product-detail__row--mobile-direction-column,
[class*="product-detail__row"] {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  width: 100% !important;
  margin: 0 0 16px 0 !important;
  gap: 10px !important;
}

.variant-picker__group-head {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 0 4px 0 !important;
  padding: 0 !important;
}

.variant-picker__group-label {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #374151 !important;
  letter-spacing: 0.01em !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
  display: inline-flex !important;
  align-items: center !important;
}

.variant-picker__selected-val {
  font-weight: 700 !important;
  color: #111827 !important;
  margin-left: 6px !important;
}

.bcs-pdp-size-guide-btn {
  background: none !important;
  border: none !important;
  padding: 4px 8px !important;
  font-size: 13px !important;
  color: #4b5563 !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  border-radius: 4px !important;
  transition: all 0.2s ease !important;
}

.bcs-pdp-size-guide-btn:hover {
  color: #111827 !important;
  background-color: #f3f4f6 !important;
}

.variant-picker__options,
.product-detail__row-main,
[class*="variant-picker__options"],
[class*="product-detail__row-main"] {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 2px 0 !important;
}

.variant-picker__option {
  display: inline-flex !important;
  position: relative !important;
  width: auto !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.variant-picker__button::before,
.variant-picker__button::after,
.block-product-variant-picker .variant-picker__button::before,
.block-product-variant-picker .variant-picker__button::after {
  display: none !important;
  content: none !important;
  box-shadow: none !important;
  border: none !important;
}

.variant-picker__button,
.variant-picker__button--text {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 52px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  box-sizing: border-box !important;
  background-color: #ffffff !important;
  border: 1.5px solid #e5e7eb !important;
  border-radius: 8px !important;
  color: #1f2937 !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  cursor: pointer !important;
  outline: none !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.16s ease !important;
  user-select: none !important;
}

.variant-picker__option:hover .variant-picker__button,
.variant-picker__button:hover {
  background-color: #f9fafb !important;
  border-color: #9ca3af !important;
  color: #111827 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.06) !important;
}

/* HIGH SPECIFICITY ACTIVE/CHECKED SELECTOR THAT ELIMINATES ORANGE OUTLINES */
.product-detail__variant-picker .variant-picker__option input:checked + .variant-picker__button,
.product-detail__variant-picker .variant-picker__option input[type="radio"]:checked + .variant-picker__button,
.product-detail__variant-picker .variant-picker__input:checked + .variant-picker__button,
.product-detail__variant-picker .variant-picker__input:checked + .variant-picker__button--text,
.variant-picker__option input:checked + .variant-picker__button,
.variant-picker__option input[type="radio"]:checked + .variant-picker__button,
.variant-picker__input:checked + .variant-picker__button,
.variant-picker__button.active {
  background-color: #111827 !important;
  border: 1.5px solid #111827 !important;
  border-color: #111827 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  outline: none !important;
  box-shadow: 0 4px 12px rgba(17, 24, 39, 0.22) !important;
  transform: translateY(-1px) !important;
}

.bcs-color-dot {
  width: 14px !important;
  height: 14px !important;
  border-radius: 50% !important;
  display: inline-block !important;
  margin-right: 8px !important;
  flex-shrink: 0 !important;
  border: 1px solid rgba(0, 0, 0, 0.15) !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1) !important;
  vertical-align: middle !important;
}

.product-detail__variant-picker .variant-picker__input:checked + .variant-picker__button .bcs-color-dot,
.variant-picker__option input:checked + .variant-picker__button .bcs-color-dot,
.variant-picker__input:checked + .variant-picker__button .bcs-color-dot {
  border-color: #ffffff !important;
  box-shadow: 0 0 0 1.5px #ffffff, inset 0 1px 2px rgba(0, 0, 0, 0.2) !important;
}

.bcs-color-dot[data-color*="Red" i] { background-color: #dc2626 !important; }
.bcs-color-dot[data-color*="Green" i] { background-color: #15803d !important; }
.bcs-color-dot[data-color*="Black" i] { background-color: #171717 !important; }
.bcs-color-dot[data-color*="White" i] { background-color: #ffffff !important; border-color: #d1d5db !important; }
.bcs-color-dot[data-color*="Pink" i] { background-color: #f472b6 !important; }
.bcs-color-dot[data-color*="Blue" i] { background-color: #2563eb !important; }
.bcs-color-dot[data-color*="Navy" i] { background-color: #1e3a8a !important; }
.bcs-color-dot[data-color*="Grey" i],
.bcs-color-dot[data-color*="Gray" i] { background-color: #9ca3af !important; }
.bcs-color-dot[data-color*="Beige" i],
.bcs-color-dot[data-color*="Khaki" i] { background-color: #d4b996 !important; }
.bcs-color-dot[data-color*="Brown" i] { background-color: #78350f !important; }
.bcs-color-dot[data-color*="Purple" i] { background-color: #7c3aed !important; }
.bcs-color-dot[data-color*="Orange" i] { background-color: #ea580c !important; }
.bcs-color-dot[data-color*="Yellow" i] { background-color: #facc15 !important; }

.variant-picker__option.disabled .variant-picker__button,
.variant-picker__input[disabled] + .variant-picker__button {
  background-color: #f3f4f6 !important;
  border-color: #e5e7eb !important;
  color: #9ca3af !important;
  cursor: not-allowed !important;
  transform: none !important;
  box-shadow: none !important;
}

.variant-picker__option.disabled .variant-picker__button span,
.variant-picker__input[disabled] + .variant-picker__button span {
  text-decoration: line-through !important;
}

/* 4. FLOATING PARTICLES CANVAS & TOGGLE VISIBILITY */
.bcs-particles-container,
.zv-particles-container {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  pointer-events: none !important;
  overflow: hidden !important;
  z-index: 9980 !important;
  user-select: none !important;
}

.bcs-bats-container,
.zv-bats-container {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 60vh !important;
  pointer-events: none !important;
  overflow: hidden !important;
  z-index: 9982 !important;
  user-select: none !important;
}

/* Festival Visibility Toggles */
html[data-bcs-theme="christmas"] .bcs-snow-container,
html:not([data-bcs-theme]) .bcs-snow-container,
html[data-bcs-festival="christmas"] .bcs-snow-container,
html[data-bcs-theme="christmas"] .bcs-xmas-fixed-group,
html:not([data-bcs-theme]) .bcs-xmas-fixed-group,
html[data-bcs-festival="christmas"] .bcs-xmas-fixed-group {
  display: block !important;
}

html[data-bcs-theme="christmas"] .bcs-hw-container,
html:not([data-bcs-theme]) .bcs-hw-container,
html[data-bcs-theme="christmas"] .bcs-bats-container,
html:not([data-bcs-theme]) .bcs-bats-container,
html[data-bcs-theme="christmas"] .bcs-hw-fixed-group,
html:not([data-bcs-theme]) .bcs-hw-fixed-group {
  display: none !important;
}

html[data-bcs-theme="halloween"] .bcs-hw-container,
html[data-bcs-festival="halloween"] .bcs-hw-container,
html[data-bcs-theme="halloween"] .bcs-bats-container,
html[data-bcs-festival="halloween"] .bcs-bats-container,
html[data-bcs-theme="halloween"] .bcs-hw-fixed-group,
html[data-bcs-festival="halloween"] .bcs-hw-fixed-group {
  display: block !important;
}

html[data-bcs-theme="halloween"] .bcs-snow-container,
html[data-bcs-festival="halloween"] .bcs-snow-container,
html[data-bcs-theme="halloween"] .bcs-xmas-fixed-group,
html[data-bcs-festival="halloween"] .bcs-xmas-fixed-group {
  display: none !important;
}

/* User Floating Off */
html.bcs-floating-off .bcs-particles-container,
html.bcs-floating-off .zv-particles-container,
html.bcs-floating-off .bcs-bats-container,
html.bcs-floating-off .zv-bats-container,
html.bcs-floating-off .bcs-fixed-corner-decor {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* ================================================================
   [2026-09-29] LOGO DEAD CENTER  (absolute pin — sibling-proof)
   ================================================================ */
.header__container-top-wrap {
  position: relative !important;
  min-height: 84px !important;
}
.header__container-top-wrap > .header__logo {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  width: auto !important;
  max-width: none !important;
  order: 0 !important;
  grid-area: auto !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.header__container-top-wrap > .header__logo img,
.header__container-top-wrap > .header__logo svg {
  display: block !important;
  max-height: 64px !important;
  width: auto !important;
}
.header__container-top-wrap > .bcs-header-switch-wrap {
  margin-left: auto !important;
}
@media (max-width: 959px) {
  .header__container-top-wrap > .header__logo {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 0 !important;
  }
}

/* ================================================================
   [2026-09-29] SEASONAL FLOATING DECOR — pure CSS, zero JS
   ================================================================ */
#bcs-seasonal-fx {
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none !important;
  overflow: hidden !important;
  z-index: 9980 !important;
}
.bcs-flake {
  position: absolute;
  top: -6%;
  left: var(--x, 50%);
  width: var(--s, 10px);
  height: var(--s, 10px);
  background: #fff;
  border-radius: 50%;
  opacity: 0;
  will-change: transform, opacity;
  animation: bcs-fall var(--d, 14s) linear var(--dl, 0s) infinite;
  box-shadow: 0 0 6px rgba(255, 255, 255, .8);
}
@keyframes bcs-fall {
  0%   { transform: translate3d(0, -10vh, 0) rotate(0deg);     opacity: 0; }
  8%   { opacity: var(--o, .85); }
  92%  { opacity: var(--o, .85); }
  100% { transform: translate3d(26px, 112vh, 0) rotate(360deg); opacity: 0; }
}
.bcs-hw {
  position: absolute;
  top: -8%;
  left: var(--x, 50%);
  font-size: var(--s, 20px);
  line-height: 1;
  opacity: 0;
  will-change: transform, opacity;
  animation: bcs-fall-hw var(--d, 16s) linear var(--dl, 0s) infinite;
}
@keyframes bcs-fall-hw {
  0%   { transform: translate3d(0, -10vh, 0) rotate(0deg);      opacity: 0; }
  8%   { opacity: var(--o, .9); }
  92%  { opacity: var(--o, .9); }
  100% { transform: translate3d(-30px, 112vh, 0) rotate(-28deg); opacity: 0; }
}
html[data-bcs-theme="halloween"] .bcs-flake { display: none !important; }
html:not([data-bcs-theme="halloween"]) .bcs-hw { display: none !important; }
html.bcs-floating-off #bcs-seasonal-fx { display: none !important; }
@media (prefers-reduced-motion: reduce) { #bcs-seasonal-fx { display: none !important; } }

/* ================================================================
   [2026-09-30] HEADER HEIGHT AUTO & PDP TITLE CLEARANCE FIX
   Fixes product title occlusion by header navigation bar.
   ================================================================ */
.header-section,
header.header-section,
theme-sticky-header header {
  height: auto !important;
  min-height: auto !important;
}

.product-detail,
.main-product,
.section-main-product {
  padding-top: 24px !important;
}


/* ================================================================
   [2026-09-30] HIGH SPECIFICITY HEADER AUTO & PDP TITLE CLEARANCE
   ================================================================ */
html body .header-section,
html body header.header-section,
html body theme-sticky-header header,
html body [class*="header-section"] {
  height: auto !important;
  min-height: auto !important;
}

html body .product-detail,
html body .main-product,
html body .section-main-product {
  padding-top: 24px !important;
}



/* ==========================================================================
   SAFEGUARD: BULLETPROOF PDP QUANTITY STEPPER ([-] 1 [+]) & ROW ALIGNMENT
   ========================================================================== */
html body div.block-product-buy-button-group > div:has(> theme-input-number),
html body div.block-product-buy-button-group > div:has(> .quantity-selector__input),
html body div[class*="product-buy-button-group___bundle"]:has(theme-input-number),
html body div[class*="product-buy-button-group___bundle"]:has(.quantity-selector__input),
html body div[class*="buy-button-group___bundle"] {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 14px !important;
  margin-bottom: 0px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

html body theme-input-number,
html body .quantity-selector__input,
html body theme-input-number.quantity-selector__input {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 124px !important;
  min-width: 124px !important;
  max-width: 124px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  border: 1.5px solid #D1D5DB !important;
  border-radius: 10px !important;
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  padding: 0 4px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  overflow: hidden !important;
  flex: 0 0 124px !important;
  vertical-align: middle !important;
  box-shadow: none !important;
}

html body theme-input-number button,
html body .quantity-selector__input button,
html body theme-input-number button[name="minus"],
html body theme-input-number button[name="plus"],
html body div[class*="product-buy-button-group"] theme-input-number button,
html body div.block-product-buy-button-group theme-input-number button {
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  cursor: pointer !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #374151 !important;
  border-radius: 6px !important;
  outline: none !important;
  transition: background 0.15s ease, color 0.15s ease !important;
  flex: 0 0 36px !important;
}

html body theme-input-number button:hover:not(:disabled),
html body .quantity-selector__input button:hover:not(:disabled) {
  background: #F3F4F6 !important;
  background-color: #F3F4F6 !important;
  color: #111827 !important;
}

html body theme-input-number button:disabled,
html body .quantity-selector__input button:disabled {
  opacity: 0.35 !important;
  background: transparent !important;
  background-color: transparent !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

html body theme-input-number button svg,
html body .quantity-selector__input button svg {
  width: 14px !important;
  height: 14px !important;
  color: #374151 !important;
  stroke: currentColor !important;
  fill: none !important;
  display: block !important;
  margin: auto !important;
}

html body theme-input-number input,
html body .quantity-selector__input input {
  width: 44px !important;
  min-width: 36px !important;
  max-width: 48px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  line-height: 40px !important;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  background-color: transparent !important;
  text-align: center !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  color: #111827 !important;
  padding: 0 !important;
  margin: 0 !important;
  -moz-appearance: textfield !important;
  box-shadow: none !important;
}

html body theme-input-number input::-webkit-outer-spin-button,
html body theme-input-number input::-webkit-inner-spin-button,
html body .quantity-selector__input input::-webkit-outer-spin-button,
html body .quantity-selector__input input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

html body .block-product-buy-button-wrapper,
html body theme-product-form.block-product-buy-button-wrapper {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
}

html body .block-product-buy-button-wrapper form.shopline-product-form {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
}

html body button.block-product-buy-button,
html body .block-product-buy-button-wrapper button[name="add"],
html body button[name="add"].block-product-buy-button {
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.01em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 20px !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
  outline: none !important;
  transform: none !important;
  vertical-align: middle !important;
  cursor: pointer !important;
}

/* Also ensure brand logo serif typography applies across the entire store */
.header__logo-text,
a.header__logo-text,
.header__logo a span,
.header__logo a {
  font-family: 'Cormorant Garamond', Garamond, 'Times New Roman', Georgia, serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  color: #111827 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  line-height: 1.15 !important;
}

@media (max-width: 768px) {
  .header__logo-text,
  a.header__logo-text,
  .header__logo a span,
  .header__logo a {
    font-size: 20px !important;
  }
}
