:root{--ink:#503b31;--brown:#674638;--rose:#b8755d;--peach:#f1c6ad;--light:#fffaf4;--cream:#fff3e7;--butter:#fbe6cf;--border:#ead8c9;--shadow:0 24px 74px rgba(86,51,33,.10)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:75px}
body{margin:0;background:var(--light);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}
img{display:block;max-width:100%}
a:focus-visible,button:focus-visible{outline:3px solid #a95e42;outline-offset:4px}
[hidden]{display:none!important}
.shell{width:min(calc(100% - 42px),1080px);margin-inline:auto}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-weight:600;letter-spacing:-.055em}
h1 em,h2 em,h3 em,.moments em{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-style:italic;color:var(--rose);letter-spacing:-.07em}
.skip-link{position:absolute;top:-100px;left:10px;padding:12px;background:#fff;z-index:100}.skip-link:focus{top:10px}
.ribbon{background:#f1cfb6;color:#664537;height:32px;display:flex;gap:16px;align-items:center;justify-content:center;font-weight:700;font-size:11px;letter-spacing:.11em}
.ribbon span{color:#ae6d4f}
.header{height:82px;background:#fffdf8;box-shadow:0 3px 20px rgba(75,49,36,.035);position:relative;z-index:2}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{display:inline-flex;flex-direction:column;line-height:1;min-width:125px}
.brand-text{font-family:Georgia,serif;font-size:50px;font-weight:700;font-style:italic;letter-spacing:-.095em;color:#8e614c;line-height:.76}
.brand-text span{color:#db9271}
.brand-sub{font-size:9px;letter-spacing:.185em;margin-top:9px;color:#896b5b;font-weight:800}
.header-site{font-size:12px;font-weight:800;color:#92634e;border-bottom:1px solid #c99d89;padding:9px 0;display:inline-flex;gap:8px;align-items:center}
.header-site span{font-size:17px}
.hero{min-height:530px;position:relative;overflow:hidden;isolation:isolate;background:#c0a187}
.hero-art{position:absolute;inset:0;background:url('/assets/hero.jpg') center 51% /cover no-repeat;z-index:-2;filter:brightness(1.1) saturate(1.08)}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(56,35,29,.79),rgba(66,42,35,.65) 51%,rgba(66,42,35,.15)),linear-gradient(0deg,rgba(45,25,19,.19),transparent);z-index:-1}
.hero-inner{position:relative;display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:530px;padding:55px 0 63px}
.hero-copy{color:#fffcf6;max-width:690px}
.hero-eyebrow{color:#ffd6b2;font-size:11px;letter-spacing:.18em;font-weight:800}
.hero-eyebrow>span{margin:0 9px;color:#ffdba9}
.hero h1{font-size:clamp(51px,6.2vw,76px);line-height:1.15;margin:25px 0 25px;max-width:740px}
.hero h1 em{color:#ffe1b6}
.hero p{font-size:16px;line-height:1.85;max-width:560px;color:#fbecdd;margin-bottom:28px}
.hero-cta{background:#ffe5c9;display:inline-flex;gap:25px;align-items:center;justify-content:space-between;padding:16px 23px;font-size:13px;font-weight:800;color:#704b3a;transition:background .2s,transform .2s}
.hero-cta:hover{background:#fff1dd;transform:translateY(-2px)}
.hero-cta span{font-size:22px}
.hero-stamp{width:154px;height:154px;border-radius:50%;background:#ffe8d5;color:#a66e56;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transform:rotate(11deg);box-shadow:0 22px 35px rgba(50,30,18,.15);flex-shrink:0}
.hero-stamp span{font-size:9px;font-weight:800;letter-spacing:.14em}
.hero-stamp strong{font-size:35px;font-family:Georgia,serif}
.eyebrow{font-size:10px;letter-spacing:.16em;color:#ac745a;font-weight:850}
.hello{display:grid;grid-template-columns:100px 1fr;align-items:start;gap:25px;padding-block:95px}
.hello-symbol{font-size:68px;color:#d3a284;line-height:1}
.hello h2{font-size:clamp(34px,5.1vw,55px);line-height:1.22;margin:16px 0 22px}
.hello p:not(.eyebrow){max-width:750px;font-size:15px;color:#7d675a;line-height:1.9}
.menu-section{background:var(--cream);padding:87px 0 100px}
.menu-header{display:flex;justify-content:space-between;align-items:end;gap:40px;margin:16px 0 39px}
.menu-header h2{font-size:clamp(44px,5.4vw,68px);line-height:1.12;margin:0;flex:1}
.menu-header p{font-size:14px;line-height:1.85;color:#876e60;max-width:380px;margin:0}
.menu-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.tab{padding:14px 19px;color:#745447;border:1px solid #e4caba;background:#fff9f0;border-radius:30px;font-weight:800;font-size:13px;transition:background .2s,border-color .2s,transform .2s}
.tab span{padding-right:5px}
.tab:hover{transform:translateY(-1px);border-color:#c39379}
.tab.active,.tab[aria-selected=true]{background:#b7775d;border-color:#b7775d;color:#fff}
.menu-card{background:#fffdfa;display:grid;grid-template-columns:42% 58%;overflow:hidden;box-shadow:var(--shadow);border-radius:5px}
.menu-illustration{min-height:345px;background:#d8baa4}
.menu-illustration img{height:100%;width:100%;object-fit:cover}
.menu-info{padding:clamp(27px,5vw,55px);display:flex;flex-direction:column;justify-content:center}
.category-label{display:block;color:#b77a60;letter-spacing:.16em;font-size:10px;font-weight:800;margin-bottom:17px}
.menu-panel h3{font-size:clamp(31px,4vw,48px);line-height:1.19;margin:0 0 19px}
.menu-panel>p{font-size:15px;line-height:1.8;color:#80695e;max-width:480px}
.menu-pending{margin-top:34px;padding:20px;background:#fff1e5;border-left:3px solid #d5a087;display:flex;gap:16px;align-items:flex-start}
.pending-icon{color:#c18d70;font-size:22px;line-height:1}
.menu-pending strong{font-size:13px;display:block;color:#754e3f;margin-bottom:8px}
.menu-pending small{display:block;font-size:12px;line-height:1.6;color:#88695b}
.moments{background:#f6dac9;padding:62px 0;color:#6d4939;text-align:center}
.moments-inner>span{font-size:25px}
.moments p{font-size:clamp(31px,5.3vw,55px);font-weight:600;letter-spacing:-.05em;line-height:1.22;margin:14px 0 0}
.moments em{color:#ac674f}
.find-us{text-align:center;padding:93px 0 105px}
.find-us h2{font-size:clamp(41px,5.5vw,64px);line-height:1.16;margin:20px 0 27px}
.find-us>p:not(.eyebrow){font-size:16px;line-height:1.85;color:#866c5d;margin-bottom:30px}
.links{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap}
.button{background:#bd7a60;color:#fffaf6;font-size:13px;font-weight:800;display:inline-flex;justify-content:space-between;gap:26px;min-width:195px;padding:17px 21px}
.button:hover{background:#9a5e46}
.button span{font-size:19px}
.link{color:#9d644c;font-weight:800;font-size:14px;border-bottom:1px solid #c89c83;padding-bottom:8px}
.footer{background:#795346;color:#ffe8d5;padding:47px 0 33px}
.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;column-gap:30px;row-gap:30px}
.brand-footer .brand-text{color:#ffe9d4}
.brand-footer .brand-sub{color:#ead0bc}
.footer-inner>p:not(.fineprint){font-family:Georgia,serif;font-style:italic;font-size:18px;margin:0}
.fineprint{font-size:11px;line-height:1.7;opacity:.83;margin:0;width:100%;border-top:1px solid rgba(255,255,255,.22);padding-top:23px}
@media(max-width:800px){
.shell{width:min(calc(100% - 34px),1080px)}
.hero-stamp{display:none}
.hello{padding-block:70px;grid-template-columns:54px 1fr}
.hello-symbol{font-size:43px}
.menu-header{display:block}
.menu-header p{max-width:580px;margin-top:19px}
.menu-card{grid-template-columns:1fr}
.menu-illustration{height:280px;min-height:0}
.menu-info{padding:34px}
}
@media(max-width:520px){
.ribbon{font-size:9px;height:30px}
.header{height:76px}
.brand-text{font-size:43px}
.brand-sub{font-size:8px}
.header-site{font-size:11px}
.hero,.hero-inner{min-height:600px}
.hero-inner{padding:64px 0}
.hero h1{font-size:clamp(44px,11.8vw,61px)}
.hero h1 em{white-space:nowrap}
.hero p{font-size:15px}
.hello{display:block;padding:62px 0}
.hello-symbol{font-size:32px;margin-bottom:15px}
.hello h2{font-size:37px}
.hello p:not(.eyebrow){font-size:14px}
.menu-section{padding:67px 0 76px}
.menu-header h2{font-size:43px}
.menu-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tab{padding:12px 9px;font-size:11px;text-align:center;white-space:nowrap}
.menu-illustration{height:215px}
.menu-info{padding:25px 20px}
.menu-panel h3{font-size:34px}
.menu-panel>p{font-size:14px}
.menu-pending{padding:16px 13px;gap:11px}
.moments{padding:54px 0}
.find-us{padding:75px 0}
.find-us h2{font-size:43px}
.footer{padding:39px 0 27px}
.footer-inner{display:block}
.footer-inner>p:not(.fineprint){margin:25px 0}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
