/* =========================================================
   TAT Ristorante Di Famiglia — print styles
   Loaded by every page with media="print", so it never holds up
   the first paint on screen. Uses the colour and type tokens from
   styles.css (custom properties are shared across stylesheets).
   ---------------------------------------------------------
   Only the open menu goes on paper: no header, tabs, photos,
   buttons or footer. Black on white, two columns to save paper,
   and no dish split across a page.
   ========================================================= */
@media print{
  @page{ margin:1.5cm 1.4cm; }
  html, body{ background:#fff !important; color:#000; }
  body{ font-size:10.5pt; padding:0 !important; }

  .skip-link, .site-header, .nav-mobile, .action-bar, .site-footer,
  .lightbox, .menu-head, .menu-tabs, .menu-jump, .menu-filter-status,
  .menu-cta, .menu-elsewhere, .menu-item-photo-btn{ display:none !important; }

  .wrap{ width:auto; max-width:none; padding:0; margin:0; }
  .menu-body{ padding:0; }
  .menu-layout{ display:block; }
  .reveal{ opacity:1 !important; transform:none !important; }

  .menu-print-head{
    display:block; text-align:center;
    margin:0 0 1.2rem; padding-bottom:.8rem;
    border-bottom:1.5pt solid #000;
  }
  .menu-print-head p{ margin:0; }
  .menu-print-name{ font-family:var(--f-display); font-weight:700; font-size:20pt; line-height:1.1; }
  .menu-print-menu{
    margin-top:.2rem !important;
    font-size:10pt; font-weight:600; letter-spacing:.2em; text-transform:uppercase;
  }
  .menu-print-contact{ margin-top:.35rem !important; font-size:9pt; }

  .menu-note{ max-width:none; margin:0 0 1rem; font-size:11pt; color:#000; text-align:center; }

  .menu-sections{ column-count:2; column-gap:1.4cm; }
  .menu-section{ margin:0 0 1.1rem; }
  .menu-section-h{
    font-size:14pt; padding-bottom:.25rem; margin:0 0 .3rem;
    border-bottom-width:1pt;
    break-after:avoid; page-break-after:avoid;
  }
  .menu-section-note{ margin:.3rem 0 .5rem; font-size:9pt; color:#000; }
  .menu-items{ padding:0; background:none; border:0; }
  .menu-item{
    padding:.35rem 0; border-bottom:0;
    break-inside:avoid; page-break-inside:avoid;
  }
  .menu-item-line{ flex-wrap:nowrap; }
  .menu-item-name{ flex:0 1 auto; font-size:10.5pt; }
  .menu-item-dots{ display:block; border-bottom-color:#999; }
  .menu-item-price, .menu-tag{ margin-top:0; color:#000; }
  .menu-item-price{ font-size:10pt; }
  .menu-item-price .price-label, .menu-item-suffix{ color:#444; }
  .menu-tag{ border-color:#000; }
  .menu-item-desc{ max-width:none; margin-top:.1rem; font-size:9pt; line-height:1.4; color:#222; }
  .menu-item mark{ background:none; }
  .menu-legal{ margin-top:1rem; padding-top:.6rem; font-size:8.5pt; color:#000; border-top-color:#999; }
}
