/* EatsOne SAG V7.149 — compact mobile-only footer design.
   Desktop/tablet styles from V7.148 remain untouched.
   The branch-specific phone/email and social links are still populated by V7.147/V7.148 JS.
*/
@media (max-width:620px) {
  body footer.eo-footer-v716 {
    --eo-mobile-footer-line: rgba(99,78,60,.14);
    background:#f6f2eb;
  }
  body footer.eo-footer-v716 .eo-footer-container-v716 {
    width:calc(100% - 40px);
    max-width:540px;
  }
  body footer.eo-footer-v716 .eo-footer-main-v716,
  body footer.eo-footer-v716.eo-footer-no-contact-v7148 .eo-footer-main-v716 {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"brand" "nav" "contact";
    gap:0;
    padding:0;
  }
  body footer.eo-footer-v716.eo-footer-no-contact-v7148 .eo-footer-main-v716 {
    grid-template-areas:"brand" "nav";
  }
  /* Brand: logo + store name in one compact row, social icons below. */
  body footer.eo-footer-v716 .eo-footer-brand-v716 {
    display:grid;
    grid-template-columns:46px minmax(0,1fr);
    grid-template-rows:auto auto auto;
    align-items:center;
    column-gap:12px;
    row-gap:2px;
    min-width:0;
    padding:22px 0 19px;
  }
  body footer.eo-footer-v716 .eo-footer-brand-v716 > img {
    grid-column:1;
    grid-row:1 / 3;
    width:46px;min-width:46px;max-width:46px;
    flex:0 0 46px;
    max-height:59px;
    border-radius:10px;
  }
  body footer.eo-footer-v716 .eo-footer-brand-copy-v716 {display:contents;}
  body footer.eo-footer-v716 .eo-footer-brand-copy-v716 strong {
    grid-column:2;grid-row:1;
    display:block;
    align-self:end;
    margin:0;
    color:#30271f;
    font-size:17px;
    font-weight:600;
    line-height:1.4;
    letter-spacing:.02em;
    overflow-wrap:anywhere;
  }
  body footer.eo-footer-v716 .eo-footer-brand-copy-v716 small {
    grid-column:2;grid-row:2;
    display:block;
    align-self:start;
    margin:2px 0 0;
    color:#9a8d80;
    font-size:10px;
    line-height:1.45;
    letter-spacing:.15em;
  }
  body footer.eo-footer-v716 .eo-footer-social-v717 {
    grid-column:1 / -1;grid-row:3;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:nowrap;
    width:100%;max-width:100%;
    margin:15px 0 0;
    gap:10px;
  }
  body footer.eo-footer-v716 .eo-footer-social-v717 > a,
  body footer.eo-footer-v716 .eo-footer-social-v717 > span {
    display:inline-flex;
    flex:0 0 38px;
    width:38px;min-width:38px;
    height:38px;min-height:38px;
    padding:7px;
    border-radius:50%;
  }
  body footer.eo-footer-v716 .eo-footer-social-v717 img {
    display:block;
    min-width:0;min-height:0;
    width:100%;height:100%;
    max-width:24px;max-height:24px;
    object-fit:contain;
  }
  /* Navigation: tidy three-column grid on standard phones. */
  body footer.eo-footer-v716 .eo-footer-right-v716 {
    min-width:0;
    padding:20px 0 18px;
    border-top:1px solid var(--eo-mobile-footer-line);
  }
  body footer.eo-footer-v716 .eo-footer-section-title-v7148 {
    margin:0 0 11px;
    font-size:12px;
    font-weight:700;
    line-height:1.6;
    letter-spacing:.07em;
  }
  body footer.eo-footer-v716 .eo-footer-links-v716 {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:stretch;
    justify-content:stretch;
    column-gap:12px;
    row-gap:0;
    margin:0;
    padding:0;
  }
  body footer.eo-footer-v716 .eo-footer-links-v716 a {
    display:flex;
    align-items:center;
    width:100%;
    min-height:38px;
    margin:0;
    padding:7px 0;
    font-size:12px;
    font-weight:400;
    line-height:1.4;
    letter-spacing:.015em;
    white-space:normal;
    overflow-wrap:break-word;
    border-bottom:1px solid rgba(99,78,60,.07);
  }
  /* Current branch: a distinct contact card rather than a detached column. */
  body footer.eo-footer-v716 .eo-footer-contact-v7147 {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    margin:1px 0 20px;
    padding:15px 16px 13px;
    border:1px solid #e7dcd0;
    border-radius:13px;
    background:#fffcf7;
    box-shadow:0 2px 9px rgba(87,68,51,.025);
    min-width:0;
    max-width:100%;
    line-height:1.6;
  }
  body footer.eo-footer-v716 .eo-footer-contact-v7147 .eo-footer-section-title-v7148 {
    margin:0 0 6px;
  }
  body footer.eo-footer-v716 .eo-footer-contact-store-v7147 {
    margin:0 0 11px;
    color:#584535;
    font-size:13px;
    font-weight:700;
    line-height:1.45;
  }
  body footer.eo-footer-v716 .eo-footer-contact-line-v7147 {
    display:grid;
    grid-template-columns:65px minmax(0,1fr);
    gap:7px;
    align-items:baseline;
    margin:0;
    padding:4px 0;
    max-width:100%;
  }
  body footer.eo-footer-v716 .eo-footer-contact-line-v7147 > span:first-child {
    min-width:0;
    color:#938578;
    font-size:11px;
    white-space:nowrap;
  }
  body footer.eo-footer-v716 .eo-footer-contact-line-v7147 a,
  body footer.eo-footer-v716 .eo-footer-contact-line-v7147 > span:last-child {
    min-width:0;
    font-size:12px;
    line-height:1.55;
    color:#49392d;
    overflow-wrap:anywhere;
  }
  /* Bottom legal/credits: a low-contrast, compact block. */
  body footer.eo-footer-v716 .eo-footer-bottom-v7148 {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:6px;
    margin:0;
    padding:17px 0 calc(26px + env(safe-area-inset-bottom,0px));
    border-top:1px solid var(--eo-mobile-footer-line);
    text-align:center;
  }
  body footer.eo-footer-v716 .eo-footer-bottom-v7148 .eo-footer-credits-v727 {
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:center;
    gap:4px;
    width:100%;
    margin:0;
    padding:0;
    overflow:visible;
    white-space:normal;
  }
  body footer.eo-footer-v716 .eo-footer-bottom-v7148 .eo-footer-credits-v727 > .eo-footer-copyright-v716,
  body footer.eo-footer-v716 .eo-footer-bottom-v7148 .eo-footer-credits-v727 > .eo-footer-designer-v726,
  body footer.eo-footer-v716 .eo-footer-bottom-v7148 .eo-footer-legal-v716 {
    display:block;
    width:100%;
    margin:0;
    padding:0;
    font-family:Arial,"Noto Sans TC",sans-serif;
    font-size:10px;
    line-height:1.7;
    letter-spacing:0;
    text-align:center;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  body footer.eo-footer-v716 .eo-footer-bottom-v7148 .eo-footer-legal-v716 {
    color:#968b80;
    margin-top:2px;
  }
  body.order-front-v7 footer.eo-footer-v716 .eo-footer-main-v716 {padding-bottom:0;}
  body.order-front-v7 footer.eo-footer-v716 .eo-footer-bottom-v7148 {
    padding-bottom:calc(98px + env(safe-area-inset-bottom,0px));
  }
}
/* Extremely narrow devices use two navigation columns and smaller icon spacing. */
@media(max-width:359px) {
  body footer.eo-footer-v716 .eo-footer-links-v716 {
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:14px;
  }
  body footer.eo-footer-v716 .eo-footer-social-v717 {gap:7px;}
  body footer.eo-footer-v716 .eo-footer-social-v717 > a,
  body footer.eo-footer-v716 .eo-footer-social-v717 > span {
    flex-basis:35px;width:35px;min-width:35px;height:35px;min-height:35px;
  }
  body footer.eo-footer-v716 .eo-footer-brand-copy-v716 strong {font-size:16px;}
}
