/* Catalog card proportions and commerce treatment, scoped to the home selection. */
.home-featured{width:100%;margin:0 auto;padding:80px 0 35px}
.home-featured .hf-heading{padding:0 clamp(20px,3vw,54px);margin:0 0 35px}
.hf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px}
.hf-card{min-width:0;background:#fff}
.hf-media{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#f4f4f1;color:inherit;text-decoration:none}
.hf-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.hf-placeholder{display:grid;height:100%;place-items:center;color:#aaa;font-size:28px}
.hf-store-only{position:absolute;z-index:1;bottom:14px;left:14px;padding:6px 8px;background:rgba(255,255,255,.9);color:#252525;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.hf-action{position:absolute;right:14px;bottom:14px;padding:8px 11px;background:rgba(255,255,255,.9);color:#222;font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s}
.hf-copy{min-height:110px;padding:15px 11px 28px;text-align:center}
.hf-copy h3{margin:0 0 7px;overflow:hidden;font-size:13px;font-weight:400;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.hf-copy a{color:inherit;text-decoration:none}
.hf-price{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center;margin:0;font-size:12px}
.hf-price strong{color:#262626;font-weight:500;white-space:nowrap}.hf-price del{color:#92928d;white-space:nowrap}.hf-price.is-discounted strong{color:#c95750}
.hf-commerce{text-align:center}
.hf-bonus{display:flex;width:max-content;gap:3px;align-items:center;justify-content:center;margin:4px auto 0;padding:4px 8px;border-radius:999px;background:rgba(168,207,63,.13);color:#6f862e;font-size:9px;font-weight:600;line-height:1;white-space:nowrap}
.hf-bonus small{color:#7f886c;font-size:8px;font-weight:400}
.hf-media:focus-visible,.hf-copy a:focus-visible{outline:2px solid #43a2c2;outline-offset:-3px}
@media(hover:hover){.hf-media:hover img{transform:scale(1.025)}.hf-media:hover .hf-action,.hf-media:focus-visible .hf-action{opacity:1;transform:none}}
@media(max-width:780px){
 .home-featured{padding:44px 0 24px}.home-featured .hf-heading{padding:0 18px;margin-bottom:24px;gap:18px;align-items:flex-start;flex-direction:column}.home-featured .hf-heading h2{font-size:clamp(36px,9vw,54px)}
 .hf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px}
 .hf-copy{min-height:92px;padding:12px 7px 22px}.hf-copy h3{margin-bottom:5px;font-size:11px}
 .hf-price{gap:4px;font-size:10px;line-height:1.45}.hf-commerce{display:flex;flex-wrap:wrap;gap:5px;align-items:center;justify-content:center}
 .hf-bonus{flex:0 0 auto;margin:0;padding:3px 5px;font-size:8px}.hf-bonus small{display:none}
 .hf-store-only{bottom:8px;left:8px;padding:5px 6px;font-size:8px}.hf-action{display:none}
}
@media(prefers-reduced-motion:no-preference){
 .home-featured .hf-revealing{animation:hf-appear .9s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--hf-delay,0ms)}
 @keyframes hf-appear{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
}
@media(prefers-reduced-motion:reduce){.hf-media img,.hf-action{transition:none;transform:none!important}}
