/* Bound slides and original photos explicitly; portrait intrinsic sizes cannot expand a grid track. */
.detail-main-image{aspect-ratio:4/5;min-height:0}
.gallery-track{position:absolute;inset:0;display:flex;height:100%;padding:0;gap:0;align-items:stretch}
.gallery-slide{position:relative;display:block;flex:0 0 100%;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;padding:0;margin:0}
.gallery-slide>img,.gallery-slide>.cup-cutout{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;box-sizing:border-box;object-fit:contain;object-position:50% 50%;padding:12px;transform:none}
.gallery-thumbnails img{object-fit:contain;object-position:center}
.lightbox-track>div{position:relative;min-height:0;overflow:hidden}
.lightbox-track>div>img{position:absolute;inset:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
a.product-open,a.product-name,a.hero-product,a.brand{text-decoration:none;color:inherit}
a.product-open{height:100%}
.seo-product-image{position:relative;aspect-ratio:4/5;background:#f8efea;border-radius:27px;overflow:hidden}
.seo-product-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:12px}
.seo-links{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.seo-links a{padding:9px 12px;border-radius:16px;background:#fff;border:1px solid var(--line);color:var(--berry);font-size:.875rem;text-decoration:none}
.seo-fallback h1{font-family:Bricolage,Geist,sans-serif;font-size:clamp(1.9rem,7vw,2.6rem);line-height:1.15}
.seo-fallback .product-open img{object-fit:contain}
.store-footer{padding:18px 0 2px;text-align:center;font-size:.8125rem;color:var(--muted)}
.store-footer a,.store-footer button{color:inherit;font:inherit;border:0;background:transparent;padding:8px;text-decoration:underline}
.privacy-copy{max-width:680px;line-height:1.7}
.privacy-copy h2{font-size:1.25rem;margin-top:25px}
.cookie-choice{position:fixed;left:16px;right:16px;bottom:calc(110px + env(safe-area-inset-bottom));z-index:25;max-width:470px;margin:auto;background:#fffaf6;border:1px solid #dec1cf;border-radius:22px;padding:18px;box-shadow:0 12px 35px #59203c33;color:#52273b}
.cookie-choice p{font-size:.9375rem;line-height:1.5;margin:0 0 12px}
.cookie-choice div{display:flex;gap:10px}
.cookie-choice button{flex:1;min-height:44px;border:1px solid #8d164c;border-radius:14px;background:#8d164c;color:white;font:inherit}
.cookie-choice button:last-child{background:white;color:#8d164c}
.cookie-choice a{color:#8d164c;font-size:.8125rem}
@media(min-width:800px){.detail-main-image{aspect-ratio:4/5;max-height:650px}.cookie-choice{left:auto;right:24px;margin:0;width:420px}}
