:root{color-scheme:dark;--color-bg: #0b0d0c;--color-bg-alt: #111315;--color-surface: #1f3a2e;--color-surface-elevated: #243d32;--color-surface-layer: #161a18;--color-text: #f1ebdd;--color-text-muted: #c9bda8;--color-text-subtle: #717b70;--color-accent: #b08d57;--color-accent-hover: #c4a06a;--color-accent-secondary: #a66a3f;--color-border: rgba(176, 141, 87, .22);--color-border-subtle: rgba(241, 235, 221, .08);--color-overlay: rgba(11, 13, 12, .78);--color-header-bg: rgba(11, 13, 12, .72);--color-header-solid: rgba(11, 13, 12, .94);--color-on-accent: #0b0d0c;--color-forest: #1f3a2e;--color-walnut: #3a2a22;--font-display: Cormorant Garamond, Georgia, Times New Roman, serif;--font-body: Jost, system-ui, -apple-system, sans-serif;--header-height: 72px;--container-max: 1280px;--shadow-soft: 0 4px 24px rgba(0, 0, 0, .35);--shadow-hover: 0 10px 36px rgba(0, 0, 0, .42);--shadow-glow: 0 0 0 1px rgba(176, 141, 87, .12), 0 12px 40px rgba(31, 58, 46, .35);--transition-hover: .2s;--transition-base: .25s;--transition-reveal: .55s;--transition-hero: .85s;--ease-premium: cubic-bezier(.22, 1, .36, 1)}.eyebrow{position:relative;display:inline-flex;align-items:center;gap:.5rem;font-family:Jost,system-ui,-apple-system,sans-serif;font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin-bottom:1rem;text-shadow:0 1px 10px rgba(0,0,0,.35)}.eyebrow:before{content:"";width:.625rem;height:.8125rem;background:url(/assets/coffee-bean.svg) center/contain no-repeat;opacity:.9;transform:rotate(-18deg);flex-shrink:0}.heading-display,.heading-sm,.heading-md,.heading-lg,.heading-xl{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--color-text)}.heading-xl{font-size:clamp(2.75rem,7vw,4.75rem)}.heading-lg{font-size:clamp(2rem,4vw,3.25rem)}.heading-md{font-size:clamp(1.375rem,2.5vw,1.75rem)}.heading-sm{font-size:clamp(1.125rem,1.8vw,1.375rem)}.text-lead{font-family:Jost,system-ui,-apple-system,sans-serif;font-size:clamp(1rem,1.6vw,1.1875rem);line-height:1.75;color:var(--color-text-muted);max-width:38rem}.text-body{font-family:Jost,system-ui,-apple-system,sans-serif;font-size:.9375rem;line-height:1.75;color:var(--color-text-muted)}.text-meta{font-family:Jost,system-ui,-apple-system,sans-serif;font-size:.8125rem;letter-spacing:.06em;color:var(--color-text-subtle)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(72px + 1rem)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;font-family:Jost,system-ui,-apple-system,sans-serif;font-size:1rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:100%;max-width:1280px;margin-inline:auto;padding-inline:clamp(1.25rem,5vw,2.5rem)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.section{padding-block:clamp(4rem,10vw,5.5rem)}@media(min-width:1024px){.section{padding-block:clamp(5.5rem,11vw,7.5rem)}}.section--alt{background-color:var(--color-bg-alt)}.section--forest{background-color:var(--color-forest)}.divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--color-border) 20%,var(--color-border) 80%,transparent)}.brand-wordmark{display:inline-flex;flex-direction:column;gap:.2rem;line-height:1}.brand-wordmark__primary{font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(1.125rem,2.4vw,1.5rem);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent)}.brand-wordmark__sub{font-family:Jost,system-ui,-apple-system,sans-serif;font-size:clamp(.5rem,1.1vw,.625rem);font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text)}.reveal{opacity:0;transform:translateY(24px);transition:opacity var(--transition-reveal) var(--ease-premium) var(--reveal-delay, 0ms),transform var(--transition-reveal) var(--ease-premium) var(--reveal-delay, 0ms)}.reveal--visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.hero__media-image,.hero__media-frame{animation:none!important;transform:none!important}}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-media-zoom{0%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes hero-scroll-pulse{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:.85;transform:translateY(6px)}}
