/* ONTECH left-floating subnav v2: load AFTER sub.css AND responsive.css */
.ot-sub-sidebar {
  position: fixed;
  top: 116px;
  left: 0;
  width: 180px;
  z-index: 80;
  border: 1px solid #dedede;
  border-radius: 15px;
  background: #fff;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity .25s ease, transform .25s ease, visibility .25s;
  box-sizing: border-box;
}
.ot-sub-sidebar.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.ot-sub-sidebar__title {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 52px;
  padding: 10px;
  box-sizing: border-box;
  background: #5BAFF6;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
}
.ot-sub-sidebar__links {display: flex; flex-direction: column;}
.ot-sub-sidebar__links a {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 10px 8px;
  box-sizing: border-box;
  border-top: 1px solid #ededed;
  font-size: 15px;
  color: #666;
  text-align: center;
  font-weight: 400;
  line-height: 1.4;
  word-break: keep-all;
  transition: color .2s, background .2s;
}
.ot-sub-sidebar__links a:hover,
.ot-sub-sidebar__links a.on,
.ot-sub-sidebar__links a[aria-current="page"] {
  background: #eef6ff;
  color: #5BAFF6;
  font-weight: 600;
}
.ot-sub-sidebar__links a:focus-visible {outline: 2px solid #258ef0; outline-offset: -3px;}

/* Shift ONLY the inner content: preserve full-width backgrounds and banner. */
@media (min-width: 1641px) {
  body.ot-has-sub-sidebar .sub_section > .inner_w {padding-left: calc(14rem + 220px);}
}
@media (min-width: 1025px) and (max-width: 1640px) {
  body.ot-has-sub-sidebar .sub_section > .inner_w {padding-left: calc(3rem + 220px);}
}
@media (min-width: 1025px) and (max-width: 1370px) {
  .ot-sub-sidebar {width: 155px;}
  body.ot-has-sub-sidebar .sub_section > .inner_w {padding-left: calc(3rem + 185px);}
}
@media (max-width: 1024px) {
  .ot-sub-sidebar {display: none !important;}
  /* Existing .inner_w spacing takes over without overrides. */
}
@media (prefers-reduced-motion: reduce) {
  .ot-sub-sidebar, .ot-sub-sidebar__links a {transition: none;}
}
