/** Shopify CDN: Minification failed

Line 142:8 Expected ":"
Line 216:1 Expected "}" to go with "{"

**/
:root {
  --sg-warm-white: #fffaf4;
  --sg-porcelain: #fffdf9;
  --sg-beige: #f6e9df;
  --sg-blush: #f1dbcf;
  --sg-gold: #c6a16e;
  --sg-charcoal: #302a26;
  --sg-muted: #746258;
  --sg-border: #eadbd0;
  --sg-shadow: 0 24px 80px rgba(92, 69, 54, 0.13);
  --sg-radius: 0px;

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.soft-glow-body {
  margin: 0;
  color: var(--sg-charcoal);
  font-family: "Inter", sans-serif;
  background: radial-gradient(circle at 82% 6%, rgba(207, 171, 121, 0.16), transparent 28%), linear-gradient(180deg, #fffaf4 0%, #fbf2ea 46%, #fffdf9 100%);
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, textarea, select { font: inherit; letter-spacing: 0; }
::selection { background: #dfc2ac; color: var(--sg-charcoal); }
.skip-link { position: absolute; left: -999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.skip-link:focus { left: 16px; top: 16px; width: auto; height: auto; z-index: 999; background: #fff; padding: 12px 16px; border-radius: 0px; }
.sg-container { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.sg-serif { font-family: "Playfair Display", Georgia, serif; }
.sg-section { padding: clamp(72px, 10vw, 128px) 0; }
.sg-shadow { box-shadow: var(--sg-shadow); }
.sg-button {
  align-items: center; border: 0; border-radius: 999px; cursor: pointer; display: inline-flex; font-size: 14px;
  font-weight: 700; justify-content: center; min-height: 44px; overflow: hidden; padding: 12px 24px; position: relative;
  transition: transform .3s ease, background-color .3s ease, color .3s ease, box-shadow .3s ease;
}
.sg-button:hover { transform: translateY(-2px); }
.sg-button--dark { background: var(--sg-charcoal); color: var(--sg-warm-white); box-shadow: 0 18px 42px rgba(48,42,38,.24); }
.sg-button--dark:hover { background: #473c35; }
.sg-button--light { background: var(--sg-warm-white); color: var(--sg-charcoal); box-shadow: 0 16px 38px rgba(80,61,48,.14); }
.sg-button--outline { background: transparent; border: 1px solid #d5bfae; color: var(--sg-charcoal); }
.sg-button--outline:hover { background: #fff7ee; }
.sg-button::after { background: linear-gradient(90deg, transparent, rgba(255,255,255,.42), transparent); content: ""; height: 100%; left: -100%; position: absolute; top: 0; transform: skewX(-14deg); transition: left .7s ease; width: 80%; }
.sg-button:hover::after { left: 130%; }
.sg-eyebrow { color: #b18b58; font-size: 13px; font-weight: 800; letter-spacing: 0; margin: 0; text-transform: uppercase; }
.sg-heading { color: var(--sg-charcoal); font-family: "Playfair Display", Georgia, serif; font-size: clamp(42px, 6vw, 72px); font-weight: 700; letter-spacing: 0; line-height: .98; margin: 18px 0 0; }
.sg-section-title { color: var(--sg-charcoal); font-family: "Playfair Display", Georgia, serif; font-size: clamp(36px, 5vw, 56px); font-weight: 650; line-height: 1.05; margin: 12px 0 0; }
.sg-body { color: var(--sg-muted); font-size: 16px; line-height: 1.8; margin: 22px 0 0; }
.sg-fade-up { animation: sgFadeUp .85s ease both; }
@keyframes sgFadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }

.sg-header { backdrop-filter: blur(18px); background: rgba(255,250,244,.78); box-shadow: 0 18px 70px rgba(79,58,47,.08); position: sticky; top: 0; z-index: 50; }
.sg-nav { align-items: center; display: flex; gap: 24px; justify-content: space-between; min-height: 76px; }
.sg-brand { font-family: "Playfair Display", Georgia, serif; font-size: 22px; font-weight: 650; }
.sg-menu { align-items: center; display: flex; gap: 32px; }
.sg-menu a { color: #78685d; font-size: 14px; font-weight: 600; transition: color .25s ease; }
.sg-menu a:hover, .sg-menu a[aria-current="page"] { color: var(--sg-charcoal); }
.sg-cart-link { align-items: center; background: var(--sg-warm-white); border-radius: 999px; box-shadow: 0 12px 32px rgba(79,58,47,.12); display: inline-flex; height: 44px; justify-content: center; position: relative; width: 44px; }
.sg-cart-count { align-items: center; background: var(--sg-gold); border-radius: 999px; color: #fff; display: flex; font-size: 11px; font-weight: 800; height: 20px; justify-content: center; min-width: 20px; padding: 0 5px; position: absolute; right: -4px; top: -4px; }
.sg-mobile-toggle { display: none; }

.sg-hero { min-height: calc(100vh - 76px); overflow: hidden; position: relative; }
.sg-hero__image { inset: 0; position: absolute; }
.sg-hero__image img { height: 100%; object-fit: cover; object-position: center; width: 100%; }
.sg-hero__image::after { background: linear-gradient(90deg, rgba(255,247,239,.95), rgba(255,247,239,.65), transparent); content: ""; inset: 0; position: absolute; }
.sg-hero__fade { background: linear-gradient(0deg, var(--sg-warm-white), transparent); bottom: 0; height: 144px; left: 0; position: absolute; right: 0; }
.sg-hero__content { align-items: center; display: flex; min-height: calc(100vh - 76px); padding: 64px 0 80px; position: relative; }
.sg-hero__copy { max-width: 700px; }
.sg-hero__actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 36px; }

.sg-grid { display: grid; gap: 24px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.sg-feature { align-items: center; display: grid; gap: 48px; grid-template-columns: .95fr 1.05fr; }
.sg-media-card { background: var(--sg-beige); border-radius: var(--sg-radius); box-shadow: var(--sg-shadow); overflow: hidden; transition: transform .45s ease, box-shadow .45s ease; }
.sg-media-card:hover { box-shadow: 0 28px 80px rgba(87,64,50,.16); transform: translateY(-7px); }
.sg-media-card img { aspect-ratio: 4 / 5; height: 100%; object-fit: cover; width: 100%; }
.sg-benefit-list { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0,1fr)); margin-top: 32px; }
.sg-benefit-pill { background: rgba(255,255,255,.65); border-radius: var(--sg-radius); box-shadow: 0 16px 42px rgba(92,69,54,.08); color: #5f514a; font-size: 14px; line-height: 1.6; padding: 16px; }
.sg-dark-band { background: var(--sg-charcoal); color: var(--sg-warm-white); padding: 80px 0; }
.sg-dark-band .sg-section-title, .sg-dark-band .sg-heading { color: var(--sg-warm-white); }
.sg-dark-band .sg-body { color: #eadbd0; }
.sg-benefit-card { background: rgba(255,250,244,.09); border-radius: var(--sg-radius); padding: 28px; }
.sg-benefit-card h3 { font-family: "Playfair Display", Georgia, serif; font-size: 28px; margin: 22px 0 0; }
.sg-benefit-card p { color: #eadbd0; font-size: 14px; line-height: 1.7; }
.sg-product-card { background: rgba(255,255,255,.7); border-radius: var(--sg-radius); box-shadow: 0 20px 60px rgba(92,69,54,.10); overflow: hidden; transition: transform .45s ease, box-shadow .45s ease; }
.sg-product-card:hover { box-shadow: 0 28px 80px rgba(92,69,54,.15); transform: translateY(-4px); }
.sg-product-card__image { aspect-ratio: 4 / 5; background: var(--sg-beige); overflow: hidden; }
.sg-product-card__image img { height: 100%; object-fit: cover; transition: transform .7s ease; width: 100%; }
.sg-product-card:hover img { transform: scale(1.04); }
.sg-product-card__body { padding: 22px; }
.sg-product-card__meta { color: #b18b58; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.sg-product-card__title { font-family: "Playfair Display", Georgia, serif; font-size: 28px; font-weight: 650; line-height: 1.05; margin: 6px 0 0; }
.sg-product-card__price { color: var(--sg-charcoal); font-size: 14px; font-weight: 800; margin-top: 10px; }
.sg-product-card__copy { color: var(--sg-muted); font-size: 14px; line-height: 1.7; min-height: 48px; }
.sg-before-after { background: var(--sg-beige); }
.sg-compare { display: grid; gap: 18px; grid-template-columns: repeat(2, minmax(0,1fr)); }
.sg-compare__panel { border-radius: var(--sg-radius); overflow: hidden; position: relative; box-shadow: 0 22px 60px rgba(92,69,54,.13); }
.sg-compare__panel img { aspect-ratio: 4 / 5; height: 100%; object-fit: cover; width: 100%; }
.sg-compare__panel--before img { filter: grayscale(1); }
.sg-compare__caption { background: rgba(255,250,244,.88); border-radius: var(--sg-radius); bottom: 20px; left: 20px; padding: 16px; position: absolute; right: 20px; }
.sg-reviews { display: grid; gap: 24px; grid-template-columns: repeat(3, minmax(0,1fr)); margin-top: 48px; }
.sg-review { background: rgba(255,255,255,.7); border-radius: var(--sg-radius); box-shadow: 0 20px 60px rgba(92,69,54,.10); margin: 0; padding: 28px; }
.sg-review blockquote { font-family: "Playfair Display", Georgia, serif; font-size: 28px; line-height: 1.15; margin: 0; }
.sg-review figcaption { color: #b18b58; font-size: 14px; font-weight: 800; margin-top: 24px; }
.sg-final-cta { padding: 0 16px 80px; }
.sg-final-cta__panel { background: var(--sg-charcoal); border-radius: var(--sg-radius); box-shadow: var(--sg-shadow); color: var(--sg-warm-white); padding: 64px 32px; text-align: center; }
.sg-final-cta h2 { color: var(--sg-warm-white); margin-left: auto; margin-right: auto; max-width: 780px; }
.sg-footer { background: var(--sg-warm-white); border-top: 1px solid var(--sg-border); }
.sg-footer__grid { display: grid; gap: 32px; grid-template-columns: 1.2fr .8fr .8fr; padding: 48px 0; }

.sg-product-detail, .sg-cart-layout { display: grid; gap: 48px; grid-template-columns: 1.08fr .92fr; }
.sg-gallery-main { background: var(--sg-beige); border-radius: var(--sg-radius); box-shadow: var(--sg-shadow); overflow: hidden; }
.sg-gallery-main img { aspect-ratio: 4 / 5; height: 100%; object-fit: cover; width: 100%; }
.sg-product-benefits { display: grid; gap: 12px; margin-top: 32px; }
.sg-product-benefits p, .sg-cart-item, .sg-checkout-box { background: rgba(255,255,255,.72); border-radius: var(--sg-radius); box-shadow: 0 14px 38px rgba(92,69,54,.08); }
.sg-product-benefits p { color: #5f514a; font-size: 14px; line-height: 1.7; margin: 0; padding: 16px; }
.sg-quantity { align-items: center; background: rgba(255,255,255,.75); border-radius: 999px; box-shadow: 0 12px 32px rgba(92,69,54,.09); display: inline-flex; height: 48px; overflow: hidden; }
.sg-quantity button { background: transparent; border: 0; cursor: pointer; height: 48px; width: 48px; }
.sg-quantity input { background: transparent; border: 0; font-weight: 700; text-align: center; width: 44px; }
.sg-product-form { align-items: center; display: flex; flex-wrap: wrap; gap: 16px; margin-top: 32px; }
.sg-cart-layout { grid-template-columns: 1fr 420px; }
.sg-cart-item { display: grid; gap: 18px; grid-template-columns: 112px 1fr auto; padding: 16px; }
.sg-cart-item img { aspect-ratio: 1; border-radius: var(--sg-radius); object-fit: cover; width: 112px; }
.sg-checkout-box { padding: 28px; }
.sg-checkout-row { border-top: 1px solid var(--sg-border); display: flex; justify-content: space-between; padding: 14px 0; }
.sg-empty { background: rgba(255,255,255,.7); border-radius: var(--sg-radius); box-shadow: var(--sg-shadow); padding: 48px 24px; text-align: center; }

@media (max-width: 900px) {
  .sg-menu { display: none; }
  .sg-mobile-toggle { background: var(--sg-charcoal); border: 0; border-radius: 999px; color: #fff; display: inline-flex; height: 44px; justify-content: center; align-items: center; width: 44px; }
  .sg-menu[data-open="true"] { background: var(--sg-warm-white); border-top: 1px solid var(--sg-border); display: flex; flex-direction: column; gap: 0; left: 0; padding: 16px; position: absolute; right: 0; top: 76px; }
  .sg-menu[data-open="true"] a { padding: 12px 0; }
  .sg-feature, .sg-product-detail, .sg-cart-layout { grid-template-columns: 1fr; }
  .sg-benefit-list, .sg-compare, .sg-reviews, .sg-footer__grid { grid-template-columns: 1fr; }
  .sg-heading { font-size: 48px; }
}
document.addEventListener('DOMContentLoaded', () => {
  const toggle = document.querySelector('[data-sg-mobile-toggle]');
  const menu = document.querySelector('[data-sg-menu]');

  if (toggle && menu) {
    toggle.style.pointerEvents = 'auto';
    toggle.style.zIndex = '99999';
    toggle.style.position = 'relative';
    toggle.style.cursor = 'pointer';

    toggle.addEventListener('click', (e) => {
      e.stopPropagation();
      const isOpen = menu.getAttribute('data-open') === 'true';
      menu.setAttribute('data-open', String(!isOpen));
      toggle.setAttribute('aria-expanded', String(!isOpen));
      toggle.textContent = isOpen ? '☰' : '✕';
    });

    document.addEventListener('click', (e) => {
      if (!toggle.contains(e.target) && !menu.contains(e.target)) {
        menu.setAttribute('data-open', 'false');
        toggle.setAttribute('aria-expanded', 'false');
        toggle.textContent = '☰';
      }
    });
  }
});
/* Modern mobile menu styles */
/* Square buttons globally - excludes header controls */
.button:not(.sg-mobile-toggle),
button:not(.sg-mobile-toggle):not(.sg-quantity button),
[type="button"]:not(.sg-mobile-toggle),
[type="submit"]:not(.sg-mobile-toggle),
.btn, .product-form__submit, .add-to-cart,
.shopify-payment-button__button, button[name="add"],
.cart__submit {
  border-radius: 0 !important;
  padding: 10px 20px !important;
  font-size: 0.85rem !important;
  letter-spacing: 0.05em !important;
  font-weight: 400 !important;
}

/* Modern mobile menu styles */
@media (max-width: 900px) {
  .sg-mobile-toggle {
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--sg-charcoal) !important;
    font-size: 1.5rem !important;
  }
  .sg-menu[data-open="true"] {
    background: rgba(255, 250, 244, 0.98) !important;
    backdrop-filter: blur(20px) !important;
    border-top: 1px solid var(--sg-border) !important;
    border-bottom: 1px solid var(--sg-border) !important;
    box-shadow: 0 24px 60px rgba(79, 58, 47, 0.12) !important;
    padding: 8px 24px 24px !important;
    animation: sgMenuSlide 0.3s ease both !important;
  }
  .sg-menu[data-open="true"] a {
    border-bottom: 1px solid var(--sg-border) !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    padding: 16px 0 !important;
  }
}

@keyframes sgMenuSlide {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}