
.content-cont {
display: flex;
}

.content-cont {
display: flex;
gap: 40px;
align-items: flex-start; /* important: keeps TOC aligned to top */
overflow: visible;       /* prevents sticky being broken */
max-width: 1200px;
margin: 0 auto;
}

/* Main content */
.wpb-content-wrapper {
flex: 1;          /* fill remaining space */
overflow: visible !important;
border: none;
display: block;
margin: 0;
padding: 0;
}

/* Optional: smooth scroll */
html { scroll-behavior: smooth; }

.content-cont,
.wpb-content-wrapper,
.vc_row,
.vc_column-inner,
.wpb_wrapper {
overflow: visible !important;
}
h2 {
scroll-margin-top: 140px; /* Adjust to your sticky header height */
}

.page-toc {
  background: #f7f7f7;
  padding: 15px 25px;
  position: sticky;
  top: 120px;       /* adjust for sticky header height */
  align-self: flex-start;
  z-index: 10;
  flex: 0 0 25%;    /* 25% width, doesn't shrink or grow */
  max-width: 300px;
	margin-bottom: 30px;
	width: 25%;
}



.toc-box.sticky {
position: sticky;
top: 100px; /* adjust to match header */
}


.back-button a:link,
.back-button a:visited {
color: #333;
font-size: 17px;
font-weight: 600;
text-decoration: none;
}

.page-toc ul {
padding-left: 0;
margin: 10px 0 0;
list-style: none;
}

.page-toc strong {
font-size: 22px
}


.toc-box li {
margin: 4px 0;
}

.toc-box a {
text-decoration: none;
}

.toc-box a:hover {
text-decoration: underline;
}


.page-toc a.active {
font-weight: bold;
color: #003366;
text-decoration: underline;
}

.page-toc li.is-active > a {
font-weight: 600;
color: #0069d9;
padding-left: 8px;
text-decoration: none;-webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; 
}