/* Shared silhouette sizing for the main catalog, power page and detail galleries. */
#power { align-items: stretch; }
#power .power-card-open { flex: none; display: block; }
#power .rig-visual { height: 220px; background: transparent; border: 0; box-shadow: none; --power-photo-size: 188px; }
#power .product-image { --power-photo-size: 220px; }
#power .power-image-stage,
.modal-image.power-image-stage {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  place-items: center;
  padding: 16px 12px 16px calc(9% + 12px);
  overflow: hidden;
}
.power-image-stage .power-image-frame {
  position: relative;
  display: block;
  width: min(100%, var(--power-photo-size, 188px));
  aspect-ratio: 1;
  min-width: 0;
  overflow: hidden;
  background: transparent;
  border: 0;
}
#power .power-image-frame img,
.modal-image.power-image-stage .power-image-frame img {
  position: absolute;
  display: block;
  width: var(--power-image-width, 100%);
  height: var(--power-image-height, 100%);
  left: var(--power-image-left, 0%);
  top: var(--power-image-top, 0%);
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  object-fit: contain;
  object-position: center;
  transform: none !important;
  filter: none;
}
.modal-image.power-image-stage {
  position: relative;
  isolation: isolate;
  align-self: start;
  min-width: 0;
  height: 440px;
  padding-block: 36px 68px;
  --power-photo-size: 320px;
  background: radial-gradient(ellipse at 50% 60%, #6f092645, transparent 70%), #050506;
}
.modal-image.power-image-stage::before {
  content: '';
  position: absolute;
  left: 7%;
  top: 14%;
  bottom: 14%;
  width: 3px;
  background: #ed0033;
  box-shadow: 0 0 22px #ed0033bb;
  z-index: -1;
}
#power .rig-actions { margin-top: auto; padding-top: 14px; }

/* Keep the photo on the card's continuous surface, with an outlined details action. */
#power .power-card-more {
  align-self: flex-start;
  width: fit-content;
  max-width: 100%;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #ed0033;
  border-radius: 4px;
  background: #14090c;
  color: #fff;
  font: inherit;
  font-size: 14px;
  line-height: 1.3;
  text-align: center;
}
#power .power-card-more:hover,
#power .power-card-more:focus-visible {
  background: #310b15;
  border-color: #ff365d;
}

/* Per-photo visible bounds account for transparent margins, without stretching.
   Each silhouette occupies 94% of the same square and stays beyond the red stripe. */
.power-image-frame img[src$="assets/product-464.png"] { --power-image-width: 48.994695%; --power-image-height: 94.000000%; --power-image-left: 25.440318%; --power-image-top: 3.000000%; }
.power-image-frame img[src$="assets/product-463.png"] { --power-image-width: 94.108295%; --power-image-height: 49.274194%; --power-image-left: 2.891705%; --power-image-top: 25.308756%; }
.power-image-frame img[src$="assets/products/nikon-en-el15c-cutout.png"] { --power-image-width: 105.958132%; --power-image-height: 90.064412%; --power-image-left: -2.903382%; --power-image-top: 2.394525%; }
.power-image-frame img[src$="assets/products/sony-np-sa100-cutout.png"] { --power-image-width: 144.205666%; --power-image-height: 106.132214%; --power-image-left: -22.053515%; --power-image-top: -3.164743%; }
.power-image-frame img[src$="assets/products/swit-hb-c420s-cutout.png"] { --power-image-width: 147.756558%; --power-image-height: 103.567681%; --power-image-left: -25.752361%; --power-image-top: -2.129066%; }
.power-image-frame img[src$="assets/products/swit-mino-s210-cutout.png"] { --power-image-width: 190.229249%; --power-image-height: 126.819499%; --power-image-left: -45.300395%; --power-image-top: -14.586298%; }
.power-image-frame img[src$="assets/products/swit-mino-s140-cutout.png"] { --power-image-width: 197.334266%; --power-image-height: 137.779021%; --power-image-left: -48.601399%; --power-image-top: -20.006993%; }
.power-image-frame img[src$="assets/products/upload-8336.png"] { --power-image-width: 98.806370%; --power-image-height: 98.806370%; --power-image-left: 0.833194%; --power-image-top: -0.309304%; }
.power-image-frame img[src$="assets/products/upload-8334.png"] { --power-image-width: 96.619672%; --power-image-height: 96.619672%; --power-image-left: 1.536066%; --power-image-top: 0.958197%; }
.power-image-frame img[src$="assets/products/upload-8332.png"] { --power-image-width: 100.748718%; --power-image-height: 100.748718%; --power-image-left: 2.558120%; --power-image-top: -0.535043%; }
.power-image-frame img[src$="assets/products/batch154/photo8384-1.webp"] { --power-image-width: 62.892900%; --power-image-height: 105.311673%; --power-image-left: 18.440433%; --power-image-top: -2.655836%; }
.power-image-frame img[src$="assets/products/dynacore-d-2an-v217.png"] { --power-image-width: 76.467416%; --power-image-height: 101.956554%; --power-image-left: 10.921348%; --power-image-top: -0.872659%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8382-1.png"] { --power-image-width: 100.175182%; --power-image-height: 73.964964%; --power-image-left: -1.665693%; --power-image-top: 12.948905%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8382-2.png"] { --power-image-width: 101.922348%; --power-image-height: 122.217803%; --power-image-left: -1.005682%; --power-image-top: -8.750000%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8382-3.png"] { --power-image-width: 112.853107%; --power-image-height: 109.224105%; --power-image-left: -7.532957%; --power-image-top: -3.815443%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8380-2.png"] { --power-image-width: 100.400328%; --power-image-height: 93.151764%; --power-image-left: -3.323216%; --power-image-top: 2.190320%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8380-1.png"] { --power-image-width: 81.729771%; --power-image-height: 99.094656%; --power-image-left: 8.381679%; --power-image-top: -0.587786%; }
.power-image-frame img[src$="assets/products/batch154/photo8378-1.webp"] { --power-image-width: 68.890411%; --power-image-height: 105.481735%; --power-image-left: 15.554795%; --power-image-top: -2.687215%; }
.power-image-frame img[src$="assets/products/batch154/photo8378-2.webp"] { --power-image-width: 105.058824%; --power-image-height: 105.249493%; --power-image-left: -2.529412%; --power-image-top: -2.624746%; }
.power-image-frame img[src$="assets/products/batch154/photo8378-3.webp"] { --power-image-width: 100.266667%; --power-image-height: 105.280000%; --power-image-left: -0.133333%; --power-image-top: -2.640000%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8366-1.png"] { --power-image-width: 64.633286%; --power-image-height: 106.926657%; --power-image-left: 17.219323%; --power-image-top: -3.032440%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8366-2.png"] { --power-image-width: 67.055596%; --power-image-height: 107.981227%; --power-image-left: 16.845487%; --power-image-top: -3.176173%; }
.power-image-frame img[src$="assets/products/power-clean-v166/photo8366-3.png"] { --power-image-width: 96.687847%; --power-image-height: 90.714853%; --power-image-left: 1.058777%; --power-image-top: 3.111994%; }
.power-image-frame img[src$="assets/products/amaran-peak-v174.png"] { --power-image-width: 82.919877%; --power-image-height: 99.503852%; --power-image-left: 7.671032%; --power-image-top: 1.334361%; }

@media (max-width: 800px) {
  #power .rig-visual { height: 190px; --power-photo-size: 162px; }
  #power .product-image { --power-photo-size: 162px; }
  #power .power-image-stage { padding-block: 12px; }
  .modal-image.power-image-stage { height: 290px; padding-block: 20px 62px; --power-photo-size: 200px; }
}
@media (max-width: 520px) {
  #power .rig-visual { height: 150px; --power-photo-size: 126px; }
  #power .power-image-stage { padding-inline: calc(9% + 10px) 10px; }
  .modal-image.power-image-stage { height: 245px; padding-block: 18px 58px; --power-photo-size: 165px; }
}
@media (max-width: 360px) {
  #power .rig-visual { height: 130px; --power-photo-size: 106px; }
}
