/* Full-frame banner layout. No new artwork is implied by this CSS release. */
body .wrapper .site-hero,
body .wrapper .page-shell .page-hero {
  border-radius: 0; overflow: visible;
}
body .wrapper .site-hero .portal-banner {
  display: block; width: 100%; height: auto; min-height: 0; max-height: none;
  padding: 0; margin: 0; overflow: visible; border-radius: 0;
}
body .wrapper .site-hero .portal-banner img,
body .wrapper .hollow-banner-image {
  display: block; position: static; width: 100%; height: auto;
  max-width: 100%; max-height: none; min-height: 0;
  margin: 0; padding: 0; object-fit: contain; object-position: center;
  border: 0; border-radius: 0; transform: none; clip-path: none;
}
/* The three legacy images are 1600 x 320. Show their complete 5:1 canvas. */
body .wrapper .page-shell .page-hero::before,
body .wrapper .page-hero::before {
  height: auto; min-height: 0; max-height: none; aspect-ratio: 5 / 1;
  background-size: contain; background-position: center;
  transform: none; clip-path: none; border-radius: 0;
}
/* Prepared for the generated 3:1 banners after their verified image import. */
body .wrapper .page-shell .page-hero.hollow-fullframe::before,
body .wrapper .page-hero.hollow-fullframe::before { content: none; display: none; }
body .wrapper .page-hero.hollow-fullframe > .hollow-banner-image {
  grid-column: 1 / -1; grid-row: 1; align-self: start; justify-self: stretch;
}
body .wrapper .page-hero.hollow-fullframe > .page-hero__copy {
  position: static; grid-row: 2; min-width: 0; transform: none;
}
body .wrapper .page-hero.hollow-fullframe > :is(.shop-login-card,.shop-balance-card) {
  position: static; grid-row: 2; transform: none;
}
@media (max-width: 700px) {
  body .wrapper .page-hero.hollow-fullframe > :is(.shop-login-card,.shop-balance-card) { grid-row: auto; }
}
