/* Premium editorial direction: forest, stone, espresso and brushed brass. */
.site-header{min-height:104px;border-color:var(--line)}
.site-header__brand{color:var(--green)}
.site-header__brand strong{font-style:normal;font-weight:700;letter-spacing:-1.8px}
.site-header__brand small{color:var(--muted)}
.site-header nav a:hover,.site-header nav button:hover{color:var(--red)}
.site-header__cart{border-color:var(--green);color:var(--green)}
.site-header__cart span{background:var(--green);color:var(--paper)}
.hero{padding-block:32px 64px;gap:clamp(30px,6vw,86px)}
.hero h1{color:var(--ink);font:500 clamp(45px,5.8vw,76px)/.99 var(--serif);letter-spacing:-.065em}
.hero h1 em{display:inline-block;color:var(--green);font-style:italic;font-weight:500;letter-spacing:-.07em}
.hero__copy>.eyebrow,.menu__head .eyebrow{color:var(--red)}
.hero__copy>p:not(.eyebrow):not(.hero__note){max-width:380px;font-size:15px;line-height:1.8}
.hero__actions{gap:22px}
.button{background:var(--green);border-color:var(--green);color:var(--paper);border-radius:3px;letter-spacing:.02em}
.button:hover:not(:disabled){background:#25392e;border-color:#25392e;color:var(--paper)}
.button--outline{background:transparent;color:var(--green)}
.button--outline:hover:not(:disabled){background:var(--green);border-color:var(--green);color:var(--paper)}
.hero__actions>a{color:var(--ink);border-color:var(--gold)}
.hero__copy>.hero__note{color:var(--muted)}
.hero__visual{height:500px;overflow:visible}
.hero__visual>img{width:100%;height:100%;object-fit:cover;object-position:72% center;mix-blend-mode:normal;border-radius:3px;box-shadow:0 24px 60px #3524161a}
.hero__visual figcaption{left:-26px;bottom:18px;background:var(--paper);border-color:var(--line);box-shadow:0 12px 35px #35241616;transform:rotate(-2deg);padding:15px 20px}
.hero__visual figcaption>.eyebrow{color:var(--red)}
.hero__visual figcaption>strong{font:700 22px var(--serif);color:var(--green)}
.hero__stamp{display:none}
.menu{border-color:var(--line);padding-top:58px}
.menu__head h2{font:500 clamp(32px,3.8vw,49px)/1.1 var(--serif);letter-spacing:-.045em;color:var(--ink)}
.menu__head>p{line-height:1.8}
.menu__filters button{background:transparent;border-color:var(--line);color:var(--muted);transition:all var(--motion)}
.menu__filters button:hover{border-color:var(--green);color:var(--green)}
.menu__filters button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:var(--paper)}
.menu__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.menu__card{background:var(--paper);border:1px solid var(--line);border-radius:3px;transition:transform var(--motion),box-shadow var(--motion)}
.menu__card:hover{transform:translateY(-3px);box-shadow:0 16px 34px #35241616}
.menu__photo{background:var(--sage)}
.menu__photo img{width:100%;height:260px;object-fit:cover;mix-blend-mode:normal;transition:transform 350ms ease}
.menu__photo:hover img{transform:scale(1.035)}
.menu__card-body>.eyebrow{color:var(--red);letter-spacing:.15em}
.menu__card h3{font:700 27px/1.1 var(--serif);letter-spacing:-.035em;color:var(--green)}
.menu__card-body>p{line-height:1.75;min-height:66px}
.menu__card-foot{border-color:var(--line)}
.menu__card-foot>span{color:var(--ink);font:700 21px var(--sans)}
.menu__card-foot button{border-color:var(--green);color:var(--green);border-radius:3px;transition:all var(--motion)}
.menu__card-foot button:hover{background:var(--green);color:var(--paper)}
.dialog__head h2{color:var(--green)}
.site-footer{border-color:var(--line)}
.site-footer__brand{font:700 28px var(--serif);color:var(--green)}
.site-footer>a{color:var(--red)}
.cart-feedback{position:fixed;z-index:20;top:18px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);margin:0;padding:12px 18px;border:1px solid var(--line);background:var(--paper);color:var(--green);box-shadow:0 12px 35px #35241620;font-size:13px;font-weight:700}
@media(max-width:850px){.hero__visual{height:400px}.menu__grid{gap:14px}.menu__photo img{height:220px}}
@media(max-width:650px){.hero{padding-top:22px;padding-bottom:42px}.hero__visual{height:335px}.hero__visual figcaption{left:8px}.menu__grid{grid-template-columns:1fr}.menu__photo img{height:300px}.menu__card h3{font-size:29px}.menu__card-body>p{min-height:0}}
