/** Shopify CDN: Minification failed

Line 25:0 All "@import" rules must come first

**/
/* HFI Design Tokens & Global Styles */
:root {
  --hfi-bg: #0B0B0B;
  --hfi-bg-card: #131313;
  --hfi-bg-elevated: #1B1B1B;
  --hfi-accent: #C9A87C;
  --hfi-accent-glow: rgba(201, 168, 124, 0.13);
  --hfi-text: #F0EDE8;
  --hfi-text-muted: #6A6864;
  --hfi-text-dim: #353330;
  --hfi-border: rgba(255, 255, 255, 0.065);
  --hfi-border-warm: rgba(201, 168, 124, 0.2);
  --hfi-sans: 'Manrope', sans-serif;
  --hfi-serif: 'Bodoni Moda', Georgia, serif;
  --hfi-max: 1440px;
  --hfi-pad: 5%;
}

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700&family=Bodoni+Moda:ital,opsz,wght@0,6..96,400;0,6..96,700;1,6..96,400;1,6..96,700&display=swap');

/* Noise texture — fixed, pointer-events-none overlay */
body::after {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 900;
  opacity: 0.04;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 256px;
}

/* Shared button styles */
.hfi-btn-primary {
  display: inline-flex;
  align-items: center;
  font-family: var(--hfi-sans);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  padding: 1.05rem 2.6rem;
  background: var(--hfi-accent);
  color: var(--hfi-bg);
  border-radius: 1px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.25s cubic-bezier(0.16,1,0.3,1), box-shadow 0.3s ease;
}
.hfi-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(201,168,124,0.22);
}
.hfi-btn-primary:active { transform: scale(0.985) translateY(0); }

.hfi-btn-ghost {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-family: var(--hfi-sans);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--hfi-text-muted);
  text-decoration: none;
  transition: color 0.3s ease, gap 0.35s cubic-bezier(0.16,1,0.3,1);
  background: none;
  border: none;
  cursor: pointer;
}
.hfi-btn-ghost:hover { color: var(--hfi-text); gap: 1rem; }

/* Shared label */
.hfi-label {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-family: var(--hfi-sans);
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: var(--hfi-accent);
  margin-bottom: 1.1rem;
}
.hfi-label::before {
  content: '';
  display: block;
  width: 22px;
  height: 1px;
  background: var(--hfi-accent);
  flex-shrink: 0;
}

/* Shared section title */
.hfi-section-title {
  font-family: var(--hfi-serif);
  font-size: clamp(2.6rem, 3.8vw, 4.2rem);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: var(--hfi-text);
}
.hfi-section-title em { font-style: italic; }

/* Wire divider SVG */
.hfi-wire-divider {
  padding: 0 var(--hfi-pad);
  overflow: hidden;
}
.hfi-wire-svg {
  width: 100%;
  height: 36px;
  opacity: 0.12;
}
