
@font-face { font-family: "Histore Magical"; src: url("/assets/fonts/HistoreMagical-Regular.otf") format("opentype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Histore Magical"; src: url("/assets/fonts/HistoreMagical-Italic.otf") format("opentype"); font-weight: 400; font-style: italic; font-display: swap; }
:root {
  --fc-brown: #4a2e1f; --fc-green: #2c3e32; --fc-cream: #e0d2b4; --fc-terracotta: #c1622d; --fc-wine: #7c3b41;
  --fc-offwhite: #faf6ee; --fc-sand: #d9c9ae; --fc-stone: #8a7660; --fc-ink-muted: #5c4530;
  --fc-terracotta-cta: #b75d2a; --fc-terracotta-cta-hover: #96481f; --fc-terracotta-bright: #fa7f3a;
  --fc-green-soft: #3f5744; --fc-brown-deep: #3a2216;
  --fc-panel: #b0491f; --fc-pod-top: #d8814e; --fc-pod-body: #96401b;
  --fc-teal: #3b7777; --fc-teal-deep: #2f6060; --fc-pack-orange: #dc592d;
  --fc-surface: #faf6ee; --fc-surface-raised: #fffdf8;
  --fc-text: #4a2e1f; --fc-text-inverse: #faf6ee; --fc-text-muted: #8a7660; --fc-text-muted-inverse: rgba(250,246,238,0.68);
  --fc-text-link: #b75d2a; --fc-text-link-hover: #96481f;
  --fc-border: #d9c9ae; --fc-border-strong: #c6b28f; --fc-border-inverse: rgba(250,246,238,0.2);
  --fc-accent: #c1622d; --fc-accent-secondary: #7c3b41;
  --fc-font-heading: "Histore Magical", "Cormorant Garamond", Georgia, serif;
  --fc-font-body: "Calmius Sans", "Jost", system-ui, sans-serif;
  --fc-size-h1: clamp(32px, 4vw, 64px); --fc-size-h2: clamp(26px, 2.8vw, 40px); --fc-size-h3: clamp(20px, 1.9vw, 28px);
  --fc-size-body: clamp(16px, 1.15vw, 18px); --fc-size-caption: clamp(13px, 0.95vw, 14px); --fc-size-cta: clamp(15px, 1.05vw, 16px);
  --fc-size-ghost: clamp(80px, 10vw, 180px);
  --fc-container: 1200px; --fc-measure: 720px; --fc-padding-x: clamp(20px, 5vw, 80px);
  --fc-section-py: clamp(64px, 8vw, 120px); --fc-section-py-short: clamp(48px, 6vw, 80px);
  --fc-space-1: 4px; --fc-space-2: 8px; --fc-space-3: 12px; --fc-space-4: 16px; --fc-space-5: 20px; --fc-space-6: 24px;
  --fc-space-8: 32px; --fc-space-10: 40px; --fc-space-12: 48px; --fc-space-16: 64px; --fc-space-20: 80px;
  --fc-card-gap: 24px; --fc-card-padding: 32px;
  --fc-radius-img: 4px; --fc-radius-badge: 4px; --fc-radius-btn: 8px; --fc-radius-input: 8px; --fc-radius-card: 12px;
  --fc-radius-panel: clamp(16px, 2vw, 28px);
  --fc-shadow-sm: 0 2px 6px rgba(74,46,31,0.08); --fc-shadow-md: 0 4px 16px rgba(74,46,31,0.10);
  --fc-shadow-lg: 0 10px 28px rgba(74,46,31,0.14); --fc-shadow-cta: 0 8px 20px rgba(183,93,42,0.30);
  --fc-filter-product: brightness(1.05) contrast(1.08);
  --fc-grain-url: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNjAnIGhlaWdodD0nMTYwJz48ZmlsdGVyIGlkPSduJz48ZmVUdXJidWxlbmNlIHR5cGU9J2ZyYWN0YWxOb2lzZScgYmFzZUZyZXF1ZW5jeT0nMC45JyBudW1PY3RhdmVzPSczJyBzdGl0Y2hUaWxlcz0nc3RpdGNoJy8+PGZlQ29sb3JNYXRyaXggdHlwZT0nc2F0dXJhdGUnIHZhbHVlcz0nMCcvPjwvZmlsdGVyPjxyZWN0IHdpZHRoPScxNjAnIGhlaWdodD0nMTYwJyBmaWx0ZXI9J3VybCgjbiknLz48L3N2Zz4=");
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--fc-cream); color: var(--fc-text); font-family: var(--fc-font-body); font-weight: 300; font-size: var(--fc-size-body); line-height: 1.6; -webkit-font-smoothing: antialiased; }
h1, h2, h3 { font-family: var(--fc-font-heading); font-weight: 400; margin: 0; text-wrap: pretty; line-height: 1.12; }
button, input, textarea { font-family: inherit; }
body, h1, h2, h3, button { font-variant-ligatures: none; font-feature-settings: "liga" 0, "dlig" 0, "clig" 0; }
p { margin: 0; text-wrap: pretty; }
strong { font-weight: 600; }
a { color: var(--fc-text-link); text-underline-offset: 3px; transition: color 160ms ease; }
a:hover { color: var(--fc-text-link-hover); }
::selection { background: var(--fc-terracotta); color: var(--fc-offwhite); }
@keyframes fc-ghost-drift { from { transform: translate3d(-50%,0,0); } to { transform: translate3d(-50%,-36px,0); } }
@keyframes fc-reveal { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
[data-reveal] { transition: opacity 800ms cubic-bezier(0.2, 0.7, 0.2, 1), transform 800ms cubic-bezier(0.2, 0.7, 0.2, 1); }
[data-reveal].fc-pre { opacity: 0; transform: translateY(32px); }
[data-zoom] > img { transition: transform 1600ms cubic-bezier(0.2, 0.7, 0.2, 1); }
[data-zoom].fc-pre > img { transform: scale(1.14); }
@keyframes fc-drift { 0%, 100% { translate: 0 0; } 50% { translate: 0 -12px; } }
@keyframes fc-marquee { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
@keyframes fc-float { 0%, 100% { transform: translate3d(0,0,0); } 50% { transform: translate3d(0,-9px,0); } }
@keyframes fc-intro { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: none; } }
[data-intro] { animation: fc-intro 900ms cubic-bezier(0.2, 0.7, 0.2, 1) both; }
[data-intro="2"] { animation-delay: 120ms; }
[data-intro="3"] { animation-delay: 240ms; }
[data-intro="4"] { animation-delay: 360ms; }
@keyframes fc-fill { from { transform: scaleY(0); } to { transform: scaleY(1); } }
[data-fill] { animation: fc-fill 7s linear both; }
@keyframes fc-zoom { from { transform: scale(1.12); } to { transform: scale(1); } }
[data-card] > div:first-child img { transition: transform 500ms cubic-bezier(0.2, 0.7, 0.2, 1); }
[data-card]:hover > div:first-child img { transform: translateY(-8px) rotate(-2deg); }
[data-marquee]:hover > div { animation-play-state: paused; }
a iconify-icon[icon="solar:arrow-right-linear"] { transition: transform 200ms ease; }
a:hover iconify-icon[icon="solar:arrow-right-linear"] { transform: translateX(4px); }
@media (prefers-reduced-motion: reduce) { [data-reveal], [data-zoom] > img, [data-intro], [data-fill] { animation: none !important; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 1ms !important; animation-iteration-count: 1 !important; transition-duration: 1ms !important; } }

[hidden] { display: none !important; }
.fc-desk { display: contents; }
.fc-mob { display: none; }
@media (max-width: 1199px) { .fc-desk { display: none; } .fc-mob { display: contents; } }
@media (min-width: 1200px) { [data-soft="menu"] { display: none !important; } }
iconify-icon { display: inline-block; flex: none; }
iconify-icon[width="18"] { width: 18px; height: 18px; }
iconify-icon[width="21"] { width: 21px; height: 21px; }
iconify-icon[width="22"] { width: 22px; height: 22px; }
iconify-icon[width="20"] { width: 20px; height: 20px; }
iconify-icon[width="19"] { width: 19px; height: 19px; }
iconify-icon[width="17"] { width: 17px; height: 17px; }
iconify-icon[width="26"] { width: 26px; height: 26px; }
iconify-icon[width="16"] { width: 16px; height: 16px; }
iconify-icon[width="24"] { width: 24px; height: 24px; }
.skip { position: absolute; left: 12px; top: -60px; z-index: 100; padding: 12px 18px; background: var(--fc-brown); color: var(--fc-offwhite); border-radius: var(--fc-radius-btn); text-decoration: none; }
.skip:focus { top: 12px; color: var(--fc-offwhite); }
:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(193, 98, 45, 0.45); border-radius: 4px; }
.h0:hover { color: var(--fc-terracotta-cta) !important; }
.h1:hover { background: var(--fc-terracotta-cta-hover) !important; transform: translateY(-2px) !important; box-shadow: var(--fc-shadow-cta) !important; color: var(--fc-offwhite) !important; }
.a2:active { transform: translateY(0) !important; }
.h3:hover { background: var(--fc-terracotta-cta-hover) !important; color: var(--fc-offwhite) !important; transform: translateY(-2px) !important; }
.h4:hover { background: rgba(74,46,31,0.07) !important; }
.h5:hover { background: #ffffff !important; color: var(--fc-brown) !important; transform: translateY(-2px) !important; box-shadow: 0 10px 24px rgba(58,34,22,0.35) !important; }
.h6:hover { background: rgba(250,246,238,0.22) !important; color: var(--fc-offwhite) !important; transform: translateY(-2px) !important; }
.h7:hover { background: rgba(74,46,31,0.06) !important; color: var(--fc-brown) !important; transform: translateY(-2px) !important; }
.h8:hover { background: rgba(74,46,31,0.06) !important; border-color: var(--fc-brown) !important; }
.h9:hover { background: var(--fc-terracotta-cta-hover) !important; color: var(--fc-offwhite) !important; transform: translateY(-2px) !important; box-shadow: var(--fc-shadow-cta) !important; }
.ha:hover { background: rgba(250,246,238,0.12) !important; color: var(--fc-offwhite) !important; transform: translateY(-2px) !important; }
.hb:hover { color: var(--fc-terracotta-bright) !important; }
.hc:hover { background: #ffffff !important; color: var(--fc-brown) !important; transform: translateY(-2px) !important; box-shadow: 0 10px 24px rgba(28,16,10,0.32) !important; }
.hd:hover { color: var(--fc-brown) !important; }
.he:hover { color: var(--fc-terracotta-cta-hover) !important; }
