/* Preserve informational artwork without cropping embedded text. */
img.image-fallback{object-fit:contain!important;background:#fff2a8;padding:12px}
.brand img.image-fallback,.footer-brand img.image-fallback{background:transparent;padding:0}
.product-image img.image-fallback,.category-card img.image-fallback,.cart-line img.image-fallback,.qr-box img.image-fallback{object-fit:cover!important;padding:0}
.promise{align-items:center}
.promise-photo{width:100%;overflow:visible;background:#f7f1eb;border-radius:10px}
.promise-photo img{display:block;width:100%;height:auto!important;min-height:0!important;max-height:none;object-fit:contain!important;object-position:center;border-radius:10px}
.header .brand img{width:140px;height:60px;object-fit:cover;object-position:center 42%}
.search{min-width:0;max-width:820px;height:38px}
.search input{min-width:0}
.empty-results{grid-column:1/-1;display:grid;gap:6px;place-items:center;min-height:180px;padding:28px;border:1px solid #e4e4e4;border-radius:8px;background:#fff;text-align:center;color:#777}
.empty-results b{color:#111;font-size:18px}

@media(max-width:680px){
  .promise-photo img{height:auto!important;min-height:0!important;object-fit:contain!important}
  .header{grid-template-columns:86px minmax(0,1fr) 104px;gap:6px;padding-left:8px;padding-right:8px}
  .header .brand img{width:84px;height:36px;object-fit:cover;object-position:center 42%}
  .search{width:100%;height:32px;padding:0 8px}
  .search input{font-size:12px}
  .header-actions{min-width:0;gap:5px}
  .header-actions .icon-button,
  .header-actions #accountBtn{
    width:36px;
    min-width:36px;
    height:36px;
    padding:3px;
    gap:1px;
    font-size:16px;
  }
  .header-actions #accountBtn small{font-size:7px;line-height:1}
  .cart-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    height:36px;
    min-width:64px;
    padding:9px 29px 9px 8px;
    position:relative;
    overflow:visible;
    line-height:1;
    white-space:nowrap;
  }
  .cart-button span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-width:18px;
    height:18px;
    position:absolute;
    top:50%;
    right:5px;
    transform:translateY(-50%);
    z-index:1;
    margin-left:0;
    padding:0 5px;
    border-radius:9px;
    background:var(--yellow);
    color:#000;
    font-size:11px!important;
    line-height:1;
    font-weight:900;
    opacity:1;
    visibility:visible;
  }
  .nav{
    position:sticky;
    top:0;
    z-index:70;
    height:40px;
    min-height:40px;
    display:grid;
    grid-template-columns:repeat(7,auto);
    column-gap:4px;
    overflow:hidden;
    justify-content:space-between;
    align-items:center;
    padding:0 6px;
    background:#fff;
    color:#222;
  }
  .nav .mobile-menu{
    display:none;
  }
  .nav .nav-links{
    display:contents;
    position:static;
    flex:1;
    grid-template-columns:none;
    justify-content:normal;
    align-items:normal;
    gap:5px;
    width:auto;
    height:40px;
    min-width:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    overflow:hidden;
    overflow-y:hidden;
    white-space:nowrap;
    visibility:visible;
    opacity:1;
  }
  .nav .nav-links.open{
    display:contents;
  }
  .nav .nav-links a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-width:0;
    min-height:40px;
    padding:0;
    border-radius:0;
    background:transparent;
    color:#222;
    font-size:7px;
    font-weight:800;
    line-height:1;
  }
  .nav .nav-links a:active,
  .nav .nav-links a:hover{
    background:#f6f6f3;
  }
  .nav .nav-links .deal{
    justify-content:center;
    margin-top:0;
    background:transparent;
    color:#111;
  }
  .nav .call{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    min-height:40px;
    color:#777;
    font-size:7px;
    font-weight:800;
    line-height:1;
    text-transform:none;
    letter-spacing:0;
    opacity:1;
    white-space:nowrap;
  }
  .footer-main{
    grid-template-columns:1fr 1fr;
    gap:16px 18px;
    padding:26px 18px;
  }
  .footer-brand{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    gap:14px;
  }
  .footer-brand img{
    width:104px;
    height:44px;
    object-fit:cover;
    object-position:center 42%;
  }
  .footer-main h3{
    margin:0 0 8px;
    font-size:13px;
  }
  .footer-main a{
    margin:6px 0;
    font-size:11px;
  }
  .footer-main p{
    margin:0;
    font-size:11px;
    line-height:1.35;
  }
  .newsletter{
    grid-column:1/-1;
  }
  .newsletter form{
    margin-top:8px;
  }
  .newsletter input{
    padding:8px 0;
  }
  .footer-bottom{
    padding:12px 18px;
    gap:4px;
  }
}
