/* A shared image stage and fixed copy area keep every tray slide balanced. */
.hero-image.revolving-tray{height:760px;min-height:760px;overflow:hidden}
.revolving-tray .tray-slides{position:absolute;inset:0}
.revolving-tray .tray-slide{display:grid;grid-template-rows:minmax(0,1fr) 300px;gap:18px;padding:76px 18px 66px;align-items:stretch;justify-content:normal}
.revolving-tray .tray-slide img,.revolving-tray .tray-slide.drink img{position:static;inset:auto;width:100%;height:100%;min-height:0;max-height:100%;padding:0;object-fit:contain;object-position:center;background:transparent;border-radius:5px}
.revolving-tray .tray-copy{box-sizing:border-box;height:300px;min-height:0;margin:0;padding:20px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:9px}
.revolving-tray .tray-copy .tag{font-size:11px;line-height:1.5;margin:0}
.revolving-tray .tray-copy h2{font-size:29px;line-height:1.2;margin:0;min-height:2.4em;display:flex;align-items:center}
.revolving-tray .tray-copy p{font-size:14px;line-height:1.55;margin:0}
.revolving-tray .tray-copy .tray-soup-offer{font-size:13px!important;line-height:1.4!important;margin:0;padding-top:8px;width:100%}
.revolving-tray .tray-copy>a{margin-top:auto;flex-shrink:0;font-size:13px}
.revolving-tray .tray-controls{bottom:17px}
/* Keep the new portrait food photo framed as its own signature card. */
.signature figure:first-of-type>img{object-fit:cover;object-position:center 65%}
@media(max-width:1000px){.hero-image.revolving-tray{height:760px;min-height:760px}}
@media(max-width:650px){.hero-image.revolving-tray{height:720px;min-height:720px}.revolving-tray .tray-slide{grid-template-rows:minmax(0,1fr) 300px;padding:72px 12px 64px;gap:15px}.revolving-tray .tray-copy{padding:17px;gap:8px}.revolving-tray .tray-copy h2{font-size:27px}.revolving-tray .tray-copy p{font-size:13px}.revolving-tray .tray-copy .tag{font-size:10px}}
/* Mobile uses the active slide's real height, with no empty absolute stage. */
@media(max-width:650px){
 .hero-image.revolving-tray{height:auto;min-height:0;width:calc(100% - 24px);max-width:480px;margin:18px auto 30px!important;border-radius:24px 24px 8px 8px}
 .revolving-tray .tray-slides{position:relative;inset:auto;width:100%}
 .revolving-tray .tray-slide{position:relative;inset:auto;display:none;grid-template-rows:clamp(220px,68vw,300px) 300px;padding:68px 12px 62px;gap:14px;min-height:0}
 .revolving-tray .tray-slide.is-active{display:grid}
 .revolving-tray .tray-slide img,.revolving-tray .tray-slide.drink img{width:100%;height:100%;max-height:none;min-height:0;padding:0;object-fit:contain}
 .revolving-tray .tray-copy{height:300px;min-height:0;width:100%;padding:16px;gap:8px;overflow:visible}
 .revolving-tray .tray-copy h2{font-size:25px;min-height:2.4em;line-height:1.2}
 .revolving-tray .tray-copy p{width:100%;max-width:none;margin:0;font-size:13px}
 .revolving-tray .tray-copy>a{max-width:100%;white-space:normal}
 .revolving-tray .tray-heading{top:20px;left:12px;right:12px;text-align:center;font-size:12px}
 .revolving-tray .tray-controls{left:12px;right:12px;bottom:14px;justify-content:center}
}
/* Signature food cards: full-width mobile frames with captions in normal flow. */
@media(max-width:650px){
 .signature{grid-template-columns:minmax(0,1fr);gap:22px;justify-items:center;padding-inline:22px}
 .signature>div{grid-column:1;margin-bottom:8px;width:100%}
 .signature figure,.signature figure:last-child{display:grid;grid-template-rows:auto 100px;width:100%;max-width:480px;height:auto;min-width:0;margin:0;transform:none}
 .signature figure>img,.signature figure:first-of-type>img,.signature figure:last-child>img{display:block;width:100%;height:auto;aspect-ratio:4/3;min-height:0;object-fit:cover;object-position:center;border-radius:0;padding:0;background:transparent}
 .signature figure:first-of-type>img{object-position:center 65%}
 .signature figure>figcaption{position:static;inset:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:100%;height:100px;min-height:100px;padding:14px;text-align:center}
 .signature figcaption b{font-size:23px;line-height:1.35;margin:0}
 .signature figcaption span{font-size:12px;line-height:1.5;margin:0}
}
/* Centre every caption element consistently on desktop and mobile. */
.revolving-tray .tray-copy{align-items:center;text-align:center}
.revolving-tray .tray-copy h2{width:100%;justify-content:center;text-align:center}
.revolving-tray .tray-copy p,.revolving-tray .tray-copy .tag,.revolving-tray .tray-copy .tray-soup-offer{text-align:center;width:100%;margin-left:0;margin-right:0}
.revolving-tray .tray-copy>a{align-self:center}
.revolving-tray .tray-copy>p:not(.tray-soup-offer){max-width:36ch;min-height:3.1em;line-height:1.55;text-wrap:balance;margin-inline:auto}
