.menu-text-grid{grid-column:1/-1;display:grid;grid-template-columns:1.35fr 1fr 1.15fr .9fr 1fr;gap:24px;align-items:start}
.menu-text-column{display:grid;gap:20px;min-width:0;align-content:start}
.menu-text-grid .menu-category{min-width:0}
.menu-text-grid .menu-category h3{font-size:19px;line-height:1.5;margin:0 0 7px;padding-bottom:7px}
.menu-text-grid .menu-category dl{margin:0}
.menu-text-grid .menu-category dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:3px 8px;padding:5px 0}
.menu-text-grid .menu-category dt{font-size:14px;line-height:1.5;letter-spacing:0}
.menu-text-grid .menu-category dd{font-size:15px;line-height:1.4;margin:0;white-space:nowrap;text-align:right}
.menu-text-grid .menu-category dt small{font-size:10px;line-height:1.5;margin-top:2px}
.menu-text-grid .menu-category dt small.price-confirmed{display:inline;margin:0 0 0 6px;font-size:9px;white-space:nowrap}
@media(max-width:1279px){.menu-text-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.menu-text-column{gap:20px}}
@media(max-width:900px){.menu-text-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:600px){.menu-text-grid{grid-template-columns:minmax(0,1fr);gap:22px}.menu-text-column{gap:22px}.menu-text-grid .menu-category h3{font-size:20px}.menu-text-grid .menu-category dl>div{padding:5px 0;gap:4px 10px}}
/* Include the preceding story's bottom padding in the effective MENU gap. */
#menu{padding-top:41px}
#menu>.section-title{margin-bottom:14px}
#menu>.menu-categories{padding-bottom:14px}
@media(max-width:760px){
 #menu{padding-top:19.5px}
 #menu>.section-title{margin-bottom:17px}
 #menu>.menu-categories{flex-wrap:nowrap;overflow-x:auto;gap:18px;padding-bottom:17.5px;scrollbar-width:none}
 #menu>.menu-categories::-webkit-scrollbar{display:none}
 #menu>.menu-categories a{flex-shrink:0}
}
/* Compact franchise enquiry while retaining the full telephone tap target. */
#franchise{padding-top:30px;padding-bottom:30px;gap:24px;align-items:center}
#franchise .section-title{margin:0}
#franchise h2{margin-top:8px}
#franchise h2:after{margin-top:8px}
#franchise .franchise-copy p{margin:0 0 4px;line-height:1.6}
#franchise .franchise-copy>a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5}
@media(max-width:760px){#franchise{padding-top:22px;padding-bottom:22px;gap:12px}}
/* Clearer store details, with less surrounding whitespace. */
#place{padding-top:34px;padding-bottom:34px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:5%;align-items:start}
#place .section-title{margin:0}
#place h2{margin-top:10px}
#place h2:after{margin-top:10px}
#place .place-photo{margin:18px 0 0}
#place .place-photo img{max-height:320px;object-fit:contain;object-position:left center}
#place .place-photo figcaption{margin-top:5px}
#place .info-intro{font-size:24px;margin:0 0 10px;line-height:1.5}
#place .info dl{margin:0 0 12px}
#place .info dl div{grid-template-columns:90px minmax(0,1fr);gap:12px;padding:9px 0;line-height:1.6}
#place .info dt{font-size:16px}
#place .info dd{font-size:18px;color:#eeeade;overflow-wrap:anywhere}
#place address{font:inherit;font-style:normal}
#place .last-order{font-size:16px}
#place .phone-link,#place .map-link{display:inline-flex;align-items:center;min-height:44px}
#place .map-link{font-size:15px}
@media(max-width:760px){
 #place{padding-top:24px;padding-bottom:24px;display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
 #place .place-photo{margin-top:14px}
 #place .place-photo img{max-width:280px;max-height:210px}
 #place .info dl div{grid-template-columns:70px minmax(0,1fr);gap:10px;padding:8px 0}
 #place .info dt{font-size:15px}
 #place .info dd{font-size:17px}
 #place .last-order{font-size:15px}
}
/* Main section headings share the page centerline. */
#place>.section-title,#franchise>.section-title{grid-column:1/-1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;margin:0}
#place>.section-title h2,#franchise>.section-title h2{margin:0;padding-left:.1em}
#place>.section-title h2:after,#franchise>.section-title h2:after{margin-left:auto;margin-right:auto}
#place{row-gap:18px}
#place>.place-photo{margin:0}
#franchise{grid-template-columns:minmax(0,1fr);padding-top:12px;padding-bottom:12px;gap:8px;text-align:center}
#franchise .franchise-copy{justify-self:center}
