.dinner-page .article-body,
.dinner-page .article-introduction { font-size: 16px; }
.dinner-page .article-heading h1 { font-size: clamp(34px, 4.2vw, 56px); line-height: 1.12; }
.dinner-page .article-byline,
.dinner-page .breadcrumbs,
.dinner-page .article-contents,
.dinner-page .article-contents summary { font-size: 14px; }
.dinner-page .article-cover { max-width: 390px; }
.dinner-page .article-cover img { display: block; width: 100%; height: auto; object-fit: contain; }
.dinner-page .guide-step > .eyebrow { font-size: 12px; }
.dinner-page .dinner-request { margin: 22px 0; padding-left: 20px; border-left: 2px solid var(--taupe); font-size: 23px; font-style: italic; line-height: 1.45; }
.dinner-page .dinner-evidence { margin: 28px 0 10px; max-width: 100%; }
.dinner-page .dinner-evidence--message { max-width: 620px; }
.dinner-page .dinner-evidence img { display: block; width: 100%; height: auto; border: 1px solid var(--stone); }
.dinner-page .dinner-evidence figcaption { margin-top: 12px; font-size: 14px; line-height: 1.7; color: var(--navy); }
.dinner-page .dinner-preorder-layout { display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; gap: 24px; margin: 28px 0; }
.dinner-page .dinner-preorder-copy { min-width: 0; }
.dinner-page .dinner-preorder-layout .dinner-evidence { width: 100%; margin: 0; }
@media (min-width: 1100px) {
  .dinner-page .dinner-preorder-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 32px; }
}
.dinner-page .practical-note { font-size: 16px; background: #f3eeea; }
.dinner-page .dinner-recap { margin-top: 36px; padding: 24px 26px; background: #f3eeea; border-left: 4px solid var(--taupe); }
.dinner-page .dinner-recap h2 { margin: 0 0 16px; font-size: 28px; line-height: 1.3; }
.dinner-page .dinner-recap li + li { margin-top: 9px; }
.dinner-note-card .note-card-copy { min-width: 0; }
.notes-featured .dinner-note-card img { height: auto; object-fit: contain; }
@media (max-width: 680px) {
  .dinner-page .article-deck { font-size: 16px; }
  .dinner-page .dinner-request { font-size: 21px; }
  .dinner-page .dinner-recap { padding: 20px; }
}
@media print {
  .dinner-page .article-page > .article-hero,
  .dinner-page .article-page > .article-layout { display: block !important; }
  .dinner-page .article-contents,
  .dinner-page .article-cover { display: none !important; }
  .dinner-page .article-body { font-size: 11pt; line-height: 1.6; }
  .dinner-page .guide-step { break-inside: auto; }
  .dinner-page .dinner-preorder-layout { display: block; }
  .dinner-page .dinner-preorder-layout .dinner-evidence { margin-top: 20px; }
}
