/* Luna Premier V4.11 — preserve complete English packs and PSA slab.
   Scoped overrides; Japanese 30th box and other design sections are unchanged. */

/* The previous pack fan had min-height:270px inside a 232px art panel. It
   placed the center of the fan below the art panel's center and cut off the
   bottoms of all three packs. Correct the parent first. */
.category-art.champagne .pack-fan {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0 !important;
    max-height: none;
    overflow: visible;
    display: block;
}
/* Square product photos contain a packet occupying roughly 52% of the source
   image width and 95% of its height. Each crop window exactly matches the
   packet silhouette, with a few pixels of clearance at both ends. */
.category-art.champagne .pack-fan .pack-shot {
    width: min(37%, 105px);
    height: auto;
    aspect-ratio: 0.54;
    top: 50%;
    left: 50%;
    border-radius: 3px;
    overflow: hidden;
}
.category-art.champagne .pack-fan .pack-shot > img.category-actual-image {
    width: 190% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: initial !important;
    transform: translate(-50%,-50%) !important;
}
.category-art.champagne .pack-fan .pack-fan-1 {
    transform: translate(-77%,-50%) rotate(-15deg);
}
.category-art.champagne .pack-fan .pack-fan-2 {
    transform: translate(-50%,-50%);
}
.category-art.champagne .pack-fan .pack-fan-3 {
    transform: translate(-23%,-50%) rotate(15deg);
}
.category-card:hover .pack-fan .pack-shot.pack-fan-1 {
    transform: translate(-79%,-50%) rotate(-16deg);
}
.category-card:hover .pack-fan .pack-shot.pack-fan-2 {
    transform: translate(-50%,-51%);
}
.category-card:hover .pack-fan .pack-shot.pack-fan-3 {
    transform: translate(-21%,-50%) rotate(16deg);
}

/* Previously the PSA frame was 200 x 323px inside an art panel only 232px
   tall. This cropped the GEM MT 10 label and the bottom of the case. Limit
   the physical display to <= 210px and center the complete slab. */
.category-art.purple .psa-photo-frame {
    position: relative;
    display: block;
    width: min(46%, 128px);
    height: auto;
    aspect-ratio: 0.61;
    max-height: 210px;
    flex: none;
    overflow: hidden;
    border-radius: 5px;
}
.category-art.purple .psa-photo-frame > img.category-slab-img {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 175% !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: initial !important;
    object-position: center !important;
    transform: translate(-50%,-50%) !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
}
/* If alternate slab photo is an uncropped portrait, show it in full. */
.category-art.purple .psa-photo-frame > img.category-slab-img[data-fallback-done="1"] {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}
@media(max-width:1000px) and (min-width:601px) {
    .category-art.champagne .pack-fan .pack-shot {width:min(38%,99px)}
    .category-art.purple .psa-photo-frame {width:min(47%,122px)}
}
@media(max-width:600px) {
    .category-art.champagne .pack-fan .pack-shot {width:min(49%,76px)}
    .category-art.purple .psa-photo-frame {width:min(80%,108px)}
}
@media(max-width:360px) {
    .category-art.champagne .pack-fan .pack-shot {width:min(49%,70px)}
    .category-art.purple .psa-photo-frame {width:min(80%,102px)}
}
@media(prefers-reduced-motion:reduce) {
    .category-art.champagne .pack-fan .pack-shot {transition:none}
}
