/* Astra menu: shared warm palette, legible prices, unchanged source menu data. */
:root{--bg:#f8f5ef;--bg-2:#efe9df;--bg-3:#fffcf7;--line:rgba(67,37,32,.16);--gold:#843943;--gold-soft:#9b414c;--cream:#32251f;--muted:#65594f;--ember:#ad4d39;--astra-bar:80px}
html{scroll-padding-top:calc(var(--astra-bar) + 78px)}
.wrap,.jump ul{max-width:1280px}.wrap{padding-left:clamp(22px,5vw,70px);padding-right:clamp(22px,5vw,70px)}
.bar{background:rgba(248,245,239,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.bar .wrap{padding-top:20px;padding-bottom:20px}.bar .brand .name{font-size:34px;letter-spacing:.08em;color:#642d34}.bar .brand .sub{font-size:9px;letter-spacing:.1em;color:var(--muted)}
.lang{gap:4px}.lang i{display:none}.lang button{padding:9px 8px;min-width:35px;min-height:40px;border-radius:6px;letter-spacing:0;font-size:12px}.lang button.active{background:#843943;color:#fff8ee}.callbtn{border-radius:7px;text-transform:none;letter-spacing:0;background:#843943;color:#fff8ee;min-height:42px}.callbtn:hover{background:#642d34;color:#fff8ee}
.jump{top:var(--astra-bar);background:rgba(239,233,223,.96);backdrop-filter:blur(14px)}.jump ul{padding:10px clamp(22px,5vw,70px);gap:9px}.jump a{border-radius:6px;letter-spacing:0;text-transform:none;font-size:13px;padding:9px 15px;min-height:42px;color:#655348}.jump a:hover{background:#fffaf3}
.phead{padding-top:54px;padding-bottom:35px}.phead h1{font-size:clamp(43px,6vw,76px);letter-spacing:-.035em;color:#642d34}.phead p{font-size:16px}.kicker{letter-spacing:.13em}.meta{font-size:11px;letter-spacing:0}
.srch{padding-top:23px}.srch input{background:#fffdf8;padding:15px 15px 15px 42px;font-size:16px;border-radius:9px}.srch .ic{font-size:25px}.srch input::placeholder{color:#85756b}.srch .cnt{font-size:12px}
.offers{gap:20px;margin-bottom:55px}.offer{border-radius:10px;background:#efe7dc;border:0;padding:27px}.offer .lab{font-size:10px;letter-spacing:.07em}.offer :is(h2,h3){font-size:30px}.offer .d{font-size:14px}.offer .v{font-size:32px;line-height:1.3}
section{padding-bottom:55px}.sec h2{font-family:var(--serif);font-size:32px;text-transform:none;letter-spacing:-.02em}.sec{margin-bottom:14px}.sec::after{background:var(--line)}.cols{gap:0 60px}.cols>div,.row>span:first-child{min-width:0}.row{padding:17px 0;border-color:var(--line)}.row .n{font-size:23px;line-height:1.4}.row .a{font-size:11px;letter-spacing:0}.row .p{font:500 16px/1.5 var(--sans);padding-top:4px;white-space:nowrap}.row .v,.row .note{font-size:14px}.colh{font-size:12px;letter-spacing:.04em}
.fcards{grid-template-columns:1fr}.fc{display:grid;grid-template-columns:170px 1fr;border-radius:10px;background:#eee4d9}.fc img{height:180px;aspect-ratio:auto;object-fit:cover}.fb{grid-template-columns:1fr auto;padding:25px;gap:9px 20px}.fn{font-size:27px;line-height:1.3}.fb .a{grid-column:1;font-size:11px}.fp{grid-column:2;grid-row:1 / 3;font:500 18px var(--sans);color:var(--gold)}
.plate{border-radius:10px;background:#efe7dc}.plate h3{font-size:27px}.plate .three div{border-radius:7px}.plate .three .k{font-size:11px;letter-spacing:0}.plate .three .v{font-size:28px}.legend{font-size:14px}.secnote{font-size:14px}.foot{background:#eee8df}.foot .legal{border-color:var(--line)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b35a41;outline-offset:4px}
body #dc{background:#fffaf3;color:#32251f;border-color:#d7c7bc;box-shadow:0 -8px 35px #552b3015}body #dc h2,body #dc a{color:#843943}body #dc p{color:#72675e}body #dc button{color:#843943;border-color:#843943}body #dc button.ok{background:#843943;color:#fffaf3;border-color:#843943}
@media(max-width:820px){.offers{gap:12px}.offer{padding:22px}.row .n{font-size:22px}.cols{grid-template-columns:1fr}.phead{padding-top:32px}.bar .right{gap:9px}.meta{gap:8px 18px}}
@media(max-width:480px){.bar .wrap{gap:10px;padding-top:14px;padding-bottom:14px}.bar .brand .name{font-size:27px}.bar .brand .sub{font-size:8px;letter-spacing:0}.lang{gap:0}.lang button{min-width:29px;padding:8px 5px;font-size:11px}.bar .right{gap:6px}.callbtn{padding:10px;min-width:35px}.row{gap:10px}.row .n{font-size:21px}.row .p{font-size:14px}.fc{grid-template-columns:95px 1fr}.fc img{height:100%;min-height:180px}.fb{padding:17px;grid-template-columns:1fr}.fn{font-size:23px}.fp{grid-column:1;grid-row:3;font-size:16px}.phead h1{font-size:44px}.sec h2{font-size:29px}.offer .v{font-size:30px}.plate{padding:20px 16px}.plate .three{gap:6px}.plate .three .v{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Keep the full dialable number visible in the sticky header at every size. */
.bar .callbtn{white-space:nowrap;min-height:44px;justify-content:center}
.bar .callbtn .phone-number{display:inline;font-size:14px;letter-spacing:0}
@media(max-width:640px){
 .bar .wrap{display:grid;grid-template-columns:1fr auto;gap:10px;padding-top:10px;padding-bottom:10px}
 .bar .brand{grid-column:1;grid-row:1}.bar .right{display:contents}
 .bar .lang{grid-column:2;grid-row:1}.bar .callbtn{grid-column:1/-1;grid-row:2;width:100%;box-sizing:border-box}
}

/* Preserve sticky headers and menu categories while clipping horizontal decoration. */
html,body{overflow-x:clip}
