.TableOfContentsFixedWrapper { min-height: 100%; top: 0; &:not(.TableOfContentsFixedWrapperLefted) { .TableOfContentsPrimaryButton { margin-top: 5.4rem; transform: rotate(180deg); } .TableOfContentsContainer { padding-top: 2.7em; } } } .TableOfContentsFixedWrapperLefted { margin-top: -2em; right: auto; left: 70px; .TableOfContentsPrimaryButton { left: auto; right: 40px; } .TableOfContentsPrimaryButtonLefted { left: 0; right: auto; } } .TableOfContentsContainer { position: sticky; top: 100px; right: 20px; display: flex; width: 100%; height: calc(100vh - 120px); overflow: auto; flex-direction: column; align-items: flex-start; background-color: transparent; .TableOfContentsFixedWrapperLefted & { height: calc(100vh - 250px); } } .TableOfContentsHeader { width: 100%; display: flex; justify-content: space-between; } .TableOfContentsHeading { margin: 0; color: #000; font-size: 22px; font-style: normal; font-weight: 700; line-height: 24px; } .TableOfContentsPrimaryButton { position: absolute; right: 0; top: 0; display: flex; align-items: center; justify-content: center; background: transparent; border: none; cursor: pointer; } .TableOfContentsHeadingsList { position: relative; display: flex; flex-direction: column; list-style-type: none; margin: 0; padding: 0 38px 0 0; width: 100%; } .TableOfContentsHeadingsItem { margin-top: 20px; color: #000; font-size: 14px; font-style: normal; font-weight: 400; line-height: 20px; text-align: left; letter-spacing: -0.14px; &:hover { color: rgb(0 0 0 / 50%); } } .TableOfContentsHeadingsItemH3, .TableOfContentsHeadingsItemH4 { margin-top: 8px; } .TableOfContentsHeadingsItemH3 { padding-left: 8px; } .TableOfContentsHeadingsItemH4 { padding-left: 16px; }