/* Measured at 393×852, 820×1180 and 1180×820.
   Photo roles are scoped by page and breakpoint. Desktop ≥1200px is unchanged. */
@media (min-width:768px) and (max-width:1199px) {
  /* An editorial portrait beside the story, rather than above a full-width story. */
  .page-home .house__grid {
    grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
    gap:36px;
    padding-left:var(--page-pad);
    padding-right:var(--page-pad);
    align-items:center;
  }
  .page-home .house__photo {
    aspect-ratio:4 / 5;
    max-height:min(58svh,520px);
  }
  .page-home .house__text { padding-top:0; }
  /* Keep the existing card widths and scrolling system; show photo + description together. */
  .page-home .menu-mo__panel {
    grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
    gap:28px;
    min-height:0;
    align-items:center;
  }
  .page-home .menu-mo__panel .photo {
    height:auto;
    aspect-ratio:4 / 5;
    max-height:min(48svh,440px);
  }
}
@media (min-width:768px) and (max-width:1023px) {
  /* Retain the saké photo dimensions while freeing space inside the text columns. */
  .carte-page .accords__col { padding-left:10px; padding-right:10px; }
  .carte-page .accords__col:first-child { padding-left:0; }
  .carte-page .accords__col:last-child { padding-right:0; }
}
@media (max-width:767px) {
  /* The dish is the subject; secondary shots keep their existing 4:3 frames. */
  .carte-page .carte__acc__main { aspect-ratio:1 / 1; }
  .carte-page .carte__acc__main img { object-position:50% 64%; }
  /* Keep service count, duration and price readable on a single line each. */
  .carte-page .carte__meta { gap:12px; font-size:12px; justify-content:space-between; }
  .carte-page .carte__meta span { gap:7px; white-space:nowrap; }
  .carte-page .carte__meta svg { width:16px; height:16px; flex-shrink:0; }
  .carte-page .carte__meta i { flex-shrink:0; }
}
