/* GLB is primary. The supplied front image remains an immediate loading fallback. */
.brand-art{perspective:1100px;perspective-origin:50% 45%;padding:40px 35px 105px;isolation:isolate}
.product-object{position:relative;z-index:2;flex:none;transform:rotate(-3deg);pointer-events:none;transition:opacity .25s}
.brand-art.has-model .product-object{opacity:0;visibility:hidden}
.product-viewer{position:absolute;inset:35px 12px 104px;z-index:4;touch-action:pan-y;outline-offset:-4px;border-radius:15px}
.product-viewer>canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity .3s}
.brand-art.has-model .product-viewer>canvas{opacity:1}
.product-viewer:focus-visible{outline:2px solid var(--brand-ink)}
.product-object.is-packshot{height:clamp(360px,36vw,535px);aspect-ratio:var(--pack-ratio);width:auto}
.product-object.is-packshot>img{position:absolute;left:var(--pack-left);top:var(--pack-top);width:var(--pack-width);height:auto;max-width:none;transform:translateZ(24px);user-select:none;-webkit-user-select:none}
.product-object.is-collection{width:86%;aspect-ratio:1.1;display:flex;align-items:center;justify-content:center}
.product-object.is-collection>img{width:100%;height:auto;max-height:450px;object-fit:contain;background:#fff;padding:14px;border-radius:9px;box-shadow:0 24px 50px #29030b26;transform:translateZ(24px)}
.brand-art.is-product-moving .product-object{will-change:transform}
.product-ground{position:absolute;z-index:0;left:50%;bottom:112px;width:32%;height:21px;background:#230b15;border-radius:50%;opacity:.22;filter:blur(14px);transform:translateX(calc(-50% + var(--shadow-x,0px))) scaleX(var(--shadow-scale,1));pointer-events:none}
.brand-art .brand-halo{transform:translate(calc(-50% + var(--halo-x,0px)),calc(-50% + var(--halo-y,0px)));pointer-events:none}
.brand-art .brand-art-letter{pointer-events:none}
.brand-art-label{top:28px;left:28px;bottom:auto;right:auto;font-size:8px;letter-spacing:.12em;opacity:.7;max-width:75%}
.product-caption{position:absolute;left:15px;right:15px;bottom:80px;text-align:center;font-size:11px;letter-spacing:.025em;line-height:1.4;z-index:3}
.product-view-controls{position:absolute;left:12px;right:12px;bottom:53px;display:flex;align-items:center;justify-content:center;gap:17px;z-index:5}
.product-interaction-hint{display:flex;align-items:center;justify-content:center;gap:8px;font-size:7px;letter-spacing:.1em;opacity:.65}
.product-view-controls>button{font-size:10px;border-bottom:1px solid #ffffff40;padding:2px 0;color:inherit;line-height:1.4}
.product-view-controls>button>span{font-size:8px;margin-left:4px}
.product-interaction-hint>span{font-size:17px;line-height:1}
@media(min-width:1700px){.brand-art{padding-top:55px;padding-bottom:110px}.product-object.is-packshot{height:560px}}
@media(max-width:1150px){.brand-art{padding:55px 20px 110px}.product-object.is-packshot{height:430px}}
@media(max-width:850px){.brand-art{padding:55px 15px 110px}.product-object.is-packshot{height:375px}.product-caption{font-size:10px;bottom:83px}.product-interaction-hint{font-size:6px}.brand-art-label{left:18px;top:28px;font-size:7px}.product-ground{bottom:112px}}
@media(max-width:560px){.brand-art{height:430px;padding:25px 30px 105px}.product-object.is-packshot{height:300px}.product-object.is-collection{width:85%;max-height:300px}.product-object.is-collection>img{max-height:290px;padding:9px}.product-caption{font-size:10px;bottom:75px}.product-interaction-hint{font-size:6px;max-width:150px;gap:6px}.product-view-controls{bottom:47px;gap:12px}.product-view-controls>button{min-height:30px}.product-view-controls>button>span{font-size:7px}.product-viewer{inset:17px 8px 104px}.brand-art-label{top:24px;left:25px;max-width:60%;font-size:6px}.product-ground{bottom:104px;width:30%}.brand-star{top:23px;width:27px;height:27px}}
@media(prefers-reduced-motion:reduce){.product-object{transform:none}.product-ground{transform:translateX(-50%)}.brand-art .brand-halo{transform:translate(-50%,-50%)}}
