/* Product hero photography – separate from global page styles */
.product-hero .product-portrait {
  position: relative;
  width: min(100%, 405px);
  height: 405px;
  justify-self: end;
  border: 1px solid rgba(117,167,228,.32);
  border-radius: 20px;
  overflow: hidden;
  background: #142437;
  box-shadow: 0 28px 70px rgba(0,0,0,.28),0 0 0 6px rgba(110,157,217,.045);
}
.product-hero .product-portrait img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center 35%;
}
.product-hero .product-portrait::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 72%,rgba(8,19,33,.12) 100%);
}
@media(max-width:900px) {
  .product-hero .product-portrait {height:360px;width:min(100%,360px)}
}
@media(max-width:700px) {
  .product-hero .product-portrait {height:auto;width:min(100%,460px);aspect-ratio:1.3;justify-self:center}
  .product-hero .product-portrait img {object-position:center 33%}
}
@media(max-width:420px) {
  .product-hero .product-portrait {aspect-ratio:1.12}
}
