/** Shopify CDN: Minification failed

Line 176:12 Unexpected "{"

**/
/*===========================
=       FONT SETUP          =
===========================*/
.heading-font {
   font-family: "Playfair Display", serif;
}
.body-font {
     font-family: "Nunito Sans", sans-serif;
}
body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
 font-family: "Playfair Display", serif;
}
body h2,
body .h2 {
  font-size: 48px;
  line-height: 1.25;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0;
}
/*===========================
=        BUTTON STYLE       =
===========================*/
.dev-btn {
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 2px !important;
  line-height: 1;
  padding: 14px 45px;
  text-decoration: none;
  appearance: none;
  display: inline-block;
  text-align: center;
  text-transform: uppercase;
  cursor: pointer;
  width: auto;
  transition: all 0.3s ease-in-out;
 font-family: "Nunito Sans", sans-serif;
}
.dev-btn:hover {
  opacity: 0.85;
}

/*===========================
=     FONT WEIGHT UTILS     =
===========================*/
.fw-light {
  font-weight: 300 !important;
}
.fw-normal {
  font-weight: 400 !important;
}
.fw-medium {
  font-weight: 500 !important;
}
.fw-semibold {
  font-weight: 600 !important;
}
.fw-bold {
  font-weight: 700 !important;
}
/*===========================
=      TEXT UTILITIES       =
===========================*/
.text-uppercase {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-lowercase {
  text-transform: lowercase;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
/*===========================
=       FLEX UTILITIES      =
===========================*/
.d-flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.flex-row {
  flex-direction: row;
}
.flex-col {
  flex-direction: column;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.align-center {
  align-items: center;
}
.align-start {
  align-items: flex-start;
}
.align-end {
  align-items: flex-end;
}
/*===========================
=     LAYOUT / DISPLAY      =
===========================*/
.d-block {
  display: block !important;
}
.d-inline {
  display: inline !important;
}
.d-inline-block {
  display: inline-block !important;
}
.hidden {
  display: none !important;
}
.w-100 {
  width: 100% !important;
}
.w-auto {
  width: auto !important;
}
.h-auto {
  height: auto !important;
}
/*===========================
=     POSITION / Z-INDEX    =
===========================*/
.relative {
  position: relative !important;
}
.absolute {
  position: absolute !important;
}
.fixed {
  position: fixed !important;
}
.sticky {
  position: sticky !important;
}
/*===========================
=     RESPONSIVE HEADINGS   =
===========================*/
@media (max-width: 1200px) {
  body h2,
  body .h2 {
    font-size: 40px;
  }
}
@media (max-width: 991px) {
  body h2,
  body .h2 {
    font-size: 32px;
  }
  .dev-btn, {
     font-size: 12px;
  }
}








  .swatch-label-wrapper .product-options__label {
  position: relative;
  cursor: pointer;
  min-width: var(--swatch-size);
  min-height: var(--swatch-size);
  padding: var(--spacing-2) var(--spacing-3);
  border: 0.1rem solid rgba(var(--color-foreground), 0.2);
  column-gap: var(--spacing-2);
  transition: background-color 0.15s ease;
}
.swatch-label-wrapper .product-options__label:hover {
  border-radius: 0;
  background-color: rgba(var(--color-foreground), 0.05);
}
.swatch-label-wrapper .product-options__label.is-active {
  border-color: rgba(var(--color-foreground), 1);
}

/* Defensive: suppress unidentified ::before injections on mobile drawer submenu buttons. Root cause pending Inspector capture. See docs/ux/drawer_hearts_intermittent.md. */
.header__drawer .drawer__submenu-btn::before {
  content: none !important;
  display: none !important;
}

/* ============================================================
   BHL · /policies/ editorial match  (added 2026-06-25)
   Pure styling. No legal text changed. Scoped to the built-in
   policy template only (Privacy, Terms, Refund, Shipping,
   Contact information) via body.template-- + .shopify-policy__container.
   ============================================================ */
body.template-- { background: #faf5ec; }
body.template-- #MainContent { background: #faf5ec; }
body.template-- .shopify-policy__container {
  max-width: 760px;
  padding-top: 3rem;
  padding-bottom: 4.5rem;
}
body.template-- .shopify-policy__title { text-align: left; }
body.template-- h1 {
  font-family: "Playfair Display", serif;
  font-weight: 400;
  text-transform: none;
  text-align: left;
  color: #0a0a0c;
  letter-spacing: .01em;
  margin: 0 0 1.5rem;
  padding-bottom: .85rem;
  border-bottom: 1px solid rgba(205, 155, 119, .55);
}
body.template-- .shopify-policy__container .rte { color: #1a1a1a; text-align: left; }
body.template-- .shopify-policy__container .rte p { margin: 0 0 1.15rem; line-height: 1.75; }
body.template-- .shopify-policy__container .rte > p:first-child {
  color: #6b6b6b;
  font-size: 14px;
  letter-spacing: .02em;
  margin-bottom: 1.75rem;
}
body.template-- .shopify-policy__container .rte h2 {
  font-size: 26px;
  color: #0a0a0c;
  letter-spacing: .01em;
  margin: 3rem 0 1.2rem;
  padding-top: 1.85rem;
  border-top: 1px solid rgba(205, 155, 119, .45);
}
body.template-- .shopify-policy__container .rte h3 {
  font-weight: 400;
  font-size: 17px;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #0a0a0c;
  margin: 2.1rem 0 .55rem;
}
