/* Site-specific content; visual system comes from the Volzhsky design. */
.brand img{width:48px;height:48px}.brand b{font-size:1.16rem}.brand-txt span{letter-spacing:0}.footer-emblem{border-radius:8px}.promo h2 a{text-decoration:none}.promo h2{font-size:1rem;line-height:1.3}.promo-pic{display:block}.hero .facts p{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}.hero .facts{gap:1.4rem}.page-intro{padding-block:3rem}.page-intro h1{margin-bottom:1rem}.page-intro h2{margin-top:2rem}.page-intro p{max-width:85ch}.infogrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.3rem}.infogrid h2{font-size:1.65rem}.infogrid h3{margin-top:1.5rem}.seo-inner{max-width:1000px}.seo-inner p{font-size:1.04rem}.hm-map{border:0;border-radius:18px;margin-top:1.5rem}.legacy-anchor{display:block;scroll-margin-top:10rem}.quantity-note{color:var(--leaf);font-size:.85rem;font-weight:600;margin:0 0 .8rem}.add:disabled{cursor:not-allowed;opacity:.55}.set-ingredients li{min-width:0}.set .compo:not(.set-composition){line-height:1.6}.form-field select{width:100%;padding:.7rem;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--coal);font:inherit}.cart-breakdown p{display:flex;justify-content:space-between;gap:1rem}.cart-breakdown small{display:block}.hero h1{font-size:clamp(2rem,4.2vw,3.3rem)}.site-footer .footer-phone-secondary{font-size:1.16rem}.sets .set-body{min-width:0}.catscroll a small{margin-left:.4rem}.seo-section{padding-block:3rem}.footer-hours span{line-height:1.7}.restaurant-photo img{object-position:center}.brand{min-width:0}.product-copy h1{overflow-wrap:break-word}
@media(max-width:1080px){.infogrid{grid-template-columns:1fr 1fr}.infogrid>div:last-child{grid-column:1/-1}}
@media(max-width:600px){.infogrid{grid-template-columns:1fr}.infogrid>div:last-child{grid-column:auto}.brand b{font-size:1rem}.brand-txt span{font-size:.6rem}.brand img{width:40px;height:40px}.hero .facts{grid-template-columns:1fr 1fr}.hero .facts p{min-width:0}.promo h2{font-size:1.08rem}.site-footer .footer-phone{font-size:1.4rem}.page-intro{padding-block:2rem}.product-facts span{line-height:1.5}}
#cartDiscountLine[hidden]{display:none}

.set-photo-note{margin:10px 8px 0;font-size:12px;line-height:1.5;color:var(--muted,#6f7566);text-align:center}

/* A single content width for the header, hero, menu and every lower section. */
:root{--content-max:1460px;--page-gutter:24px}
.wrap,.catnav .wrap,.wrap.seo-inner,.wrap.narrow{
  width:min(var(--content-max),calc(100% - var(--page-gutter)*2));
  max-width:var(--content-max);margin-inline:auto
}
main>.wrap>.cat{width:100%;max-width:none;margin-inline:0}
.seo-inner{max-width:var(--content-max)}
.infogrid>div,.restaurant-intro>div,.footer-grid>*{min-width:0}

/* Full source photographs stay inside equal 4:3 frames. */
.menu-photo{position:relative;display:block;width:100%;height:auto;aspect-ratio:4/3;overflow:hidden;isolation:isolate;background:#eee8dc}
.menu-photo::before{content:"";position:absolute;z-index:0;inset:-18px;background-image:var(--photo-bg);background-position:center;background-size:cover;filter:blur(14px);opacity:.32;pointer-events:none}
.menu-photo>img,.set-pic.menu-photo>img,.product-media.menu-photo>img,.related-media.menu-photo>img,.promo-pic.menu-photo>img{
  position:absolute;inset:0;z-index:1;width:100%;height:100%;max-width:100%;max-height:100%;
  object-fit:contain;object-position:center;transform:none!important;transition:none
}
.menu-photo.is-drink{background:#fff}
.menu-photo.is-drink::before{display:none}
.menu-photo.is-drink>img{padding:12px;object-fit:contain;object-position:center}
.product-image{aspect-ratio:auto;background:var(--card);overflow:hidden}
.product-media{border-radius:var(--r-lg)}
.product-image .set-photo-note{padding:0 8px 10px}
.related-media{flex:none}
.related-card .related-media img{aspect-ratio:auto}
#cart .cart-thumb{object-fit:contain;object-position:center;background:#fff;padding:4px}
.restaurant-photo>img,.footer-facade>img{object-position:center;object-fit:contain;background:#27291f;transform:none!important}
@media(max-width:720px){:root{--page-gutter:16px}.wrap,.catnav .wrap,.wrap.seo-inner,.wrap.narrow{width:calc(100% - var(--page-gutter)*2)}}
@media(max-width:420px){.menu-photo.is-drink>img{padding:10px}.set-foot{gap:.6rem}.set-foot .price{min-width:0}}

/* Six sets: two horizontal cards per row, full details beside each photo. */
#sety .sets{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
#sety .set{display:grid;grid-template-columns:minmax(0,42fr) minmax(0,58fr);align-items:stretch;min-width:0}
#sety .set-pic.menu-photo{height:100%;min-height:300px;aspect-ratio:auto;border-radius:0;background:#3a2418}
#sety .set-pic.menu-photo::before{inset:-22px;filter:blur(18px);opacity:.65}
#sety .set-body{padding:22px;min-width:0}
#sety .set h3{margin:0;font-size:clamp(1.15rem,1.4vw,1.45rem);line-height:1.25}
#sety .set-description{margin:10px 0 0;font-size:.88rem;line-height:1.5;color:var(--smoke)}
#sety .compo.set-composition{margin:16px 0 18px;padding:0;border:0;border-radius:0;background:none;max-height:none;overflow:visible}
#sety .compo::after,#sety .more{display:none}
#sety .set-composition-title{margin-bottom:8px;font-size:.72rem;letter-spacing:.09em}
#sety .set-ingredients{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 14px}
#sety .set-ingredients li{display:block;position:relative;padding:0 0 0 11px;border:0;font-size:.81rem;line-height:1.4}
#sety .set-ingredients li::before{content:"";position:absolute;left:0;top:.5em;width:4px;height:4px;border-radius:50%;background:var(--acc,#c8320f)}
#sety .set-foot{gap:10px;flex-wrap:wrap;padding-top:14px;align-items:center}
#sety .set-foot .price{font-size:1.3rem}
#sety .set-foot .was{margin-top:4px;font-size:.76rem}
#sety .set-foot .add{padding:.65rem .8rem;min-height:42px;font-size:.82rem}
@media(max-width:1100px){
 #sety .sets{grid-template-columns:minmax(0,1fr);gap:20px}
 #sety .set{grid-template-columns:minmax(0,40fr) minmax(0,60fr)}
 #sety .set-pic.menu-photo{min-height:280px}
 #sety .set h3{font-size:1.4rem}
 #sety .set-ingredients li{font-size:.9rem}
}
@media(max-width:540px){
 #sety .set{grid-template-columns:minmax(0,1fr)}
 #sety .set-pic.menu-photo{height:auto;min-height:0;aspect-ratio:4/3}
 #sety .set-body{padding:18px}
 #sety .set h3{font-size:1.3rem}
 #sety .set-ingredients{gap:8px 12px}
 #sety .set-ingredients li{font-size:.84rem}
}

/* Product packaging is fully visible inside the finished photo. */
.menu-photo.is-drink{background:#3a2418}
.menu-photo.is-drink::before{display:block;opacity:.32}
.menu-photo.is-drink>img{padding:0}
@media(max-width:420px){.menu-photo.is-drink>img{padding:0}}

/* Detail descriptions must remain fully readable, without card fade overlays. */
.product-copy .product-description{
  margin:.75rem 0 1rem;font-size:1rem;line-height:1.65;color:var(--coal);
  max-height:none;overflow:visible
}
.product-copy .compo{max-height:none;overflow:visible}
.product-copy .compo::after{display:none}
