.post-toc {
    margin: 0;
    padding-right: 30px;
}

.post-toc .post-toc__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.post-toc .post-toc__list .post-toc__item {
	margin-bottom: 0;
    border-bottom: 1px solid var(--ast-global-color-3);
}

.post-toc .post-toc__list .post-toc__link {
    display: block;
    padding: 10px 0;
    font-size: 16px;
    color: var(--ast-global-color-7);
    text-decoration: none;
    transition: color 0.2s ease;
    line-height: 1.65em;
}

.post-toc .post-toc__list .post-toc__link:hover,
.post-toc .post-toc__list .post-toc__link:focus {
    color: var(--ast-global-color-0);
}

.post-content {
	font-size: 20px;
	align-items: stretch !important;
}

.post-content > .panel-grid-cell:last-of-type {
	line-height: 1.65em;
}

.post-content > .panel-grid-cell:first-of-type > .so-panel {
	height: 100%;
}

.post-content > .panel-grid-cell .so-widget-deltav-post-toc {
	position: sticky;
	top: 125px;
	transition: transform .5s ease-out;
	will-change: transform;
}

/* Offset for fixed headers — adjust value to match your header height */
.post-toc__link[href^="#"]:target,
[id] {
    scroll-margin-top: 100px;
}

.post-content h2 {
	font-size: 40px;
	margin-top: 0;
}

.post-content h3.widget-title {
	font-size: 36px;
	margin-top: 0;
}

@media screen and (max-width: 780px) {
	.post-toc {
		padding-right: 0;
	}	
	
	.post-content h2 {
		font-size: 36px;
	}
	
	.post-content h3.widget-title {
		font-size: 28px;
	}
}

@media screen and (max-width: 480px) {
	.post-content h2 {
		font-size: 28px;
	}
	
	.post-content h3.widget-title {
		font-size: 22px;
	}
}