@media print {
  @page {
    size: 8.5in 11in;
    margin: 0.5in;
  }

  body {
    background: white !important;
    color: black;
    font-size: 12pt;
    line-height: 1.5;
    font-family: Arial, sans-serif;
    width: 100%;
    max-width: 8.5in;
    margin: 0 auto;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .menu-main-block {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .menu-logo-block img {
    margin-top: 0 !important;
    padding-top: 0 !important;
    display: block;
  }

  header,
  nav,
  .gen-menu-top-image-holder,
  .footer,
  .sticky-banner-wrapper,
  .mobile-nav,
  .menu-breadcrumbs,
  .menu-header,
  .menu-print-buttons,
  .pdf-buttons,
  .print-buttons {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  .menu-wrapper {
    width: 100%;
    margin: 0;
    padding: 0;
    page-break-inside: avoid;
  }

  h1 {
    font-size: 18pt;
    font-weight: bold;
    margin: 0 0 0.5em;
    text-align: center;
    color: black !important;
  }

  h1.menu-title {
    text-align: left !important;
    margin: 0 0 0.5em !important;
    font-size: 20pt;
  }

  .menu-wrapper-inside h2 {
    font-size: 16pt;
    font-weight: bold;
    color: black !important;
    background: none !important;
    border: none !important;
    padding: 0;
    margin: 0.75em 0 0.3em !important;
    text-transform: uppercase;
    line-height: 1.2;
  }

  .menu-item-wrap h3,
  .menu-wrapper-inside h3 {
    font-size: 12pt;
    font-weight: bold;
    color: black !important;
    margin: 0.2em 0 0.0em;
  }

  .menu-wrapper-inside p {
    font-size: 10pt;
    color: black;
    margin: 0.1em 0 0.6em !important;
    line-height: 1.2;
  }

  h2, h3 {
    page-break-after: avoid;
  }

  .menu-wrapper section {
    page-break-inside: avoid;
  }
}

/* === PDF Mode (used with JavaScript to mimic print styles for html2pdf) === */
.pdf-mode {
  background: white !important;
  color: black;
  font-size: 12pt;
  line-height: 1.5;
  font-family: Arial, sans-serif;
  width: 100%;
  max-width: 8.5in;
  margin: 0 auto;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.pdf-mode .menu-main-block {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.pdf-mode .menu-logo-block img {
  margin-top: 0 !important;
  padding-top: 0 !important;
  display: block;
}

.pdf-mode header,
.pdf-mode nav,
.pdf-mode .footer,
.pdf-mode .sticky-banner,
.pdf-mode .mobile-nav,
.pdf-mode .menu-breadcrumbs,
.pdf-mode .menu-header,
.pdf-mode .menu-print-buttons,
.pdf-mode .pdf-buttons,
.pdf-mode .print-buttons {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

.pdf-mode .menu-wrapper {
  width: 100%;
  margin: 0;
  padding: 0;
  page-break-inside: avoid;
}

.pdf-mode h1 {
  font-size: 18pt;
  font-weight: bold;
  margin: 0 0 0.5em;
  text-align: center;
  color: black !important;
}

.pdf-mode h1.menu-title {
  text-align: left !important;
  margin: 0 0 0.5em !important;
  font-size: 20pt;
}

.pdf-mode .menu-wrapper-inside h2 {
  font-size: 16pt;
  font-weight: bold;
  color: black !important;
  background: none !important;
  border: none !important;
  padding: 0;
  margin: 0.75em 0 0.3em !important;
  text-transform: uppercase;
  line-height: 1.2;
}

.pdf-mode .menu-item-wrap h3,
.pdf-mode .menu-wrapper-inside h3 {
  font-size: 12pt;
  font-weight: bold;
  color: black !important;
  margin: 0.2em 0 0.0em;
}

.pdf-mode .menu-wrapper-inside p {
  font-size: 10pt;
  color: black;
  margin: 0.1em 0 0.6em !important;
  line-height: 1.2;
}

.pdf-mode h2,
.pdf-mode h3 {
  page-break-after: avoid;
}

.pdf-mode .menu-wrapper section {
  page-break-inside: avoid;
}
