/* A consistent two-column composition and restrained type scale. */
body{font-size:18px;line-height:1.7}
main{--content:1240px;--gutter:max(6%,calc((100% - var(--content))/2))}
main h1,main h2,main h3{letter-spacing:-.02em;font-family:var(--serif);font-weight:600;line-height:1.12}
main h1{font-size:clamp(52px,5.4vw,82px);max-width:620px}
main h2,main .contact-top h2,main .history h2,main .gathering h2{font-size:clamp(38px,3.5vw,54px);margin-bottom:24px;max-width:680px}
main h3,main .signature h3,main .editorial h3,main .dish-grid h3,main .timeline h3,main .family-note h3{font-size:32px;margin:0 0 18px;line-height:1.2}
main em{font-style:normal;font-weight:inherit;color:inherit}
main p,main .dish-grid p,main .timeline p,main .contact-grid p{font-size:18px;line-height:1.7}
main .eyebrow,main .label,main .dish-no{font-family:'DM Sans',Arial,sans-serif;font-size:14px;line-height:1.5;letter-spacing:1.3px;margin-bottom:18px}
.section{padding:80px var(--gutter)}
.hero{height:auto;min-height:620px;max-height:none;display:grid;grid-template-columns:1fr 1fr;background:var(--deep);padding:0}
.hero-content{grid-column:1;grid-row:1;padding:72px 9% 105px 12%;align-self:center}
.hero-img{position:relative;grid-column:2;grid-row:1;width:100%;height:100%;min-height:620px;object-fit:cover;object-position:center;z-index:0}
.hero-shade,.hero-side{display:none}.hero-description{max-width:440px}.hero-foot{left:6%;right:6%;z-index:1;background:var(--deep);padding:16px 0}
.ribbon{font-family:'DM Sans',Arial,sans-serif;font-size:17px;letter-spacing:.03em;padding:22px 6%}
.intro{grid-template-columns:240px 1fr;gap:60px}.intro-label{justify-content:flex-start;gap:28px}.since{font-size:70px}.intro-columns{grid-template-columns:1fr 1fr;gap:32px}.intro-columns p{margin-bottom:24px}
.section-heading,.history-heading{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:48px;margin-bottom:36px}.section-heading>p,.history-heading>p{max-width:none;margin-bottom:0}.section-heading h2{margin-bottom:0}
.kitchen>.section-heading{padding-bottom:0}.signature{margin:0 var(--gutter);grid-template-columns:1fr 1fr;align-items:stretch}
.signature .pig-gallery{align-self:start;width:100%;margin:0}.signature .pig-frame{aspect-ratio:4/3}.signature .pig-gallery figcaption{min-height:0;padding:20px 24px;font-size:16px}
.signature-copy{padding:36px}.signature .subline{font-family:'DM Sans',Arial,sans-serif;font-size:18px;line-height:1.7}.signature-copy p{margin-bottom:20px}
.dish-grid{gap:32px;padding-top:48px;padding-bottom:64px}.dish-grid h3{margin-top:18px}
.editorial{grid-template-columns:1fr 1fr;gap:40px}.travel-story{padding-top:0}.editorial figure,.farm-story figure,.travel-story figure{height:auto;aspect-ratio:4/3;margin:0 0 28px;overflow:hidden}.editorial figure img{object-fit:cover}.editorial article{min-width:0}.editorial p{max-width:60ch}
.gathering{grid-template-columns:1fr 1fr;align-items:stretch}.gathering figure{min-height:500px}.gathering>div{padding:64px 12%;align-self:center}.gathering img{object-fit:cover}
.press{grid-template-columns:1fr 1fr;gap:48px}.publication{font-family:'DM Sans',Arial,sans-serif;font-size:20px}.press-list a{grid-template-columns:1fr 1.2fr 20px}.press-list small{font-size:14px}
.social{grid-template-columns:1fr 1fr;gap:48px;align-items:center}.social figure{height:auto;aspect-ratio:4/3}.social>div>p:not(.eyebrow){max-width:none}
.history{padding-top:0}.timeline{gap:32px}.timeline .year{font-family:'DM Sans',Arial,sans-serif;font-size:24px;font-weight:600}.timeline h3{margin-top:18px}.family-note{grid-template-columns:1fr 2fr;gap:32px;padding:32px}
.contact-top{gap:40px}.contact-grid{gap:40px}.contact h3{font-size:26px}.phone{font-family:'DM Sans',Arial,sans-serif;font-size:30px}.text-link{font-size:16px}.reserve-circle{border-radius:8px;width:165px;height:110px;font-size:14px}
@media(max-width:1000px){.hero-content{padding:48px 9% 95px 12%}.hero,.hero-img{min-height:560px}.intro{grid-template-columns:1fr;gap:24px}.intro-label{display:block}.since{display:none}.signature-copy{padding:28px}.press{grid-template-columns:1fr}.section-heading,.history-heading{gap:32px}.gathering>div{padding:40px 9%}}
@media(max-width:760px){.section{padding:52px 6%}.hero{display:flex;flex-direction:column;min-height:0}.hero-content{padding:42px 6%;order:0}.hero-img{order:1;min-height:0;height:auto;aspect-ratio:4/3;object-fit:cover}.hero-foot{position:static;order:2;margin:0;padding:16px 6%;gap:14px}.hero h1{font-size:52px}.hero h1,.hero-description{max-width:none}.intro-columns,.section-heading,.history-heading,.signature,.editorial,.gathering,.social,.timeline,.family-note,.contact-grid{grid-template-columns:1fr}.section-heading,.history-heading{gap:16px;margin-bottom:28px}.signature{margin:0 6%}.signature-copy{padding:28px}.dish-grid{grid-template-columns:1fr;gap:28px}.editorial{gap:40px}.gathering figure{min-height:0;height:auto;aspect-ratio:4/3}.gathering>div{padding:40px 6%}.social{gap:28px}.history{padding-top:0}.contact-top{align-items:start;flex-direction:column;gap:12px}.reserve-circle{margin:0;width:180px;height:100px}.contact-top h2{margin-bottom:16px}main h3,main .signature h3,main .editorial h3,main .dish-grid h3{font-size:30px}.ribbon{font-size:16px}}

/* Preserve the whole dining party in the homepage photograph. */
.hero-img{height:auto;min-height:0;align-self:center;object-fit:contain;aspect-ratio:auto}

/* Kitchen-led cover: original photograph displayed through a clean crop. */
.hero{background:#191817;grid-template-columns:1fr 1.1fr}
.hero-content{padding-top:58px;padding-bottom:110px}
.hero .eyebrow{color:#d9b281}.hero h1{font-size:clamp(48px,5vw,76px)}
.hero-foot{background:#191817}
.hero-photo{grid-column:2;grid-row:1;align-self:center;margin:0;padding:36px 0 76px;min-width:0}
.hero-photo-frame{position:relative;overflow:hidden;width:100%;aspect-ratio:738/493;background:#171615}
.hero-photo-frame img{position:absolute;width:100%;height:324.54361%;max-width:none;top:-113.59027%;left:0;object-fit:fill}
.hero-photo figcaption{color:#c6c0b8;font:13px/1.5 'DM Sans',Arial,sans-serif;padding:10px 20px;text-align:right}
@media(max-width:760px){.hero-content{padding:42px 6%}.hero-photo{order:1;width:100%;padding:0}.hero h1{font-size:52px}.hero-foot{order:2}}
