/* Catalogue belongs to the same light page system as Contacts and Partners. */
body[data-page=menu] .menu-intro{display:block;padding:64px var(--edge) 40px;background:var(--paper);color:var(--ink)}
body[data-page=menu] .menu-intro h1{font:800 clamp(42px,5.2vw,72px)/1.04 Onest,sans-serif;letter-spacing:-.05em}
body[data-page=menu] .menu-intro p{margin-top:24px;max-width:42ch;font-size:16px;line-height:1.65;color:var(--text-secondary)}
body[data-page=menu] .menu-category-bar{padding-inline:var(--edge);background:var(--paper)}
body[data-page=menu] .catalog-v24{padding:36px var(--edge) var(--space)}
body[data-page=menu] .catalog-v24 .product{padding:0;background:transparent}
body[data-page=menu] .catalog-v24 .product .product-open{overflow:hidden;aspect-ratio:1}
body[data-page=menu] .catalog-v24 .product .product-open img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;object-position:center;margin:0}
body[data-page=menu] .catalog-v24 .product-copy{padding:18px 0 0}
@media(max-width:700px){
 body[data-page=menu] .menu-intro{padding-top:40px;padding-bottom:28px}
 body[data-page=menu] .menu-intro h1{font-size:42px;line-height:1.07}
 body[data-page=menu] .menu-intro p{font-size:15px}
 body[data-page=menu] .catalog-v24{padding-top:28px}
 body[data-page=menu] .catalog-v24 .product-copy{padding-top:12px}
}
/* Share text/footer tracks across each catalogue row, including long rental details. */
@supports(grid-template-rows:subgrid){
 body[data-page=menu] .catalog-v24 .product{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:12px;content-visibility:visible}
 body[data-page=menu] .catalog-v24 .product-copy{display:contents}
 body[data-page=menu] .catalog-v24 .product-name{align-self:start}
 body[data-page=menu] .catalog-v24 .product .product-description{margin:0;min-height:0}
 body[data-page=menu] .catalog-v24 .product-bottom{margin-top:0;align-self:stretch;align-items:start}
 body[data-page=menu] .catalog-v24 .product-bottom>div:last-child{align-self:end}
}
/* Dish controls: consistent sizing in both quick view and full product page. */
.dish #dish-form{display:flex;flex-direction:column;align-items:stretch;gap:0}
.dish .dish-option{width:100%;max-width:none}
.dish .dish-option select{appearance:none;-webkit-appearance:none;padding:14px 44px 14px 16px;min-height:48px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23354832' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px}
.dish .dish-actions{display:flex;align-items:flex-end;flex-wrap:nowrap;gap:12px;width:100%}
.dish .dish-actions label{display:block;width:68px;flex:0 0 68px}
.dish .dish-actions input{box-sizing:border-box;width:68px;height:48px;min-height:48px;padding:0 8px;text-align:center;line-height:normal;appearance:textfield;-moz-appearance:textfield;margin-top:8px}
.dish .dish-actions input::-webkit-inner-spin-button,.dish .dish-actions input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.dish .dish-actions .btn{box-sizing:border-box;flex:1;min-width:0;height:48px;min-height:48px;padding:12px 16px;white-space:nowrap;font-size:14px;line-height:24px}
.dish .dish-actions .btn-fill{white-space:nowrap}
