/* Product-linked tones stay with the product when categories are filtered. */
#espresso{--card-paper:#f6ede5;--photo-base:#38231e;--photo-glow:#76523d;--card-accent:#704028;--photo-ink:#f1d6b7}
#americano{--card-paper:#f0e7dc;--photo-base:#584036;--photo-glow:#916a4b;--card-accent:#69432c;--photo-ink:#f5dec4}
#latte{--card-paper:#f8f0e4;--photo-base:#d5b18a;--photo-glow:#f2debe;--card-accent:#79532e;--photo-ink:#523820}
#capuchino{--card-paper:#fcf7ee;--photo-base:#e9dac5;--photo-glow:#fff9ec;--card-accent:#735136;--photo-ink:#624630}
#cold-brew{--card-paper:#efe8df;--photo-base:#393332;--photo-glow:#876045;--card-accent:#6d4029;--photo-ink:#ead2b2}
#iced-latte{--card-paper:#f3eee6;--photo-base:#c7b7a6;--photo-glow:#e9ddd0;--card-accent:#69513c;--photo-ink:#4d3b30}
#croissant{--card-paper:#fbefda;--photo-base:#d3a256;--photo-glow:#f3d79d;--card-accent:#885421;--photo-ink:#5b3c18}
#rollo-canela{--card-paper:#f7e7d9;--photo-base:#b98054;--photo-glow:#e9c69f;--card-accent:#804b2e;--photo-ink:#51301b}
.menu-grid{gap:28px 24px;padding:12px 2px 18px;align-items:stretch}
.menu-item{display:flex;flex-direction:column;padding:0 22px 16px;border:1px solid #4e302117;border-radius:22px;overflow:hidden;color:#30231d;background:var(--card-paper);box-shadow:0 3px 5px #38231c05,0 14px 30px #38231c0b;transition:transform 260ms var(--ease),box-shadow 260ms var(--ease)}
.menu-item .product-visual{flex:none;height:224px;margin:0 -22px 20px;overflow:hidden;border-radius:21px 21px 0 0;background:radial-gradient(ellipse at 50% 35%,var(--photo-glow),transparent 78%),var(--photo-base);border-bottom:1px solid #4e30210b}
.menu-item .product-visual::after{content:"";position:absolute;inset:12px;border:1px solid #fff7eb25;border-radius:13px;pointer-events:none}
.menu-item .product-number{top:22px;left:23px;color:var(--photo-ink);font-size:9px;letter-spacing:1.8px;opacity:.85}
.menu-item .product-art.product-photo{padding:17px 26px 9px;filter:drop-shadow(0 12px 8px #24130b30)}
#espresso .product-art.product-photo{padding:33px 40px 15px}
.menu-item[data-category=frios] .product-art.product-photo{padding:13px 30px 8px}
.menu-item .item-top{align-items:center;margin-bottom:13px;color:var(--card-accent);font-size:8px;letter-spacing:1.05px;font-weight:600}
.menu-item .item-size{color:#65564b;font-size:10px;letter-spacing:0;font-weight:500}
.menu-item .item-name-row{align-items:flex-start;gap:10px;min-height:47px}
.menu-item h3{font-size:23px;line-height:1.12;letter-spacing:-.8px;margin:0;flex:1}
.menu-item .item-price{font-size:17px;line-height:1;letter-spacing:-.3px;color:var(--card-accent);background:#fffaf1a6;border:1px solid #684b2c1c;border-radius:99px;padding:9px 10px;margin-top:-4px}
.menu-item .item-description{font-size:12px;line-height:1.75;color:#5e4e43;min-height:66px;max-width:none;margin:10px 0 18px;flex:1}
.menu-item .item-detail{color:var(--card-accent);border-color:#654a3526;min-height:42px;padding:13px 0 0;font-size:11px;letter-spacing:0;font-weight:600;text-decoration:none}
.menu-item .item-detail:hover{text-decoration:underline;text-underline-offset:4px}
.menu-item .item-detail:focus-visible{outline-color:var(--card-accent);outline-offset:3px;border-radius:3px}
@media(hover:hover) and (pointer:fine){.menu-item:hover{transform:translateY(-5px);box-shadow:0 5px 10px #38231c08,0 20px 38px #38231c18}}
@media(max-width:1100px){.menu-item .product-visual{height:228px}.menu-item .item-description{min-height:66px}}
@media(max-width:800px){.menu-grid{gap:24px}.menu-item .product-visual{height:218px}.menu-item h3{font-size:23px}}
@media(max-width:560px){
 .menu-grid{gap:25px;padding:8px 2px 14px}.menu-item{padding:0 23px 16px;border-radius:23px}
 .menu-item .product-visual{height:250px;margin-inline:-23px;margin-bottom:21px;border-radius:22px 22px 0 0}
 .menu-item .product-art.product-photo{padding:20px 32px 12px}#espresso .product-art.product-photo{padding:38px 47px 18px}
 .menu-item[data-category=frios] .product-art.product-photo{padding:15px 40px 10px}
 .menu-item h3{font-size:27px}.menu-item .item-name-row{min-height:34px;align-items:center}
 .menu-item .item-price{font-size:19px;padding:10px 12px;margin-top:0}
 .menu-item .item-top{font-size:9px}.menu-item .item-size{font-size:11px}
 .menu-item .item-description{font-size:13px;min-height:0;margin-top:14px;margin-bottom:18px}
 .menu-item .item-detail{font-size:12px;min-height:44px}
}
@media(prefers-reduced-motion:reduce){.menu-item,.menu-item:hover{transform:none!important;transition:none}}
