/* Homepage photography: one continuous canvas, with a lower-left reading area. */
.food-home { --hero-header-height: 89px; }
.food-hero { position: relative; isolation: isolate; display: flex; align-items: flex-end; min-height: calc(100vh - var(--hero-header-height)); min-height: calc(100svh - var(--hero-header-height)); color: #fff; background: #20170e; padding: clamp(150px, 22vh, 240px) 0 clamp(40px, 6vh, 76px); }
.food-hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 65% center; z-index: -2; }
.food-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(12,9,5,.72), rgba(12,9,5,.36) 48%, rgba(12,9,5,0) 80%), linear-gradient(0deg, rgba(12,9,5,.67), transparent 78%); }
.food-hero-content { position: relative; }
.food-hero .food-hero-eyebrow { color: #fff; font-size: .875rem; font-weight: 600; letter-spacing: .1em; margin: 0 0 24px; }
.food-hero h1 { color: #fff; font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.1rem, 6.7vw, 6.6rem); line-height: 1.04; letter-spacing: -.045em; max-width: 850px; margin: 0 0 24px; font-weight: 400; }
.food-hero .food-hero-description { max-width: 510px; color: #fff; font-size: 1.125rem; line-height: 1.6; margin: 0 0 28px; text-wrap: pretty; }
.food-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 28px; }
.food-hero .button { border-radius: 3px; box-shadow: none; font-size: 1rem; min-height: 52px; text-transform: none; letter-spacing: 0; }
.food-hero-contact { display: inline-flex; align-items: center; min-height: 48px; font-size: 1rem; color: #fff; text-decoration: underline; text-underline-offset: 6px; }
.food-hero-contact:hover { color: #ffe185; }
.food-hero .food-hero-note { margin: 24px 0 0; font-size: .875rem; line-height: 1.6; color: #fff; max-width: 540px; }
@media (max-width: 900px) { .food-home { --hero-header-height: 89px; } .food-hero { padding-top: 160px; } }
@media (max-width: 600px) {
 .food-home { --hero-header-height: 77px; }
 .food-hero { padding-block: 130px 38px; }
 .food-hero-image { object-position: 65% center; }
 .food-hero::before { background: linear-gradient(0deg, rgba(12,9,5,.88), rgba(12,9,5,.53) 58%, rgba(12,9,5,.03) 100%); }
 .food-hero h1 { font-size: clamp(2.75rem, 11.5vw, 4rem); }
 .food-hero .food-hero-eyebrow { font-size: .875rem; letter-spacing: .04em; margin-bottom: 20px; }
 .food-hero .food-hero-description { font-size: 1rem; }
 .food-hero-actions { gap: 8px 24px; }
 .food-hero .food-hero-note { max-width: 310px; margin-top: 18px; }
}
