:root{--paper:#f3f1e9;--ink:#252722;--red:#9f3028;--muted:#6e7269;--line:#c6c7bc;--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.header{height:82px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #c8c9bf;position:absolute;z-index:20;inset:0 0 auto}.brand{font-size:31px;letter-spacing:-2.5px;font-weight:700}.brand span{color:var(--red)}.brand sup{font-size:9px;letter-spacing:0;margin-left:3px}.header nav{display:flex;gap:36px;font-size:11px;font-weight:600}.header-right{display:flex;align-items:center;gap:45px}.language{display:flex;gap:8px;align-items:center;color:#92958b;font-size:10px}.lang{border:0;background:none;color:#92958b;padding:7px 1px;cursor:pointer;font-size:10px;font-weight:700}.lang.active{color:var(--ink)}.header-link{font-size:11px;font-weight:700}.header-link b{font-size:17px;margin-left:25px}.panel{position:relative;overflow:hidden}.hero{padding:108px 5% 0;min-height:100vh;z-index:1}.hero-top,.hero-foot,.section-top,.section-bottom,.manifesto-bottom,footer{display:flex;justify-content:space-between;gap:25px;font-size:9px;letter-spacing:.11em;font-weight:700;line-height:1.5}.hero-top,.hero-foot{color:#7e8178}.hero-content{padding:clamp(75px,8vw,130px) 0 45px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.14em}.eyebrow>span:first-child{color:var(--red);font-size:20px;vertical-align:middle;margin-right:8px}h1,h2,h3,p{margin:0}h1{font-size:clamp(72px,9.3vw,150px);line-height:.9;letter-spacing:-.078em;font-weight:500;margin:30px 0 35px}em{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}h1 em{font-size:1.12em}h1>span{color:var(--red)}.hero-row{display:flex;justify-content:space-between;align-items:end}.hero-row p{max-width:340px;font-size:13px;line-height:1.7;color:var(--muted)}.round-arrow{width:54px;height:54px;display:grid;place-items:center;border:1px solid #9b9e93;border-radius:50%;font-size:22px;transition:.25s}.round-arrow:hover{background:var(--ink);color:white}.hero-photo{height:clamp(370px,43vw,680px);background:#ac9786 url('hero.webp') center 52%/cover;position:relative;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(36,25,19,.25),transparent 50%)}.photo-caption{position:absolute;bottom:25px;left:25px;font-size:9px;color:white;font-weight:700;letter-spacing:.1em}.seal{position:absolute;right:30px;top:30px;width:65px;height:65px;border:1px solid #fff9;border-radius:50%;display:grid;place-items:center;color:white;font-size:23px}.seal span{position:absolute;font-size:9px;top:12px;right:12px}.photo-title{position:absolute;right:5%;bottom:10%;color:#fff8ed;font-size:clamp(38px,5vw,75px);line-height:.94;letter-spacing:-.06em}.photo-title em{font-size:1.14em}.hero-foot{padding:19px 0}.philosophy,.experience,.restaurants{padding:42px 5% 100px}.philosophy{background:#f3f1e9;z-index:2;min-height:90vh;display:flex;flex-direction:column;justify-content:space-between;border-radius:28px 28px 0 0;margin-top:-2px}.section-top,.section-bottom{border-top:1px solid var(--line);padding-top:16px;color:#73776d}.section-top span:last-child,.section-bottom span:last-child{text-align:right}.philosophy-grid{display:grid;grid-template-columns:.32fr 1fr;gap:7%;padding:110px 0}.large-number{font-family:var(--serif);font-size:clamp(95px,13vw,200px);color:#d8d9cf;line-height:.8;letter-spacing:-.08em}.large-number span{display:block;color:var(--red);font-family:var(--sans);font-size:27px;margin-top:35px}h2{font-size:clamp(55px,6.6vw,108px);line-height:.98;letter-spacing:-.07em;font-weight:500}h2 em{font-size:1.1em}.philosophy-main .eyebrow{color:var(--red);margin-bottom:30px}.intro-line{display:flex;gap:35px;margin:60px 0 0 31%;max-width:500px}.intro-line>span{color:var(--red);font-size:30px}.intro-line p,.restaurant-copy p{font-size:17px;line-height:1.7}.experience{background:#dfe2d7;z-index:3;border-radius:28px 28px 0 0}.experience-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:100px 0 70px}.experience-heading p{max-width:270px;font-size:13px;line-height:1.7;color:#5d6258}.experience-body{display:grid;grid-template-columns:1.15fr 1fr}.showcase{min-height:650px;background:#ae4939;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center}.showcase-head{position:absolute;inset:25px 25px auto;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.1em;font-weight:700;color:#f7e7d8}.showcase-orbit{border:1px solid #e7ab96;position:absolute;border-radius:50%;width:550px;height:550px;opacity:.5}.orbit-two{width:420px;height:420px}.phone{z-index:1;background:#f6f4eb;width:245px;min-height:460px;padding:16px;border:6px solid #282823;border-radius:28px;box-shadow:0 25px 65px #49251e55;transform:rotate(-5deg)}.phone-bar{display:flex;justify-content:space-between;font-size:13px;margin-bottom:25px}.phone-bar b{letter-spacing:-1px}.phone-bar b span{color:var(--red)}.phone-hero{background:#d9cdb9;padding:25px 15px;min-height:190px}.phone-hero>span,.phone-hero small{display:block;font-size:6px;letter-spacing:.09em;font-weight:700}.phone-hero strong{display:block;font-size:30px;line-height:1;letter-spacing:-.07em;font-weight:500;margin:26px 0}.phone-hero i,.scribble i{font-family:var(--serif);font-weight:400}.phone-info{display:flex;justify-content:space-between;font-size:6px;letter-spacing:.08em;font-weight:700;margin:22px 0 8px}.menu-line{border-top:1px solid #c9c9bf;padding:11px 0;display:flex;justify-content:space-between;font-size:9px}.demo{font-size:6px;color:#999;letter-spacing:.08em;margin-top:10px}.scribble{position:absolute;right:5%;bottom:12%;font-family:var(--serif);font-size:40px;line-height:.85;color:#f4d7c5;transform:rotate(-12deg)}.showcase-bottom{position:absolute;left:25px;bottom:22px;color:#f7e7d8;font-size:9px;letter-spacing:.1em}.experience-list{padding:0 0 0 13%;display:flex;flex-direction:column;justify-content:center}.experience-list>div{border-top:1px solid #acb0a3;padding:30px 0 42px;display:grid;grid-template-columns:55px 1fr;gap:12px}.experience-list>div>span{font-size:10px;color:var(--red);font-weight:700}.experience-list h3{font-size:30px;letter-spacing:-.06em;font-weight:500}.experience-list p{grid-column:2;font-size:13px;line-height:1.7;color:#62675e;max-width:300px}.manifesto{background:#812d28;color:#f8efe3;z-index:4;border-radius:28px 28px 0 0;padding:42px 5% 30px;min-height:95vh;display:flex;flex-direction:column;justify-content:space-between}.manifesto .section-top{border-color:#b37a72;color:#ead0c6}.manifesto-content{position:relative;padding:90px 0}.manifesto-content>p{font-size:10px;letter-spacing:.12em;font-weight:700;margin-bottom:35px}.manifesto h2{font-size:clamp(68px,9vw,145px);line-height:.95}.star-large{position:absolute;right:3%;top:0;font-size:clamp(100px,15vw,220px);font-weight:400;color:#a64e44}.manifesto-bottom{border-top:1px solid #b37a72;padding-top:17px}.restaurants{background:#f3f1e9;z-index:5;border-radius:28px 28px 0 0}.restaurant-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;padding:120px 0 90px}.restaurant-grid .eyebrow{color:var(--red);margin-bottom:34px}.restaurant-copy{padding-top:55px}.text-link{display:flex;justify-content:space-between;max-width:260px;border-bottom:1px solid var(--ink);padding:0 0 15px;margin-top:45px;font-size:12px;font-weight:700}.path-block{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 0;display:flex;justify-content:space-between;align-items:center;margin-bottom:90px}.path-block>div>span{font-size:9px;letter-spacing:.1em;font-weight:700;color:var(--muted)}.path-block p{font-size:clamp(25px,4vw,60px);letter-spacing:-.06em;margin-top:20px}.path-block p span{color:var(--red)}.path-symbol{font-size:38px}.section-bottom span:last-child{color:var(--red);font-size:20px}.contact{background:#dce0d4;z-index:6;border-radius:28px 28px 0 0;padding:42px 5% 0;min-height:85vh;display:flex;flex-direction:column}.contact-main{padding:110px 0;position:relative;z-index:1}.contact h2{margin:28px 0}.contact-main>p:not(.eyebrow){font-size:14px;color:#62665d;line-height:1.65;max-width:370px}.contact-button{display:flex;justify-content:space-between;background:var(--ink);color:white;padding:19px 22px;margin-top:35px;font-size:12px;width:210px}.contact-button:hover{background:var(--red)}.contact small{display:block;margin-top:12px;font-size:10px;color:#777}.contact-mark{position:absolute;right:7%;bottom:60px;font-size:clamp(220px,35vw,520px);font-weight:700;line-height:.7;letter-spacing:-.15em;color:#c6cbbf}.contact-mark span{color:#b2b9ab}footer{border-top:1px solid #afb5a8;padding:28px 0;align-items:end;position:relative;z-index:2;margin-top:auto}footer .brand{font-size:25px}a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:5px}@media(min-width:761px) and (prefers-reduced-motion:no-preference){.hero,.philosophy,.manifesto{position:sticky;top:0}.panel{box-shadow:0 -14px 45px #191b1512}.hero-photo{background-attachment:fixed}.reveal{opacity:0;transform:translateY(50px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.phone{transition:transform 1s cubic-bezier(.2,.7,.2,1)}.experience.in-view .phone{transform:rotate(0deg)}}@media(max-width:760px){.header{height:70px;padding:0 6%}.header nav{display:none}.header-right{gap:20px}.header-link b{margin-left:8px}.brand{font-size:26px}.hero{padding:96px 6% 0}.hero-top span:last-child{display:none}.hero-content{padding:75px 0 35px}h1{font-size:clamp(58px,12vw,89px);margin:24px 0 30px}.hero-row p{font-size:13px;max-width:250px}.round-arrow{height:44px;width:44px;flex-shrink:0}.hero-photo{height:430px}.photo-title{font-size:42px}.hero-foot span:last-child{display:none}.philosophy,.experience,.restaurants{padding:35px 6% 80px}.philosophy,.experience,.manifesto,.restaurants,.contact{border-radius:20px 20px 0 0;margin-top:-15px}.philosophy-grid{grid-template-columns:1fr;padding:85px 0;gap:45px}.large-number{font-size:90px}.large-number span{display:inline-block;margin-left:20px}.intro-line{margin:40px 0 0;gap:18px}.intro-line p,.restaurant-copy p{font-size:16px}.experience-heading{display:block;padding:85px 0 40px}.experience-heading p{margin-top:25px}.experience-body{grid-template-columns:1fr}.showcase{min-height:560px}.showcase-orbit{width:390px;height:390px}.orbit-two{width:300px;height:300px}.experience-list{padding:50px 0 0}.manifesto{min-height:650px;padding:35px 6% 25px}.manifesto h2{font-size:clamp(58px,11vw,90px)}.star-large{top:-40px}.restaurant-grid{grid-template-columns:1fr;gap:35px;padding:90px 0 70px}.restaurant-copy{padding:0}.path-block{margin-bottom:60px}.path-block p{overflow-wrap:anywhere}.contact{padding:35px 6% 0;min-height:700px}.contact-main{padding:100px 0}.contact-mark{right:0;bottom:70px;opacity:.55;font-size:200px}footer{display:grid;grid-template-columns:1fr 1fr}footer>span:nth-child(2){display:none}footer>span:last-child{text-align:right}footer>a:not(.brand){grid-row:2}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){.hero,.philosophy,.manifesto{position:sticky;top:0}.panel{box-shadow:0 -10px 32px #191b1510}.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}}
/* Full-bleed opening: the photograph and copy form a single composition. */
.header{color:#fffaf1;border-bottom-color:#ffffff55}
.header .brand span{color:#f5b7a4}.header .lang{color:#ffffff9c}.header .lang.active{color:#fff}.header a:hover,.header button:hover{color:#f5b7a4}
.hero{padding:0;min-height:100svh;overflow:visible}
.hero-photo{height:100svh;min-height:680px;background-position:center 52%;background-attachment:scroll!important;color:#fffaf1;display:flex;flex-direction:column;padding:110px 5% 27px}
.hero-overlay{background:linear-gradient(90deg,rgba(38,25,19,.76) 0%,rgba(44,29,23,.50) 42%,rgba(42,27,21,.10) 100%),linear-gradient(0deg,rgba(32,22,17,.35),transparent 28%);pointer-events:none}
.hero-top,.hero-content,.hero-foot{position:relative;z-index:1}
.hero-top,.hero-foot{color:#fffdf1d9}
.hero-content{padding:0;display:flex;flex-direction:column;justify-content:center;flex:1;align-items:flex-start}
.hero-content .eyebrow>span:first-child{color:#f1a995}
.hero h1{font-size:clamp(64px,8.1vw,132px);margin:28px 0 28px;text-shadow:0 2px 26px #2b181f33}
.hero h1>span{color:#f3ae98}
.hero-row{width:min(600px,100%);align-items:center;gap:30px}
.hero-row p{color:#fff9ed;max-width:340px;font-size:14px;text-shadow:0 1px 12px #1c140f99}
.hero .round-arrow{border-color:#fffaf1a8;color:white;flex-shrink:0}.hero .round-arrow:hover{background:#fffaf1;color:#262822}
.hero-foot{padding:0}
@media(min-width:761px){.philosophy,.manifesto{position:relative!important}.hero{position:sticky;top:0}.hero-photo{min-height:0}.philosophy{min-height:100svh}.manifesto{min-height:100svh}}
@media(max-width:760px){.header{color:#fffaf1}.hero{padding:0}.hero-photo{height:100svh;min-height:620px;padding:100px 6% 28px;background-position:60% center}.hero-overlay{background:linear-gradient(90deg,rgba(37,24,19,.7),rgba(37,24,19,.24)),linear-gradient(0deg,rgba(28,20,17,.48),transparent 45%)}.hero-content{padding:0}.hero h1{font-size:clamp(50px,10.7vw,76px);margin:24px 0}.hero-row p{font-size:13px;max-width:250px}.hero-foot span:last-child{display:block;font-size:8px}.philosophy,.manifesto{position:relative!important}.philosophy{min-height:0}.manifesto{min-height:80svh}}
@media(max-height:700px) and (min-width:761px){.hero-photo{padding-top:96px}.hero h1{font-size:clamp(54px,7.3vw,95px);margin:18px 0}.hero-content .eyebrow{font-size:9px}}
/* Keep each card's full content scrollable before the next card covers it. */
.header{position:fixed;transition:height .45s cubic-bezier(.22,1,.36,1),background .45s ease,color .35s ease,box-shadow .45s ease,border-color .35s ease;will-change:height;z-index:100}
.header.is-scrolled{height:58px;background:rgba(243,241,233,.94);color:var(--ink);border-bottom-color:#c8c9bf;box-shadow:0 6px 26px #25272212;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.header.is-scrolled .brand{font-size:25px;letter-spacing:-2px}.header .brand{transition:font-size .45s cubic-bezier(.22,1,.36,1),letter-spacing .45s ease}.header.is-scrolled .brand span{color:var(--red)}.header.is-scrolled .lang{color:#8b8e84}.header.is-scrolled .lang.active{color:var(--ink)}.header.is-scrolled a:hover,.header.is-scrolled button:hover{color:var(--red)}
@media(prefers-reduced-motion:no-preference){
 main>.panel:not(.contact){position:sticky!important;top:var(--sticky-top,0px);overflow:clip}
 main>.panel:not(.hero){margin-top:-28px;border-radius:28px 28px 0 0;box-shadow:0 -12px 36px rgba(28,30,25,.09)}
 .hero{z-index:1}.philosophy{z-index:2}.experience{z-index:3}.manifesto{z-index:4}.restaurants{z-index:5}.contact{z-index:6}
 .reveal{transition:opacity .9s ease,transform .9s cubic-bezier(.22,1,.36,1)}
}
@media(max-width:760px){.header.is-scrolled{height:54px}.header.is-scrolled .brand{font-size:23px}.hero-photo{height:auto;min-height:100svh}.hero-content{padding:70px 0}.hero-foot{gap:10px}.hero-top,.hero-foot{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){.header{transition:none}}
[id]{scroll-margin-top:70px}
/* A quieter editorial treatment with room for the photography and copy. */
main>.panel:not(.hero) .section-top,main>.panel:not(.hero) .section-bottom,.showcase-head,.showcase-bottom,.manifesto-bottom,.manifesto-content>p,.restaurant-grid .eyebrow,.philosophy-main .eyebrow,.contact-main .eyebrow{display:none}
.hero h1{max-width:1000px}.hero-content{gap:0}.hero h1{margin:0 0 34px}.hero h1>span{display:none}
.philosophy-grid{grid-template-columns:.25fr 1fr;align-items:start}.idea-index{font-family:var(--serif);color:#c1c3b7;font-size:clamp(90px,12vw,180px);line-height:.8;letter-spacing:-.06em}
.intro-line{margin-left:31%}.intro-line p{max-width:470px}
.experience-heading{padding-top:90px}.experience-list>div{display:block;padding:29px 0 34px}.experience-list h3{font-size:25px;margin-bottom:12px}.experience-list p{max-width:320px}
.showcase{background:#b65d4c}.showcase .phone{box-shadow:0 25px 55px #49251e2b}
.manifesto{background:#79352f}.manifesto-content{padding:110px 0}.manifesto h2{font-size:clamp(65px,8vw,130px)}
.restaurant-grid{padding-top:100px}.path-block{background:#e4e5db;border:0;padding:38px 35px}.path-block p{font-size:clamp(25px,3.3vw,48px)}
.contact{background:#dfe2d8}.contact-mark{opacity:.45}
@media(max-width:760px){.hero h1{font-size:clamp(51px,10vw,74px)}.philosophy-grid{grid-template-columns:1fr;gap:45px}.intro-line{margin:35px 0 0}.idea-index{font-size:90px}.restaurant-grid{padding-top:80px}.path-block{padding:28px 22px}.path-block p{font-size:clamp(23px,6vw,36px)}}
/* Product explanation: an editorial sequence, with the same layered motion. */
.hero-subhead{font-size:clamp(17px,1.6vw,23px);font-weight:600;letter-spacing:-.02em;margin:-8px 0 20px;text-shadow:0 1px 15px #1c140f88}
.hero-action{display:flex;align-items:center;gap:42px;border-bottom:1px solid #ffffffa8;padding:0 0 12px;color:#fff;font-size:12px;font-weight:700;white-space:nowrap}.hero-action span:last-child{font-size:18px}.hero-action:hover{border-color:#f5b7a4;color:#f5b7a4}
.how{background:#e9e7de;z-index:3;padding:130px 5% 110px}.experience{z-index:4}.manifesto{z-index:5}.restaurants{z-index:6}.contact{z-index:7}
.how-intro{display:grid;grid-template-columns:1fr 1.6fr 1fr;align-items:start;gap:35px}.section-kicker{font-size:9px;letter-spacing:.12em;font-weight:700;color:#7f8277}.how-intro h2{font-size:clamp(53px,5.6vw,90px)}.how-intro>p:last-child{font-size:14px;line-height:1.7;max-width:250px;padding-top:12px;color:#65695f}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:95px}.steps article{background:#f3f1e9;padding:24px 24px 32px;min-width:0}.step-number{font-family:var(--serif);font-size:24px;color:#85887e}.step-graphic{height:195px;display:flex;justify-content:center;align-items:center;position:relative;color:#9f3028}.qr-grid{width:80px;height:80px;background:repeating-conic-gradient(#30332c 0 25%,transparent 0 50%) 0 0/20px 20px;outline:10px solid #f3f1e9;box-shadow:0 0 0 1px #b9b9ae}.qr-graphic>span{position:absolute;right:25%;top:35px;font-size:25px}.menu-graphic>div,.order-graphic>div{height:140px;width:105px;border:1px solid #8c8f82;background:#e4e4d9;padding:29px 16px;position:relative}.menu-graphic i,.order-graphic i{display:block;height:1px;background:#9a9d91;margin-bottom:17px}.menu-graphic span{position:absolute;right:14px;bottom:13px;color:var(--red);font-size:24px}.order-graphic>div{height:120px;width:120px;background:#b65d4c;border:0}.order-graphic span{display:block;color:#fff;font-size:28px;margin-bottom:14px}.order-graphic i{background:#edd4ca}.steps h3{font-size:20px;letter-spacing:-.04em;font-weight:500}.steps p{font-size:13px;line-height:1.7;color:#65695f;margin-top:12px;max-width:290px}.concept-note{font-size:10px;color:#777b70;margin-top:18px}.experience-list>.section-kicker{margin-bottom:30px}.powered{font-size:10px;font-weight:500;letter-spacing:.02em}.powered strong{font-weight:700}.contact-button{width:240px}
@media(max-width:760px){.hero-subhead{font-size:16px;max-width:320px}.hero-row{align-items:flex-start;flex-direction:column;gap:25px}.hero-action{gap:48px}.how{padding:90px 6% 85px}.how-intro{display:block}.how-intro h2{margin:26px 0}.how-intro>p:last-child{padding:0}.steps{grid-template-columns:1fr;margin-top:55px;gap:2px}.steps article{display:grid;grid-template-columns:38px 1fr 90px;column-gap:14px;align-items:start;padding:25px 20px}.step-number{grid-row:1/4}.step-graphic{height:90px;grid-column:3;grid-row:1/4;transform:scale(.65);transform-origin:center}.steps h3,.steps p{grid-column:2}.steps h3{font-size:19px}.steps p{margin-top:8px}.experience-list>.section-kicker{margin-bottom:25px}footer .powered{grid-column:2;grid-row:2;text-align:right}}
@media(max-width:760px){.steps article{grid-template-columns:1fr 90px}.steps h3,.steps p{grid-column:1}.step-graphic{grid-column:2}}
.contact-main .contact-address{font-size:12px;margin-top:16px;color:#62665d}
