/* Compact mobile banners: 220px to 165px, with room to grow for long copy. */
@media (max-width: 600px) {
  .home-banners .managed-banner { min-height: 165px; }
  .home-banners .managed-banner-body { padding: 14px 16px; }
  .home-banners .managed-banner h2 { font-size: 18px; line-height: 1.25; margin-bottom: 4px; }
  .home-banners .managed-banner p { font-size: 12px; line-height: 1.4; margin-bottom: 8px; }
  .home-banners .managed-banner p:empty { display: none; }
  .home-banners .managed-banner-price { font-size: 14px; margin: 6px 0; }
  .home-banners .managed-banner .btn {
    font-size: 12px; padding: 8px 16px; min-height: 44px;
    background: color-mix(in srgb, var(--orange) 85%, transparent);
    color: #111; box-shadow: none;
  }
}
.pairings{margin:20px 0;padding:16px;border:1px solid #333;border-radius:18px}.pairings h3{margin:0 0 12px}.pairing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pairing-card{display:flex;flex-direction:column;align-items:stretch;gap:8px;background:#191919;padding:12px;border-radius:14px;min-width:0}.pairing-detail{display:flex;align-items:center;gap:10px;text-align:start;background:none;border:0;color:inherit;padding:0;cursor:pointer;font:inherit;font-weight:600}.pairing-detail img{width:64px;height:64px;object-fit:cover;border-radius:10px;flex-shrink:0}.pairing-detail span{overflow-wrap:anywhere}.pairing-price{font-size:14px}.pairing-card .badge{align-self:flex-start}.pairing-card>.btn{margin-top:auto;min-height:44px;padding:8px}.home-banners{margin:20px 0}.banner-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.banner-track::-webkit-scrollbar{display:none}.managed-banner{flex:0 0 100%;min-width:0;scroll-snap-align:start;position:relative;background:#211a10;border:1px solid #4c3516;border-radius:20px;overflow:hidden;display:flex;align-items:flex-end;min-height:260px}.managed-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.56) 48%,rgba(0,0,0,.2) 100%);pointer-events:none}.managed-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.managed-banner-body{position:relative;z-index:1;padding:28px;max-width:680px;min-width:0}.managed-banner h2{margin:0 0 8px;overflow-wrap:anywhere;color:#fff}.managed-banner p{margin:0 0 12px;overflow-wrap:anywhere;color:#eee}.managed-banner-price{margin:10px 0;font-weight:700}.managed-banner .btn{width:auto;min-height:44px}.banner-dots{display:flex;justify-content:center;gap:2px;margin-top:4px}.banner-dots button{width:36px;height:36px;background:none;border:0;cursor:pointer;display:grid;place-items:center}.banner-dots button:after{content:'';width:8px;height:8px;background:#666;border-radius:50%}.banner-dots button[aria-current=true]:after{background:#ff9b18;width:20px;border-radius:6px}.pairing-detail:focus-visible,.banner-dots button:focus-visible{outline:2px solid #ff9b18;outline-offset:3px}@media(max-width:600px){.pairing-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity}.pairing-card{flex:0 0 170px;scroll-snap-align:start}.managed-banner{min-height:220px}.managed-banner:after{background:linear-gradient(0deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.42) 75%,rgba(0,0,0,.18) 100%)}.managed-banner-body{padding:18px}.managed-banner h2{font-size:22px}}
