  /* table of contents component */

/* right col TOC — left border indicator */
#sidebar .toc-link {
  display: block;
  padding: .125rem 0 .125rem .75rem;
  border-left: .125rem solid transparent;
  transition: border-color 0.2s ease-in-out; /* Smoother handoff */
}

#sidebar .toc-link:hover,
#sidebar .toc-link.active {
  color: #960C22;
  border-left-color: #960C22;
}

/* RIGHT TOC ONLY - active bolding */
#sidebar .toc-link.active {
  font-weight: 600 !important; 
}

/* Cascading indentation for dynamic headers (h2-h5) in the sidebar */
#sidebar .toc-h2 > .toc-link { padding-left: 0.75rem !important; }
#sidebar .toc-h3 > .toc-link { padding-left: 2.25rem !important; }
#sidebar .toc-h4 > .toc-link { padding-left: 3rem !important; }
#sidebar .toc-h5 > .toc-link { padding-left: 3.5rem !important; }

#sidebar > .table-of-contents-component {
  margin-top: 18px !important;
}


/* Gives clicked headings a buffer so they don't jam against the top of the browser */
#content-well h2, 
#content-well h3, 
#content-well h4, 
#content-well h5 {
  scroll-margin-top: 80px; 
}

/* MAIN CONTENT TOC */
.table-of-contents-component .toc-link {
  font-size: 1rem;
  font-weight: normal !important;
  margin: 0;
  padding: .25rem 0 .25rem .75rem !important;
  color: black;
}

.table-of-contents-component .toc-link:hover {
  color: #960C22;
}

/* OVERWRITE: Prevents Main Content ToC from bolding when active */
#content-well .table-of-contents-component .toc-link.active {
   font-weight: normal !important;
}

@media (min-width: 992px) {
	.toc-two-col {
    column-count: 2;
    column-gap: 2rem;
  }
	
  .toc-content {
   height:auto !important;
   padding-bottom: 30px;
  }
  .toc-content nav ul {
    padding-left: 1rem;
  }
}

@media screen and (max-width: 991px) {
  .toc-content {
   height:auto !important;
   padding-bottom: 40px;
  }
	
	
  .toc-two-col {
    column-count: 1 !important;
  }
	
	/* Reset Main Content Buttons to look like Sidebar Links */
  .table-of-contents-component .toc-expand-all, 
  .table-of-contents-component .toc-collapse-all {
    background-color: transparent !important;
    --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
    border: none !important;
    padding: 0 !important;
    text-decoration: underline !important;
    margin-right: 15px;
    border-radius: 0;
    font-weight: normal;
  }
	
	/* Remove hover background colors on mobile */
  .table-of-contents-component .toc-expand-all:hover, 
  .table-of-contents-component .toc-collapse-all:hover {
    background-color: transparent !important;
    color: black !important;
  }

  /* Your requested margin adjustment */
  #content-well nav ul.toc-list, 
  #content-well nav li.toc-item {
    margin-left: 10px;
  }
}

/* main content TOC — bullets */
#content-well nav ul.toc-list,
#content-well nav li.toc-item {
  list-style: disc !important;
}

#content-well nav ul.toc-sublist,
#content-well nav ul.toc-sublist > li.toc-item {
  list-style-type: circle !important; 
}

#content-well nav ul.toc-sublist {
  padding-left: 1.5rem; 
}

#right-toc-title {
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}

/* right col TOC — no bullets, no padding (including sublists now) */
#sidebar nav ul.toc-list,
#sidebar nav li.toc-item,
#sidebar nav ul.toc-sublist {
  list-style: none !important;
  padding-left: 0 !important;
  margin-bottom: 0;
}

/* .toc-two-col {
  column-count: 2;
  column-gap: 2rem;
} */

/* Expand / Collapse Buttons */
.toc-expand-all, 
.toc-collapse-all {
  font-size: 1rem; 
  margin-right: 15px;
  cursor: pointer;
  padding: 0.25rem 0;
}

.toc-link.nav-link:hover {
  text-decoration: underline;
}

.toc-btn {
  color: #FFF;
  padding: 6px 20px;
  background-color: #c8102e;
  border-radius: 30px;
  display: block;
  text-decoration: none !important;
  transition: all 300ms ease;
}