/* One photographic object travels through a single sticky stage. Normal flow is
   the default, also used with reduced motion, short screens or a failed asset. */
.home{--paper:#fbfaf2;--ink:#233a32;--muted:#54665b;--claret:#164b3b;--dark:#103b31;--line:#c5cfb8;background:var(--paper)}
.home .site-header,.home .site-header.is-scrolled{min-height:88px;padding:17px 4%;background:#fbfaf2f7;border-color:#d2dac8;color:#164b3b}
.home .brand-name{font-size:1.65rem}.home .lb-cta{background:#164b3b;color:#fbfaf2}.home .lb-cta:hover{background:#103b31}
.meal-journey{position:relative;isolation:isolate;background:var(--paper)}
.journey-stage{max-width:1800px;margin:auto;position:relative;padding:65px 6.5% 30px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.journey-opening .eyebrow{color:#527149;margin-bottom:28px}
.journey-opening h1{font-size:clamp(3.4rem,6.1vw,7rem);line-height:1.03;letter-spacing:-.05em;margin-bottom:28px}
.journey-opening h1 em{color:#164b3b}
.journey-lead{font-size:1.0625rem;line-height:1.75;color:var(--muted);max-width:29rem!important;margin:0 0 29px}
.journey-signature{font:italic 1.2rem/1.5 var(--serif);color:#527149;margin-top:37px}
.journey-static{margin:0}.journey-static img{width:100%;height:auto}.journey-static figcaption{font-size:.875rem;color:var(--muted);margin-top:12px}
.journey-caption{padding:30px 0}.journey-caption .eyebrow{margin-bottom:23px}.journey-caption h2{font-size:clamp(2.6rem,5vw,5.6rem);margin-bottom:27px}.journey-caption>p:last-of-type{max-width:24rem;color:var(--muted);line-height:1.8}
.journey-scene{display:none}.journey-opening{grid-column:1;grid-row:1}.journey-static{grid-column:2;grid-row:1/3}.journey-caption{grid-column:1/-1;border-top:1px solid var(--line)}
.journey-credit{padding:16px 6.5%;font-size:.8125rem;color:var(--muted);text-align:right;line-height:1.6;max-width:none}
.journey-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:25px;border-top:1px solid var(--line);font-size:.875rem;color:var(--muted)}
.journey-footer>span{font-size:.75rem;letter-spacing:.1em}.journey-footer>a{display:flex;gap:22px;align-items:center;min-height:44px}
.journey-progress{list-style:none;display:flex;gap:28px;padding:0;margin:0;font-size:.875rem}.journey-progress li{position:relative;padding:10px 0}.journey-progress li::after{content:'';height:1px;background:#84775e;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .25s}.journey-progress li.is-current{color:var(--ink)}.journey-progress li.is-current::after{transform:scaleX(1)}
.journey-motion{height:380svh}.journey-motion .journey-stage{position:sticky;top:var(--journey-header,88px);height:calc(100svh - var(--journey-header,88px));min-height:520px;max-width:none;padding:0;display:block;overflow:hidden}
.journey-motion .journey-copy{position:absolute;left:6.5%;top:50%;width:40%;max-width:640px;transform:translateY(-50%);z-index:3;border:0;padding:0}
.journey-motion .journey-caption{opacity:0;visibility:hidden;pointer-events:none}
.journey-motion .journey-scene{display:block;position:absolute;inset:0;pointer-events:none;perspective:1400px;z-index:1}
.journey-atmosphere{position:absolute;top:0;bottom:0;left:49%;right:0;background:#164b3b;overflow:hidden;border-left:1px solid #164b3b26;will-change:opacity}
.journey-atmosphere img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 48%}
.journey-motion .journey-voyager{position:absolute;left:70%;top:46%;width:min(57vw,calc((100svh - var(--journey-header,88px) - 85px)*1.42),1000px);transform:translate(-50%,-50%);will-change:transform}
.journey-dish-tilt{position:relative;width:100%;aspect-ratio:1;transform:perspective(1400px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .35s ease-out;filter:drop-shadow(0 28px 20px #0b261d44)}
.journey-dish-tilt img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;will-change:opacity,transform}
.journey-box{opacity:0}.journey-fridge{position:absolute;width:min(55%,880px);aspect-ratio:4/3;left:44%;top:50%;transform:translateY(-50%);opacity:0;will-change:transform,opacity;overflow:hidden;border-radius:3px}
.journey-fridge img{display:block;width:100%;height:100%;object-fit:cover}
.journey-motion .journey-static{display:none}.journey-motion .journey-footer{position:absolute;left:6.5%;right:6.5%;bottom:20px;z-index:4;padding-top:12px;background:var(--paper)}
@media(min-width:1800px){.journey-motion .journey-copy{left:calc((100vw - 1800px)/2 + 117px)}.journey-motion .journey-voyager{left:70%}}
@media(max-height:800px) and (min-width:701px){.journey-signature{display:none}.journey-opening h1{margin-bottom:22px}.journey-motion .journey-opening .eyebrow{margin-bottom:22px}}
@media(max-width:950px){.home .site-header,.home .site-header.is-scrolled{min-height:80px;padding:12px 5%}.journey-opening h1{font-size:clamp(3rem,6vw,4.9rem)}.journey-progress{gap:18px}.journey-footer>span{display:none}}
@media(max-width:700px){
 .journey-stage{display:flex;flex-direction:column;gap:18px;padding:35px 6% 25px;align-items:stretch}.journey-opening h1{font-size:clamp(2.7rem,11.5vw,4.4rem);margin-bottom:20px}.journey-opening .eyebrow{font-size:.8125rem;margin-bottom:18px}.journey-lead{font-size:1rem;line-height:1.65;margin-bottom:22px}.journey-signature{margin-top:22px;font-size:1.1rem}.journey-static{margin:10px -6.818% 15px}.journey-static figcaption{margin-inline:6%}.journey-caption h2{font-size:2.9rem}.journey-footer{gap:10px}.journey-footer>a{font-size:.8125rem;gap:12px}.journey-progress{font-size:.8125rem;gap:18px}
 .journey-motion{height:330svh}.journey-motion .journey-stage{min-height:560px}.journey-motion .journey-copy{top:26px;left:6%;width:88%;max-width:560px;transform:none}.journey-motion .journey-opening h1{font-size:clamp(2.65rem,10.8vw,3.75rem);margin-bottom:18px}.journey-motion .journey-lead{max-width:26rem!important;font-size:.9375rem;margin-bottom:18px}.journey-motion .journey-signature{display:none}.journey-motion .lb-cta{min-height:48px;padding:12px 17px;font-size:.9375rem}.journey-motion .lb-hero-shortcuts{margin-top:10px;gap:22px;font-size:.8125rem}.journey-motion .journey-voyager{width:100vw;left:53%;top:71%;max-width:560px}.journey-motion .journey-dish-tilt{filter:drop-shadow(0 20px 15px #65503720)}.journey-motion .journey-fridge{width:94%;left:3%;top:68%;max-height:59%;aspect-ratio:4/3}.journey-motion .journey-caption h2{font-size:3.05rem;margin-bottom:19px}.journey-motion .journey-caption .eyebrow{font-size:.8125rem;margin-bottom:18px}.journey-motion .journey-caption>p:last-of-type{max-width:22rem;line-height:1.6}.journey-motion .journey-caption .lb-link{margin-top:14px;font-size:.9375rem;min-height:40px}.journey-motion .journey-footer{left:6%;right:6%;bottom:10px;background:linear-gradient(transparent,var(--paper) 40%);padding-top:14px}
}
.home .lb-intro{padding-block:100px}.home .lb-intro-copy .lb-lead{margin-bottom:24px}
.home .lb-week{background:#f0ece3;padding-block:85px;overflow:clip}.home .lb-week .lb-section-heading{margin-bottom:25px}.home .lb-week>.lb-small{text-align:center;margin-top:42px}
.week-meals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;perspective:1100px}
.week-meal{margin:0;will-change:transform;transform:translate3d(var(--week-x,0px),var(--week-y,0px),0) rotate(var(--week-rotate,0deg))}
.week-meal img{width:100%;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 18px 14px #67543e14)}
.week-meal figcaption{text-align:center;border-top:1px solid #d7cfc1;padding-top:25px}.week-meal figcaption>span{font-size:.8125rem;color:var(--muted)}.week-meal h3{font-size:2.1rem;margin:12px 0}.week-meal p{font-size:.9375rem;color:var(--muted)}
.home .lb-story{background:var(--paper);color:var(--ink)}.home .lb-story em{color:var(--claret)}.home .lb-story-heading .eyebrow{color:var(--muted)}.home .lb-story-heading>p{color:var(--muted)}
.home .lb-story .story-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:0 6.5%}
.home .lb-story .story-chapter{display:block}.home .lb-story .story-copy{padding:30px 0 40px}.home .lb-story .story-copy h3{font-size:clamp(1.85rem,2.65vw,3rem);margin-block:22px}.home .lb-story .story-copy>p:not(.eyebrow){color:var(--muted)}.home .lb-story .lb-step{color:#8d7860;border-color:var(--line)}.home .lb-story-close{border-color:var(--line)}.home .lb-story-close p{color:var(--muted)}
.home .signature-visual{display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center;margin-bottom:60px}.home .signature-visual .lb-photo{aspect-ratio:4/3}.signature-visual>div>p:not(.eyebrow){font:400 clamp(2.2rem,3.6vw,4rem)/1.15 var(--serif);letter-spacing:-.035em;margin:24px 0}.signature-visual>div>span{display:block;color:var(--muted);font-size:1rem}.signature-visual .lb-link{font-size:.9375rem}
.home .lb-formula-featured{background:#efeadf}.home .lb-stay{background:#eee9df}.home .lb-stay>.lb-photo{min-height:0;align-self:center;aspect-ratio:4/3}
.home .lb-gallery{padding-top:120px}.home .lb-gallery .meal-track{display:flex;flex-direction:column;gap:95px}
.home .lb-gallery .meal-slide:nth-child(n){display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:9%;padding:0}
.home .lb-gallery .meal-slide:nth-child(even){grid-template-columns:1fr 1.5fr}.home .lb-gallery .meal-slide:nth-child(even) .meal-photo-open{order:2}
.home .lb-gallery .meal-photo-open{perspective:1200px;overflow:visible}.home .lb-gallery .meal-photo-open img{transition:transform .5s,filter .5s;transform-origin:50% 60%;filter:drop-shadow(0 16px 20px #493b2010)}
.home .lb-gallery .meal-slide figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:0;border:0}.home .lb-gallery .meal-slide h3{font-size:clamp(2.4rem,3.5vw,4.1rem);line-height:1.12}.home .lb-gallery .meal-slide figcaption>span{order:-1;border-top:1px solid #b4a48f;width:45px;padding-top:16px}.home .lb-gallery .meal-slide figcaption>p{font-size:1rem;color:var(--muted);line-height:1.75}.home .lb-gallery .meal-slide figcaption>small{font-size:.8125rem;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.home .lb-photo-disclosure{border-top:1px solid var(--line);padding-top:24px;margin-top:70px}
.home .lb-private{background:#e7e1d6;color:var(--ink)}.home .lb-private .eyebrow,.home .lb-private em{color:var(--claret)}.home .lb-private-services,.home .lb-private-services>div{border-color:#cbbfad}.home .lb-private-services p,.home .lb-private .lb-small{color:#716557}.home .lb-private .lb-cta{background:#4e493c;color:#fffdf8}.home .lb-contact{background:#efe9de}
@media(hover:hover) and (pointer:fine){.home .lb-gallery .meal-photo-open:hover img{transform:perspective(1200px) rotateY(-2deg) rotateX(1deg) scale(1.025);filter:drop-shadow(0 22px 22px #493b2020)}.home .signature-visual img,.home .lb-stay>.lb-photo img{transition:transform .6s}.home .signature-visual:hover img,.home .lb-stay>.lb-photo:hover img{transform:scale(1.02)}}
@media(max-width:950px){.home .lb-story .story-chapters{gap:22px}.home .lb-story .story-copy .eyebrow{font-size:.75rem}.home .lb-story .lb-step{padding-right:10px;margin-right:10px}.home .signature-visual{gap:6%}.home .lb-gallery .meal-track{gap:60px}.home .lb-gallery .meal-slide:nth-child(n){gap:6%}}
@media(max-width:700px){.home .lb-intro{padding-block:65px}.home .lb-week{padding-block:55px}.week-meals{gap:12px}.week-meal figcaption{padding-top:18px}.week-meal h3{font-size:1.3rem}.week-meal p{font-size:.8125rem}.week-meal figcaption>span{font-size:.75rem}.home .lb-week>.lb-small{margin-top:28px;font-size:.8125rem}.home .lb-story .story-chapters{grid-template-columns:1fr;padding:0}.home .lb-story .story-copy{padding:30px 6% 45px}.home .lb-story .story-copy h3{font-size:2.25rem}.home .signature-visual{grid-template-columns:1fr;gap:30px;margin-bottom:38px}.home .signature-visual>div>p:not(.eyebrow){font-size:2.65rem;margin:18px 0}.home .lb-gallery{padding-top:65px}.home .lb-gallery .meal-slide:nth-child(n){display:flex;flex-direction:column;gap:28px;align-items:stretch}.home .lb-gallery .meal-slide:nth-child(even) .meal-photo-open{order:0}.home .lb-gallery .meal-slide figcaption{gap:14px}.home .lb-gallery .meal-slide h3{font-size:2.4rem}.home .lb-gallery .meal-track{gap:60px}.home .lb-photo-disclosure{margin-top:45px}.home .lb-stay h2{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){.journey-dish-tilt,.journey-progress li::after{transition:none!important}.journey-motion{height:auto}.journey-motion .journey-stage{position:relative;top:auto;height:auto;min-height:0}.journey-scene{display:none!important}.week-meal,.home .lb-gallery .meal-photo-open:hover img{transform:none!important}}

/* Forest green, ivory and fresh botanical accents. */
.home .journey-progress li::after{height:2px;background:var(--claret)}
.home .journey-progress li.is-current{color:var(--claret)}
.home .journey-motion .journey-footer{left:0;right:0;bottom:0;padding:10px 6.5%;background:var(--paper);border-top:1px solid var(--line)}
.home .journey-credit{background:#eaf0df;color:#4b6253}
.home .lb-week{background:#e3ead5}
.week-meal figcaption{border-color:#b5c6a5}.week-meal h3{color:var(--claret)}
.home .lb-story{background:#164b3b;color:#fbfaf2}
.home .lb-story em{color:#d7e79b}
.home .lb-story-heading .eyebrow,.home .lb-story .story-copy .eyebrow{color:#dce6bc}
.home .lb-story-heading>p,.home .lb-story .story-copy>p:not(.eyebrow),.home .lb-story-close p{color:#e3ebd9}
.home .lb-story .lb-step{color:#d7e79b;border-color:#7f9b83}
.home .lb-story-close{border-color:#789580}
.home .lb-formula-featured{background:#164b3b;color:#fbfaf2;border-color:#164b3b}
.home .lb-formula-featured p,.home .lb-formula-featured .lb-formula-number{color:#e3ebd9}
.home .lb-formula-featured:hover{background:#103b31}
.home .lb-formula:not(.lb-formula-featured):hover{background:#eaf0df}
.home .lb-stay{background:#e4eacb}
.home .lb-gallery .meal-slide figcaption>span{color:#527149;border-color:#789764}
.home .lb-gallery .meal-slide h3{color:#164b3b}
.home .lb-private{background:#103b31;color:#fbfaf2}
.home .lb-private .eyebrow,.home .lb-private em{color:#d7e79b}
.home .lb-private-services,.home .lb-private-services>div{border-color:#789580}
.home .lb-private-services p,.home .lb-private .lb-small{color:#e3ebd9}
.home .lb-private .lb-cta{background:#d7e79b;color:#103b31}
.home .lb-private .lb-cta:hover{background:#e6f2bc}
.home .lb-contact{background:#164b3b;color:#fbfaf2}
.home .lb-contact em,.home .lb-contact>.eyebrow{color:#d7e79b}
.home .lb-contact .lb-cta{background:#fbfaf2;color:#164b3b}
.home .lb-contact .lb-cta:hover{background:#eaf0df}
.home .lb-contact-row{border-color:#789580}
.home .lb-footer{background:#fbfaf2;color:#164b3b}
.home a:focus-visible,.home button:focus-visible,.home summary:focus-visible{outline-color:#527149}
.home .lb-story a:focus-visible,.home .lb-private a:focus-visible,.home .lb-contact a:focus-visible{outline-color:#d7e79b}
@media(max-width:700px){
 .journey-atmosphere{top:49%;left:0;right:0;bottom:0;border-left:0;border-top:1px solid #164b3b26}
 .journey-atmosphere img{object-position:50% 56%}
 .journey-motion .journey-voyager{width:min(96%,calc((100svh - var(--journey-header,88px))*.85 - 125px));left:50%;top:68%}
 .home .journey-motion .journey-footer{padding:8px 6%;background:var(--paper)}
 .journey-motion .journey-dish-tilt{filter:drop-shadow(0 21px 15px #0b261d44)}
}

/* Direct section links complement the complete menu on every screen size. */
html:has(body.home){scroll-padding-top:calc(var(--site-header-height,136px) + 16px)}
.home .site-header,.home .site-header.is-scrolled{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:auto auto;gap:10px 24px;padding:15px 4% 0;min-height:0;transition:background .25s}
.home .site-header:has(.mobile-menu[open]){background:var(--paper)}
.home .site-header>.brand{grid-column:2;grid-row:1;justify-self:center}
.home .site-header>.header-contact{grid-column:3;grid-row:1}
.home .site-header>.desktop-navigation{grid-column:1/-1;grid-row:2;display:flex;flex-wrap:wrap;justify-content:center;gap:0 36px;width:100%;border-top:1px solid var(--line);font-size:.9375rem}
.home .desktop-navigation>a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 0;white-space:nowrap}
.home .mobile-menu{display:block;grid-column:1;grid-row:1;justify-self:start}
.home .mobile-menu>summary{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-size:.875rem;list-style:none}
.home .mobile-menu>summary::-webkit-details-marker{display:none}
.home .mobile-menu>summary>span:last-child{display:inline}
.home .menu-lines{position:relative;display:block;width:20px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
.home .mobile-menu[open] .menu-lines{border-bottom:0;transform:translateY(6px) rotate(45deg)}
.home .mobile-menu[open] .menu-lines:after{content:'';position:absolute;top:-1px;left:0;width:20px;border-top:1px solid currentColor;transform:rotate(90deg)}
.home .mobile-menu>nav,.home .mobile-menu[open]>nav{position:absolute;top:100%;left:0;right:auto;min-width:310px;width:30%;max-height:calc(100dvh - var(--site-header-height,136px));overflow-y:auto;background:var(--paper);color:var(--ink);padding:16px 28px 24px;box-shadow:0 16px 24px #103b311a;border:1px solid var(--line)}
.home .mobile-menu[open]>nav{display:flex;flex-direction:column}
.home .mobile-menu>nav>a{font:400 1.5rem/1.5 var(--serif);padding:9px 0;border-bottom:1px solid var(--line)}
.home .mobile-menu>nav>a:hover{color:var(--claret);text-decoration:underline;text-underline-offset:5px}
@media(max-width:950px){
 .home .site-header,.home .site-header.is-scrolled{padding:12px 5% 0;gap:8px 12px}
 .home .site-header>.desktop-navigation{column-gap:24px;font-size:.875rem}
 .home .site-header .brand-name{font-size:1.6rem;white-space:nowrap}
 .home .site-header .brand-sub{font-size:.6rem;letter-spacing:.08em}
 .home .site-header>.header-contact{min-width:44px;min-height:44px;justify-content:center}
 .home .mobile-menu>nav,.home .mobile-menu[open]>nav{width:100%;min-width:0}
}
@media(max-width:700px){
 .home .site-header>.desktop-navigation{column-gap:12px}
 .home .site-header .brand-name{font-size:1.4rem}
 .home .mobile-menu>summary{gap:7px}
 .home .site-header>.header-contact>span{display:inline}
 .journey-motion .journey-stage{min-height:0}
}
@media(max-width:370px){
 .home .site-header,.home .site-header.is-scrolled{grid-template-columns:auto minmax(0,1fr) auto;column-gap:7px;padding-inline:4%}
 .home .site-header .brand-name{font-size:1.2rem}
 .home .site-header .brand-sub{font-size:.55rem;letter-spacing:.04em}
 .home .site-header>.desktop-navigation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:4px}
 .home .desktop-navigation>a:nth-child(3){grid-column:3/5}
 .home .desktop-navigation>a:nth-child(4){grid-column:1/3}
 .home .desktop-navigation>a:nth-child(5){grid-column:3/5}
 .journey-progress{gap:10px;font-size:.75rem}
 .journey-progress li{white-space:nowrap}
 .journey-footer>a{gap:8px;font-size:.75rem;flex-shrink:0}
}
@media(max-width:700px) and (max-height:740px){
 .journey-motion .journey-copy{top:16px}
 .journey-motion .journey-opening .eyebrow{margin-bottom:10px}
 .journey-motion .journey-opening h1{font-size:2.05rem;margin-bottom:10px}
 .journey-motion .journey-lead{font-size:.875rem;line-height:1.5;margin-bottom:12px}
 .journey-motion .lb-cta{min-height:44px;padding-block:10px}
 .journey-motion .lb-hero-shortcuts{margin-top:8px;gap:16px}
 .journey-motion .journey-caption h2{font-size:2.5rem;margin-bottom:14px}
 .journey-motion .journey-caption .eyebrow{margin-bottom:12px}
 .journey-motion .journey-caption>p:last-of-type{font-size:.9375rem}
 .journey-atmosphere{top:55%}
}
