/* Larger supporting text and controls; display headings and established body copy retain their sizes. */
.button,
.hero-actions > .button,
.header-order,
.pairing-copy .button,
.location-card-actions .button,
.item-detail-copy .button,
.fullmenu-hero-actions .button,
.fullmenu-order-banner .button,
.about-franchise-copy .button {
  font-size: 15px;
  min-height: 52px;
}

.text-link,
.menu-pdf,
.menu-bottom-note .text-link,
.location-card-actions .text-link,
.fullmenu-hero-actions .text-link,
.about-menu-link {
  font-size: 14px;
}

.desktop-nav a { font-size: 15px; }
.location-trigger { font-size: 14px; min-height: 44px; }
.mobile-nav a,
.mobile-nav button { font-size: 16px; min-height: 48px; }
.announcement { font-size: 12px; letter-spacing: .11em; }

.eyebrow,
.section-heading .eyebrow,
.pairing-copy .eyebrow,
.dialog-heading .eyebrow,
.item-detail-copy .eyebrow,
.fullmenu-hero .eyebrow,
.fullmenu-sidebar > .eyebrow,
.fullmenu-order-banner .eyebrow,
.about-page .eyebrow,
.about-section-number {
  font-size: 13px;
}

.menu-intro { font-size: 14px; }
.menu-intro > span,
.menu-intro button { font-size: 13px; }
.menu-intro button { min-height: 40px; text-align: left; }
.category-tab { font-size: 14px; min-height: 44px; padding: 11px 15px; }
.menu-search { flex-basis: 235px; }
.menu-search input { font-size: 14px; min-height: 44px; }
.menu-results-heading p { font-size: 15px; }
.menu-results-heading > span { font-size: 13px; }
.menu-card p { font-size: 14px; }
.menu-card-footer { font-size: 13px; gap: 8px; }
.item-tag { font-size: 12px; letter-spacing: .035em; }
.card-arrow { width: 32px; height: 32px; flex-shrink: 0; }
.crust-note,
.menu-bottom-note,
.empty-state p { font-size: 14px; }
.crust-note summary { min-height: 44px; }
.pairing-label { font-size: 12px; }
.pairing-copy > p:not(.eyebrow),
.locations-intro { font-size: 14px; }

.location-number { font-size: 13px; }
.location-card address,
.location-phone { font-size: 14px; }
.location-card .shopping-center { font-size: 13px; }
.location-status { font-size: 12px; }
.location-card-actions { flex-wrap: wrap; gap: 14px 24px; }
.location-phone { min-height: 40px; }
.footer-links { font-size: 14px; }
.footer-links a { min-height: 32px; display: flex; align-items: center; gap: 8px; }
.footer-bottom { font-size: 12px; gap: 12px; flex-wrap: wrap; }
.toast { font-size: 14px; }

.dialog-heading > p:last-child { font-size: 14px; }
.location-option p { font-size: 13px; }
.location-select { font-size: 13px; min-height: 44px; padding: 10px 12px; }
.location-option-bottom { flex-wrap: wrap; gap: 12px 18px; }
.location-option-bottom .button { font-size: 14px; min-height: 48px; }
.location-option-bottom .text-link { font-size: 14px; min-height: 40px; }
.location-dialog-note { font-size: 13px; }
.item-detail-copy > p:not(.eyebrow) { font-size: 14px; }
.item-detail-copy .item-options-note { font-size: 13px !important; }
.dialog-close { width: 44px; height: 44px; }

.fullmenu-browser { grid-template-columns: 250px minmax(0, 1fr); gap: 45px; }
.fullmenu-sidebar nav a { font-size: 15px; padding-block: 8px; }
.fullmenu-sidebar nav a span { font-size: 16px; }
.fullmenu-sidebar-note { font-size: 14px; }
.fullmenu-sidebar > .text-link { font-size: 13px; min-height: 44px; }
.fullmenu-tools input { font-size: 15px; min-height: 44px; }
.fullmenu-tools button { font-size: 14px; min-height: 44px; }
.fullmenu-search-status { font-size: 14px; }
.fullmenu-section-heading > span { font-size: 13px; width: 32px; height: 32px; }
.fullmenu-section-intro,
.fullmenu-item-copy > p { font-size: 14px; }
.fullmenu-item h3 { font-size: 15px; }
.fullmenu-item-copy > .fullmenu-item-note { font-size: 13px; }
.fullmenu-column-head { font-size: 13px; }
.fullmenu-column-head,
.fullmenu-item-multi { grid-template-columns: minmax(0, 1fr) minmax(285px, 1fr); gap: 20px; }
.fullmenu-prices dd { font-size: 16px; }
.fullmenu-options li { font-size: 14px; }
.fullmenu-section-notes,
.fullmenu-price-note { font-size: 13px; }
.fullmenu-no-results p { font-size: 14px; }
.fullmenu-order-banner p:not(.eyebrow) { font-size: 14px; }
.fullmenu-hero-art > span,
.about-food-caption { font-size: 12px; }

@media (max-width: 1150px) {
  .fullmenu-browser { grid-template-columns: 235px minmax(0, 1fr); gap: 30px; }
  .fullmenu-column-head,
  .fullmenu-item-multi { grid-template-columns: minmax(0, 1fr) minmax(235px, 1fr); gap: 17px; }
  .header-actions { gap: 14px; }
  .location-trigger span { max-width: 155px; }
}

@media (max-width: 1100px) {
  .desktop-nav { display: none; }
  .mobile-nav-toggle { display: grid; }
}

@media (max-width: 950px) {
  .fullmenu-browser { display: block; }
  .menu-search { flex-basis: auto; }
  .fullmenu-sidebar nav a { font-size: 14px; min-height: 44px; padding: 10px 14px; }
}

@media (max-width: 700px) {
  .button,
  .hero-actions > .button,
  .pairing-copy .button,
  .location-card-actions .button,
  .item-detail-copy .button,
  .fullmenu-hero-actions .button,
  .fullmenu-order-banner .button,
  .about-franchise-copy .button {
    font-size: 14px;
    min-height: 48px;
  }

  .hero-actions > .button { font-size: 13px; }
  .text-link,
  .menu-pdf,
  .menu-bottom-note .text-link,
  .location-card-actions .text-link,
  .fullmenu-hero-actions .text-link,
  .about-menu-link { font-size: 13px; }
  .announcement { flex-wrap: wrap; gap: 2px; padding-block: 7px; font-size: 10px; }
  .announcement > span:not(.announcement-separator) { width: 100%; text-align: center; }
  .announcement .announcement-separator { display: none; }

  .eyebrow,
  .section-heading .eyebrow,
  .pairing-copy .eyebrow,
  .dialog-heading .eyebrow,
  .item-detail-copy .eyebrow,
  .fullmenu-hero .eyebrow,
  .fullmenu-sidebar > .eyebrow,
  .fullmenu-order-banner .eyebrow,
  .about-page .eyebrow,
  .about-section-number { font-size: 12px; letter-spacing: .1em; }

  .menu-intro { font-size: 13px; }
  .menu-intro > span,
  .menu-intro button { font-size: 12px; }
  .category-tab { font-size: 13px; min-height: 44px; padding: 11px 13px; }
  .menu-search { flex-basis: auto; }
  .menu-search input { font-size: 14px; }
  .menu-results-heading { align-items: baseline; flex-wrap: wrap; gap: 4px 12px; }
  .menu-results-heading p { font-size: 14px; }
  .menu-results-heading > span { font-size: 12px; }
  .menu-card h3 { font-size: 15px; }
  .menu-card p { font-size: 13px; }
  .menu-card-footer { font-size: 12px; }
  .item-tag { font-size: 11px; padding: 4px 6px; }
  .card-arrow { width: 28px; height: 28px; }
  .crust-note,
  .menu-bottom-note,
  .empty-state p { font-size: 13px; }
  .menu-bottom-note { flex-wrap: wrap; }
  .menu-bottom-note > p { max-width: none; }
  .pairing-label { font-size: 11px; letter-spacing: .08em; }
  .pairing-copy > p:not(.eyebrow),
  .locations-intro { font-size: 13px; }

  .location-number { font-size: 12px; }
  .location-card address,
  .location-phone { font-size: 14px; }
  .location-card .shopping-center { font-size: 13px; }
  .location-status { font-size: 11px; }
  .footer-links { font-size: 13px; }
  .footer-main { grid-template-columns: 1fr; gap: 25px; }
  .footer-links { flex-direction: row; flex-wrap: wrap; gap: 9px 22px; }
  .footer-bottom { font-size: 12px; }
  .mobile-order-bar > button:first-child { font-size: 13px; min-height: 44px; }
  .mobile-order-bar .button { font-size: 14px; min-height: 46px; gap: 14px; }
  .toast { font-size: 13px; }

  .dialog-heading > p:last-child { font-size: 13px; }
  .location-option-top { align-items: flex-start; gap: 10px; }
  .location-option p { font-size: 12px; }
  .location-select { font-size: 12px; min-height: 44px; flex-shrink: 0; }
  .location-option-bottom .button { font-size: 13px; min-height: 46px; }
  .location-option-bottom .text-link { font-size: 13px; }
  .location-dialog-note { font-size: 12px; }
  .item-detail-copy > p:not(.eyebrow) { font-size: 13px; }
  .item-detail-copy .item-options-note { font-size: 12px !important; }

  .fullmenu-sidebar nav a { font-size: 14px; }
  .fullmenu-tools { flex-wrap: wrap; gap: 8px 12px; }
  .fullmenu-tools input { font-size: 14px; }
  .fullmenu-tools button { font-size: 13px; }
  .fullmenu-search-status { font-size: 13px; }
  .fullmenu-section-heading > span { font-size: 12px; width: 28px; height: 28px; }
  .fullmenu-section-intro,
  .fullmenu-item-copy > p { font-size: 13px; }
  .fullmenu-item h3 { font-size: 15px; }
  .fullmenu-item-copy > .fullmenu-item-note { font-size: 12px; }
  .fullmenu-item-multi { display: block; }
  .fullmenu-item-multi .fullmenu-prices { gap: 8px; }
  .fullmenu-item-multi .fullmenu-prices dt { font-size: 12px; }
  .fullmenu-prices dd { font-size: 15px; }
  .fullmenu-options li { font-size: 13px; }
  .fullmenu-section-notes,
  .fullmenu-price-note { font-size: 12px; }
  .fullmenu-no-results p { font-size: 13px; }
  .fullmenu-order-banner p:not(.eyebrow) { font-size: 13px; }
  .fullmenu-hero-actions { flex-wrap: wrap; gap: 18px; }
  .fullmenu-hero-art > span,
  .about-food-caption { font-size: 11px; }
}
