/* Keep navigation in the page flow, with a quiet shortcut back to the top. */
.site-header{position:relative;top:auto}
:root{scroll-padding-top:24px}
#company,#ib-journey{scroll-margin-top:24px}

.scroll-top{
  position:fixed;
  right:max(20px,env(safe-area-inset-right));
  bottom:calc(72px + env(safe-area-inset-bottom));
  z-index:26;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  padding:0;
  border:1px solid #829cd485;
  border-radius:50%;
  color:#264776;
  background:linear-gradient(135deg,#c5e6fa,#c6b8f4);
  box-shadow:0 5px 20px #24428326,inset 0 1px #eff8ff80;
  cursor:pointer;
  transition:transform .2s,box-shadow .2s;
}
.scroll-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.scroll-top:hover{transform:translateY(-3px);box-shadow:0 9px 25px #24428335}
.scroll-top:focus-visible{outline:3px solid #3973ec;outline-offset:4px}
.scroll-top[hidden]{display:none}
body.menu-open .scroll-top,body.modal-open .scroll-top{visibility:hidden}
html[data-theme="dark"] .scroll-top{
  color:#89e6f4;
  background:linear-gradient(135deg,#142b46,#272044);
  border-color:#648cbb85;
  box-shadow:0 6px 22px #01071166,inset 0 1px #c0eaff1a;
}
@media(max-width:700px){
  .scroll-top{right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){
  .scroll-top{transition:none}
  .scroll-top:hover{transform:none}
}
