/* Landing-page tokens plus the website mode of design-to-motion. */
body.home-page{--smoke:#1f1f1f;--smoke-2:#272727;--ember:#f3ede4;--ease:cubic-bezier(.22,1,.36,1);--motion-opacity:cubic-bezier(.33,1,.68,1);--motion-reveal:cubic-bezier(.16,1,.3,1)}
body.home-page .site-header,body.home-page .site-header.is-scrolled{padding:16px 0 0;background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body.home-page .site-header .nav-wrap{background:rgba(251,250,247,.94);border:1px solid rgba(98,103,95,.16);border-radius:16px;padding:16px 24px;box-shadow:0 8px 24px rgba(68,49,30,.06);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.home-page :is(#about,#bestsellers,#origin,#visit,#recipes,#home-tagline){scroll-margin-top:calc(var(--site-header-height,104px) + 24px)}
body.home-page .nav-links a{transition:color .3s var(--ease)}
body.home-page .nav-links a.is-current{text-decoration:underline;text-underline-offset:8px;text-decoration-color:var(--rust)}
body.home-page .home-about{padding-block:48px 64px;gap:48px}
body.home-page .home-intro h1{font-size:72px;line-height:1;max-width:680px;margin-bottom:32px}
body.home-page .home-intro h1 .rise-line{padding-block:8px;margin:0}
body.home-page .home-intro h1 .rise-line>span{background:linear-gradient(90deg,#000,#666);background-clip:text;-webkit-background-clip:text;color:transparent}
body.home-page .home-intro h1 em{color:inherit;font-style:normal}
body.home-page .home-description{font-size:16px;line-height:24px;max-width:680px;text-wrap:pretty}
body.home-page h2{font-size:36px;line-height:40px;text-wrap:balance}
body.home-page .home-kicker{font-size:12px;line-height:16px;letter-spacing:.08em;gap:8px;margin-bottom:16px}
body.home-page .home-actions{gap:24px;margin-top:32px}
body.home-page .button{font-size:16px;line-height:24px;padding:8px 12px;border-radius:8px;min-height:48px}
body.home-page .home-text-link{font-size:14px;line-height:20px}
body.home-page :is(.button,.home-text-link,.home-motion-toggle,.home-phone,.home-chip){transition:transform .5s var(--ease),color .3s var(--ease),background-color .3s var(--ease)}
body.home-page :is(.button,.home-motion-toggle,.home-phone,.home-chip):active{transform:scale(.98)}
.home-skip{position:fixed;z-index:100;top:8px;left:16px;padding:12px 16px;background:var(--paper);color:var(--ink);border-radius:8px;transform:translateY(-200%)}
.home-skip:focus{transform:none;outline:3px solid var(--rust)}
body.home-page .home-origin{background:var(--smoke);padding-block:96px}
body.home-page .home-origin h2{font-size:36px;line-height:40px}
body.home-page .home-origin-video{box-shadow:none}
body.home-page .home-shop-photo figcaption{background:rgba(31,31,31,.72);padding-block:16px}
body.home-page :is(.home-stat,.home-visit-mini){border:0}
body.home-page .home-stat{padding:32px 24px}
body.home-page .home-stat strong{font-size:48px;line-height:1}
body.home-page .home-stat strong small{font-size:14px;line-height:20px}
body.home-page .home-stat>span{font-size:14px;line-height:20px}
body.home-page .home-inset-photo{background:#eee6da}
body.home-page .home-inset-photo img{position:absolute;inset:0;opacity:0;transition:opacity .8s var(--motion-opacity);transform:none;filter:none}
body.home-page .home-inset-photo img.is-current{opacity:1}
body.home-page .home-photo-note{right:0;bottom:8px;font-size:12px;line-height:16px;letter-spacing:.04em}
.home-motion-toggle{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;margin:8px 0 0 auto;padding:8px 16px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:12px;line-height:16px;cursor:pointer}
.home-motion-toggle[hidden]{display:none}
.home-motion-toggle[aria-pressed=true]{color:var(--rust);border-color:var(--rust)}
.home-motion-toggle:focus-visible{outline:3px solid var(--rust);outline-offset:4px}
.home-video-status{position:absolute;inset:16px 16px auto;margin:0;padding:12px;border-radius:8px;background:#1f1f1f;color:#fff;font-size:14px;line-height:20px;z-index:3}
.home-video-fallback{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;background:#1f1f1f;color:#fff;border-radius:8px;font-size:14px}
.motion-live .home-video-fallback,html:not(.motion-live) .home-video-toggle{display:none}
body.home-page .home-product-image>img{transition:opacity .8s var(--motion-opacity);transform:none}
body.home-page .home-product-card:hover .home-product-image img{transform:none}
body.home-page .home-product-card:hover .home-product-image{transform:translateY(-4px);transition:transform .5s var(--ease),box-shadow .3s var(--ease)}
/* Remove old zoom, breathing shadow and independent perpetual clocks. */
body.home-page :is(.home-shop-photo>img,.home-origin-photo-a,.home-origin-photo-b,.home-origin-video,.home-open-dot:after){animation:none!important}
body.home-page .home-open-dot:after{display:none}
body.home-page .home-origin-photo-a,body.home-page .home-origin-photo-b{transform:none}
.home-tagline{width:min(1248px,calc(100% - 80px));padding-block:96px;margin:auto}
body.home-page .home-tagline-copy{font-size:60px;line-height:1;max-width:680px;margin:24px 0 0;letter-spacing:-.02em}
.home-tagline-line{display:block;padding-block:8px}
.home-tagline-copy [data-tagline-word]{display:inline;color:var(--ink);opacity:1;transition:opacity .5s var(--ease)}
.motion-live:not(.motion-paused) .home-tagline-copy [data-tagline-word]:not(.is-read){opacity:.3}
/* Intros play once. The moving foreground stays inside its own frame. */
.motion-ready .rise-title .rise-line>span{transform:translateY(10px);opacity:0;filter:blur(4px)}
.motion-ready .rise-title.is-in .rise-line>span{transform:none;opacity:1;filter:none;transition:transform 1.05s var(--motion-reveal),opacity .8s var(--motion-opacity),filter .8s var(--motion-opacity)}
.motion-ready .rise-title.is-in .rise-line:nth-child(2)>span{transition-delay:80ms}
.motion-ready [data-reveal]{opacity:0;transform:translateY(24px);filter:blur(4px)}
.motion-ready [data-reveal].is-in{opacity:1;transform:none;filter:none;transition:transform .8s var(--ease),opacity .8s var(--ease),filter .8s var(--motion-opacity);transition-delay:calc(var(--reveal-order,0)*80ms)}
.motion-ready .home-product-card[data-reveal]{transform:translateY(24px) scale(.985);filter:blur(6px)}
.motion-ready .home-product-card[data-reveal].is-in{transform:none;filter:none;transition:transform .9s var(--motion-reveal),opacity .6s var(--motion-opacity),filter .6s var(--motion-opacity);transition-delay:calc(var(--reveal-order,0)*80ms)}
.motion-ready .arch-reveal>img:not(.home-product-alt){filter:blur(14px) saturate(.6)}
.motion-ready .arch-reveal.is-in>img:not(.home-product-alt){filter:none;transition:filter .8s var(--motion-opacity),opacity .8s var(--motion-opacity)}
.motion-ready .arch-reveal:after{transform:scaleY(1);border-radius:inherit}
.motion-ready .arch-reveal.is-in:after{transform:scaleY(0);transition:transform 1.05s var(--motion-reveal)}
.motion-paused :is([data-reveal],.rise-title .rise-line>span){opacity:1!important;transform:none!important;filter:none!important}
.motion-paused .arch-reveal:after{transform:scaleY(0)!important;transition:none!important}
.motion-paused .arch-reveal>img{filter:none!important}
@media(max-width:1100px){body.home-page .home-about{gap:32px}body.home-page .home-intro h1{font-size:60px;line-height:1}}
@media(max-width:760px){
 body.home-page .site-header{padding-top:8px}
 body.home-page .site-header .nav-wrap{width:calc(100% - 24px);padding:8px 12px;border-radius:16px;gap:4px 8px}
 body.home-page .site-header .brand{width:176px}
 body.home-page .site-header .nav-links{gap:16px}
 body.home-page .home-about{padding-block:32px 48px;gap:24px}
 body.home-page .home-intro h1{font-size:48px;line-height:1;margin-bottom:24px}
 body.home-page .home-description{font-size:16px;line-height:24px}
 body.home-page h2,body.home-page .home-origin h2{font-size:30px;line-height:36px}
 body.home-page .home-actions{gap:16px;margin-top:24px}
 body.home-page .home-actions .button{font-size:16px;line-height:24px;padding:8px 12px}
 body.home-page .home-visit-mini{padding:16px;gap:12px;margin-top:24px;border-radius:16px}
 body.home-page .home-stat{padding:24px 8px}
 body.home-page .home-stat strong{font-size:36px;line-height:40px}
 body.home-page .home-photo-note{position:relative;inset:auto;justify-content:flex-end;margin-top:16px;font-size:12px;line-height:16px}
 body.home-page .home-photo-composition{padding-bottom:8px}
 body.home-page .home-inset-photo{bottom:56px}
 .home-tagline{width:calc(100% - 40px);padding-block:64px}
 body.home-page .home-tagline-copy{font-size:36px;line-height:40px;margin-top:16px}
 body.home-page .home-origin{padding-block:64px}
 body.home-page .home-recipes{padding-block:48px 64px}
 body.home-page .home-product-copy h3{font-size:16px;line-height:24px}
 body.home-page .home-kicker{font-size:12px;line-height:16px;margin-bottom:16px}
 body.home-page .home-category-chips{margin-inline:0;padding-inline:0;max-width:100%;gap:8px}
}
@media(max-width:360px){body.home-page .site-header .brand{width:144px}body.home-page .site-header .nav-links{gap:12px}body.home-page .home-intro h1{font-size:36px;line-height:40px}.home-tagline{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){.home-tagline-copy [data-tagline-word]{opacity:1!important}.home-inset-photo img{transition:none!important}}

/* Product display plinths share the clock; each photograph tilts independently. */
body.home-page .home-product-card[data-home-tilt]{perspective:1000px}
body.home-page .home-product-card[data-home-tilt] .home-product-image{transform:none;transform-origin:50% 50%;box-shadow:0 8px 24px rgba(68,49,30,.06);transition:transform .5s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)}
.motion-live:not(.motion-paused) body.home-page .home-product-card[data-home-tilt].is-inspecting .home-product-image{transform:translateY(-8px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:0 24px 48px rgba(68,49,30,.12);border-color:var(--line)}
body.home-page .home-product-card[data-home-tilt]:is(:hover,:focus-visible) .home-product-arrow{transform:translateX(4px);background:transparent;color:var(--rust);border-color:var(--line)}

/* A photographic album: the caption belongs below the photograph. */
body.home-page .home-album{padding-block:96px 32px}
body.home-page .home-album>.home-section-head{align-items:flex-end;gap:24px}
body.home-page .home-album-buttons{display:flex;align-items:center;gap:8px;flex-shrink:0}
html:not(.motion-live) body.home-page .home-album-buttons{display:none}
.home-album-position{margin-right:16px;font-size:12px;line-height:16px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.home-album-position[hidden]{display:none}
body.home-page .home-album-buttons button{width:44px;height:44px;transition:background-color .3s var(--ease),color .3s var(--ease),opacity .3s var(--ease)}
body.home-page .home-album-buttons button:disabled{opacity:.35;cursor:default;background:transparent;color:var(--ink);border-color:var(--line)}
body.home-page .home-album-rail{gap:24px;padding-top:8px;align-items:flex-start}
body.home-page .home-album-rail figure{flex-basis:clamp(320px,30vw,400px);aspect-ratio:auto;overflow:visible;background:transparent;border-radius:0}
body.home-page .home-album-rail img{height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:16px;transform:none;transition:none}
body.home-page .home-album-rail figure:hover img{transform:none}
body.home-page .home-album-rail figcaption{position:static;display:flex;align-items:baseline;gap:16px;padding:16px 0 0;background:none;color:var(--ink);font-size:14px;line-height:20px}
.home-album-number{color:var(--rust);font-size:12px;font-variant-numeric:tabular-nums}
@media(max-width:760px){
 body.home-page .home-album{padding-block:64px 24px}
 body.home-page .home-album>.home-section-head{align-items:flex-start;flex-direction:column;gap:16px}
 body.home-page .home-album-buttons{align-self:flex-end}
 body.home-page .home-album-rail{gap:16px}
 body.home-page .home-album-rail figure{flex-basis:80%}
 body.home-page .home-album-rail figcaption{gap:12px;padding-top:12px}
}
@media(hover:none),(pointer:coarse){
 .motion-live:not(.motion-paused) body.home-page .home-product-card[data-home-tilt].is-inspecting .home-product-image{transform:none}
}
@media(prefers-reduced-motion:reduce){
 body.home-page .home-product-card[data-home-tilt] .home-product-image{transform:none!important;transition:none}
}

/* Full rollout: clear information first, quiet motion around the photographs. */
body.home-page .home-service-link{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;font-size:24px;line-height:32px;color:var(--ink);text-decoration:none}
body.home-page .home-service-link:hover{color:var(--rust)}
body.home-page .home-stat{align-content:start;gap:12px}
body.home-page .home-stat-contact{align-content:center}
.motion-ready [data-reveal]{filter:none}
.motion-ready [data-reveal].is-in{filter:none;transition:transform .6s var(--ease),opacity .6s var(--ease);transition-delay:calc(var(--reveal-order,0)*80ms)}
.motion-ready .home-product-card[data-reveal]{filter:none;transform:translateY(16px)}
.motion-ready .home-product-card[data-reveal].is-in{filter:none;transition:transform .6s var(--ease),opacity .6s var(--ease);transition-delay:calc(var(--reveal-order,0)*80ms)}
.motion-ready .rise-title .rise-line>span{filter:none}
.motion-ready .rise-title.is-in .rise-line>span{filter:none;transition:transform .8s var(--ease),opacity .6s var(--ease)}
.motion-ready .arch-reveal>img:not(.home-product-alt){filter:none}
.motion-ready .arch-reveal.is-in>img:not(.home-product-alt){filter:none;transition:opacity .6s var(--ease)}
.motion-ready .arch-reveal.is-in:after{transition-duration:.8s}
body.home-page .home-photo-composition:before{border:1px solid var(--line);background:var(--paper)}
body.home-page .home-inset-photo{width:30%;box-shadow:0 16px 32px rgba(68,49,30,.12)}
body.home-page .home-origin{overflow:clip}
body.home-page .home-origin-inner{align-items:start;gap:64px}
body.home-page .home-steps li{position:relative;padding:32px 16px;transition:background-color .3s var(--ease)}
body.home-page .home-steps li .home-step-no{transition:color .3s var(--ease)}
.motion-live:not(.motion-paused) body.home-page .home-steps li.is-current{background:rgba(243,237,228,.06)}
.motion-live:not(.motion-paused) body.home-page .home-steps li.is-current .home-step-no{color:#fff}
body.home-page .home-origin-media{min-height:560px}
body.home-page .home-origin-video{width:52%}
body.home-page .home-recipe h3{font-size:24px;line-height:32px}
body.home-page .home-recipe p{font-size:16px;line-height:24px}
body.home-page .home-recipe:hover img{transform:none}
@media(min-width:1101px) and (min-height:900px){
 body.home-page .home-origin-media{position:sticky;top:calc(var(--site-header-height,104px) + 24px)}
}
@media(max-width:1100px){body.home-page .home-origin-inner{gap:40px}body.home-page .home-origin-media{min-height:0}}
@media(max-width:760px){
 body.home-page .home-origin-inner{gap:24px}
 body.home-page .home-steps li{padding:24px 8px}
 body.home-page .home-origin-video{width:62%}
 body.home-page .home-inset-photo{width:30%;bottom:56px}
 body.home-page .home-service-link{font-size:20px;line-height:28px}
}
@media(prefers-reduced-motion:reduce){body.home-page .home-steps li{transition:none}}
/* Mobile-only shop photographs; the first frame also works without JavaScript. */
#home-photo{scroll-margin-top:calc(var(--site-header-height,118px) + 16px)}
body.home-page .home-shop-photo[data-mobile-photo-story]>img{position:absolute;inset:0;opacity:0;transition:opacity .8s var(--motion-opacity)}
body.home-page .home-shop-photo[data-mobile-photo-story]>img.is-current{opacity:1}
body.home-page .home-shop-photo[data-mobile-photo-story]>img[src$="hearth-gathering.jpg"]{object-position:center 85%}
@media(prefers-reduced-motion:reduce){body.home-page .home-shop-photo[data-mobile-photo-story]>img{transition:none}}
