/* Shared visual axis: centered introductions and actions, readable data rows. */
.hero-copy{text-align:center}
.hero-copy h1,.hero-copy>p:not(.place):not(.order-note){margin-inline:auto}
.hero-actions{align-items:center}
.hero-order-status{margin-inline:auto}
.photo-card>span{justify-content:center;text-align:center}
.house-intro,.benefits-intro{grid-template-columns:1fr;gap:20px;text-align:center;justify-items:center;align-items:center}
.house-intro>p,.benefits-intro>p{max-width:60ch;margin-inline:auto}
.section-top,.today-heading{flex-direction:column;align-items:center;text-align:center;gap:24px}
.visit-intro,.benefits>.container,.today-menu>.container{text-align:center}
.benefits-intro{max-width:720px;margin-inline:auto}
.benefits-brands{max-width:1040px;margin-inline:auto;align-items:stretch}
.benefits-brands li{min-height:128px}
.benefits-note{max-width:64ch;margin-inline:auto}
.today-status{margin-inline:auto}
.today-prices{justify-content:center}
.today-proteins li{display:grid;place-items:center}
.drink-prices li{align-items:center;text-align:center}
.cans-copy{text-align:center}
.cans-copy>p{max-width:44ch;margin-inline:auto}
.house-photo figcaption{text-align:center}
.service-card{grid-template-columns:1fr;justify-items:center;align-items:center;gap:16px}
.service-card>div{text-align:center}
.service-card p{margin-inline:auto}
.address-card,.hours-card{text-align:center;display:flex;flex-direction:column;align-items:center}
.hours-card dl{width:100%;max-width:440px;text-align:left}
.hours-card dl>div{align-items:baseline}
.hours-card dd{white-space:nowrap}
.payment{margin-inline:auto}
.address-card .button{margin-top:auto}
.address-card>p:last-of-type{margin-bottom:32px}
.contact-inner{grid-template-columns:1fr;gap:32px;text-align:center}
.contact-inner>div:first-child{max-width:640px;margin-inline:auto}
.contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;max-width:880px;margin-inline:auto}
.contact-actions a{text-align:left;min-width:0}
.contact-actions a>span:nth-child(2){min-width:0}
.contact-actions small{overflow-wrap:anywhere}
.final-card{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1fr;min-height:352px;padding:0;gap:0;overflow:hidden;text-align:center;align-items:stretch}
.final-copy{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:28px;padding:48px 24px 48px 40px;position:relative;z-index:1}
.final-copy h2{font-size:clamp(28px,3vw,42px);max-width:17ch;text-wrap:balance}
.final-photo{position:relative;min-width:0;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%)}
.final-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% 60%}
.footer-inner{justify-content:center;align-items:center;flex-wrap:wrap}
@media(max-width:760px){
  .hero-actions{flex-direction:column}
  .drink-prices li{flex-direction:column;gap:16px}
  .benefits-brands li{min-height:112px}
  .contact-actions{grid-template-columns:1fr;max-width:480px;gap:16px}
  .final-card{grid-template-columns:1fr;align-items:stretch}
  .final-copy{padding:32px 24px 36px;gap:24px}
  .final-copy h2{font-size:32px}
  .final-photo{grid-row:1;height:240px;clip-path:polygon(0 0,100% 0,100% 80%,0 100%)}
  .final-photo img{object-position:48% 60%}
  .service-card{grid-template-columns:1fr;justify-items:center;gap:16px}
  .deck-controls{flex-wrap:wrap}
}
@media(max-width:420px){
  .benefits-brands li{padding:20px 12px}
  .benefits-brands img{width:100%;max-width:148px}
  .hours-card dl>div{flex-wrap:wrap;gap:4px 16px}
  .hero-actions .button,.final-card .button{max-width:100%}
  .service-strip{flex-wrap:wrap}
  .final-photo{height:208px}
  .final-copy h2{font-size:28px}
}
