/* Official header/footer styles are loaded from ../skin by all seven pages.
   Keep only the topic's fixed-header spacing and image viewer here. */
html { scroll-behavior: smooth; scroll-padding-top: 150px; overflow-x: clip; }
/* Unlike hidden, clip does not create a scrolling ancestor that traps sticky. */
body.private-im-site { margin: 0; background: #fff; overflow-x: clip; overflow-y: visible; }
.private-im-site > .header { height: 80px; padding-top: 0; }
.private-im-site #navBox { position: fixed; top: 0; width: 100%; z-index: 886; }
.private-im-site .im-topic .topicnav { position: sticky; top: 80px; z-index: 80; }
.private-im-site > .lfooter1 { z-index: 100 !important; }
/* The supplied banner artwork already includes its labels and inset screenshots. */
.private-im-site .hero .hero-banner-art {
  width: 100%;
  min-width: 0;
  align-self: center;
}
.private-im-site .hero .hero-banner-art > img {
  display: block;
  width: 100%;
  height: auto;
}
/* Match the product menu: five links per column, then continue to the right. */
.private-im-site #nav_detail_4 {
  box-sizing: border-box;
  width: 650px;
  max-width: calc(100vw - 48px);
}
.private-im-site #nav_detail_4 .nav_detail_content {
  gap: 40px;
}
.private-im-site #nav_detail_4 .nav_group_item {
  flex: 1;
  min-width: 0;
}
.private-im-site #nav_detail_4 .nav_group_item:first-child {
  flex: 0 0 320px;
}
.private-im-site #nav_detail_4 .nav_group_item:first-child .nav_links {
  grid-template-columns: 180px minmax(0, 1fr);
}
.private-im-site #nav_detail_4 .nav_links {
  grid-auto-flow: column;
  grid-template-columns: none;
  grid-auto-columns: minmax(0, 1fr);
  grid-template-rows: repeat(5, auto);
  column-gap: 20px;
}
.private-im-site .skip { position: absolute; top: -80px; left: 20px; padding: 10px; background: #fff; z-index: 1000; }
.private-im-site .skip:focus { top: 10px; }
.lightbox.im-topic { padding: 45px 28px 20px; border: 1px solid #dee6ef; border-radius: 7px; max-width: min(94vw,1400px); max-height: 93vh; background: #fff; }
.lightbox.im-topic::backdrop { background: #10243cd9; }
@media (max-width: 960px) {
  html { scroll-padding-top: 130px; }
  .private-im-site > .header { height: 60px; }
  .private-im-site .im-topic .topicnav { top: 60px; }
}
@media (max-width: 768px) {
  body.private-im-site { padding-bottom: 70px; }
}
@media (max-width: 640px) {
  html { scroll-padding-top: 118px; }
  .private-im-site > .header { height: 48px; }
  .private-im-site .im-topic .topicnav { top: 48px; }
}
