/* Shared reading pages, matching the main site's blue and cream palette. */
.reading-header { padding: 22px 0; background: var(--blue); color: var(--paper); }
.reading-nav { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.reading-nav img { width: 112px; height: auto; }
.reading-nav > div { display: flex; gap: 20px; align-items: center; font-size: .85rem; }
.reading-nav a:focus-visible, .reading-main a:focus-visible { outline: 3px solid var(--cream-deep); outline-offset: 4px; }
.reading-main { max-width: 960px; padding: 58px 0 80px; margin-inline: auto; }
.reading-main h1 { max-width: 860px; font-size: clamp(2.4rem,5vw,4rem); }
.reading-main h2 { margin: 38px 0 16px; font-size: 1.55rem; line-height: 1.3; }
.reading-main h3 { margin: 24px 0 10px; font-size: 1.15rem; }
.reading-main p, .reading-main li { line-height: 1.8; }
.reading-main a:not(.button) { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.reading-lead { max-width: 760px; color: var(--muted); font-size: 1.05rem; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 28px; font-size: .8rem; color: var(--muted); }
.document-notice { margin: 24px 0 32px; padding: 20px 24px; border: 1px solid var(--cream-deep); border-left: 4px solid var(--blue); border-radius: 12px; background: var(--cream); font-size: .9rem; }
.document-notice p:last-child { margin-bottom: 0; }
.missing-info { color: #8d4531; font-weight: 700; }
.legal-details { display: grid; grid-template-columns: minmax(150px,.45fr) 1fr; gap: 0 24px; margin: 20px 0; }
.legal-details dt, .legal-details dd { margin: 0; padding: 13px 0; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; }
.legal-details dt { font-weight: 700; }
.reading-footer { padding: 30px 0; background: var(--blue-deep); color: var(--paper); }
.reading-footer nav, .footer-legal-links { display: flex; flex-wrap: wrap; gap: 12px 24px; font-size: .78rem; }
.reading-footer p { margin: 20px 0 0; font-size: .78rem; color: #fffaf4b3; }
.footer-legal-links { padding-block: 16px; border-top: 1px solid #ffffff20; }
.footer-legal-links a { color: #fffaf4cc; }
.footer-legal-links a:hover { text-decoration: underline; }
.menu-text-intro { max-width: 750px; margin: 28px 0 0; color: var(--muted); }
.menu-text-intro a { color: var(--blue); text-decoration: underline; text-underline-offset: 4px; font-weight: 700; }
.printed-menu-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 28px 0 36px; }
.printed-menu-nav a { padding: 8px 15px; border: 1px solid var(--line); border-radius: 999px; font-size: .8rem; text-decoration: none !important; }
.printed-menu-section { scroll-margin-top: 20px; }
.printed-menu-section h2 { padding-bottom: 12px; border-bottom: 2px solid var(--cream-deep); }
.printed-menu-items { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 32px; }
.printed-menu-item { padding: 18px 0; border-bottom: 1px solid var(--line); }
.printed-menu-item > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.printed-menu-item h3 { margin: 0; font-size: 1rem; }
.printed-menu-item strong { white-space: nowrap; color: var(--blue); }
.printed-menu-item p { margin: 7px 0 0; color: var(--muted); font-size: .87rem; }
.reading-table { width: 100%; border-collapse: collapse; font-size: .85rem; }
.reading-table th, .reading-table td { padding: 14px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.reading-table th { background: var(--blue); color: var(--paper); }
.reading-table td:first-child { width: 40%; font-weight: 700; }
.policy-actions { margin-top: 24px; }
.order-info-links { margin: 18px 0 0; font-size: .75rem; line-height: 1.8; }
.order-info-links a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.order-privacy-notice { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line); }
@media(max-width:680px) {
  .reading-main { padding-top: 36px; }
  .reading-nav > div { gap: 12px; font-size: .75rem; }
  .reading-nav .button { padding-inline: 14px; min-height: 42px; font-size: .72rem; }
  .printed-menu-items { grid-template-columns: 1fr; }
  .legal-details { grid-template-columns: 1fr; }
  .legal-details dt { padding-bottom: 0; border: 0; }
  .legal-details dd { padding-top: 4px; }
  .document-notice { padding: 16px; }
  .reading-table th, .reading-table td { padding: 11px 8px; overflow-wrap: anywhere; }
}
@media print {
  .reading-header,.reading-footer,.printed-menu-nav,.policy-actions,.breadcrumbs,.reading-main .button { display: none; }
  .reading-main { width: 100%; padding: 0; }
  .reading-main h1 { font-size: 24pt; }
  .printed-menu-item { break-inside: avoid; }
}

.site-credit { margin: 10px auto 0; color: #fffaf4a6; font-size: .72rem; }
.site-credit a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.site-credit a:hover { color: var(--cream); }

.menu-text-intro > p { margin: 0; }
.menu-text-links { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 14px; }
@media (max-width: 680px) { .menu-text-links { flex-direction: column; align-items: flex-start; } }
