.page-shell {
  display: flex;
  flex-direction: column;
  position: fixed;
  inset: 0;
  z-index: 9998;
  isolation: isolate;
  overflow: hidden;
}

body {
  overflow: hidden;
}



#global-banner-stack {
  z-index: 20;
  transform: translateY(var(--header-offset, 0px));
  transition: transform 220ms cubic-bezier(.2, .9, .2, 1);
}

.page-scroll-container {
  position: relative;
  flex: 1;
  top: calc(var(--header-height) + var(--banner-stack-height));
  min-height: 0;
  width: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  z-index: 10;
  transform: translateY(var(--header-offset, 0px));
  margin-bottom: var(--header-offset, 0px);
  transition: transform 220ms cubic-bezier(.2, .9, .2, 1), margin-bottom 220ms cubic-bezier(.2, .9, .2, 1);
}
