.seoline-table-of-contents {
    --toc-primary: var(--seoline-primary, #1c0742);
    --toc-primary-rgb: var(--seoline-primary-rgb, 28, 7, 66);
    --toc-red: var(--seoline-red, #ff545a);
    --toc-red-rgb: var(--seoline-red-rgb, 255, 84, 90);
    --toc-light: var(--seoline-light, #f6f5f7);
    --toc-light-gray: var(--seoline-light-gray, #e9e7ec);
    --toc-border-color: var(--seoline-border-color, #dee2e6);

    --toc-font-base: Arial, Helvetica, sans-serif;
    --toc-font-highlight: Impact, "Impact Std", sans-serif;

    --toc-radius: var(--r-lg, 1rem);
    --toc-bg: #ffffff;
    --toc-shadow: 0 6px 20px rgba(28, 7, 66, .05);

    display: block !important;
    margin: 0 0 3rem !important;
    padding: 0 !important;
    background: var(--toc-bg) !important;
    border: 1px solid var(--toc-light-gray) !important;
    border-radius: var(--toc-radius) !important;
    box-shadow: var(--toc-shadow) !important;
    color: var(--toc-primary) !important;
    font-family: var(--toc-font-base) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
}

.seoline-table-of-contents,
.seoline-table-of-contents * {
    box-sizing: border-box;
    letter-spacing: normal !important;
}

.seoline-table-of-contents__body {
    padding: 1.5rem !important;
}

.seoline-table-of-contents__label {
    display: block !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    color: var(--toc-red) !important;
    font-family: var(--toc-font-highlight) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

.seoline-table-of-contents__label-text {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-transform: inherit !important;
    letter-spacing: inherit !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

.seoline-table-of-contents__list {
    display: block !important;
    margin: 0 !important;
    padding-left: 5px !important;
    color: var(--toc-primary) !important;
    font-family: var(--toc-font-base) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    list-style: none outside !important;
    list-style-type: none !important;
    columns: 1 !important;
    column-gap: 28px !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

.seoline-table-of-contents__list:empty {
    display: none !important;
}

.seoline-table-of-contents__list li,
.seoline-table-of-contents__item {
    display: list-item !important;
    margin: 0 0 6px !important;
    padding: 0 !important;
    color: var(--toc-primary) !important;
    font-family: var(--toc-font-base) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    break-inside: avoid !important;
    list-style: none outside !important;
    list-style-type: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
    background-image: none !important;
}

.seoline-table-of-contents__list li::marker,
.seoline-table-of-contents__item::marker {
    color: var(--toc-primary) !important;
    font-family: var(--toc-font-base) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

.seoline-table-of-contents__list li:last-child,
.seoline-table-of-contents__item:last-child {
    margin-bottom: 0 !important;
}

.seoline-table-of-contents__list li::before,
.seoline-table-of-contents__list li::after,
.seoline-table-of-contents__item::before,
.seoline-table-of-contents__item::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
    background-image: none !important;
}

.seoline-table-of-contents__link {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--toc-primary) !important;
    font-family: var(--toc-font-base) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
    background-image: none !important;
    outline: none;
}

.seoline-table-of-contents__link::before,
.seoline-table-of-contents__link::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
    background-image: none !important;
}

.seoline-table-of-contents__link:hover,
.seoline-table-of-contents__link:focus {
    color: var(--toc-red) !important;
    text-decoration: underline !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
    background-image: none !important;
}

.seoline-table-of-contents__link:focus-visible {
    outline: 2px solid var(--toc-red) !important;
    outline-offset: 3px !important;
    border-radius: 4px !important;
}

.seoline-table-of-contents__empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    color: rgba(var(--toc-primary-rgb), .65) !important;
    font-family: var(--toc-font-base) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

.seoline-table-of-contents[data-toc-empty-state="true"] {
    display: none !important;
}

/* Overrides against global blog/article styles */
.blog-article .seoline-table-of-contents,
.blog-article nav.seoline-table-of-contents {
    font-size: 14px !important;
    font-weight: 400 !important;
    border: 1px solid var(--toc-light-gray) !important;
    box-shadow: var(--toc-shadow) !important;
    background: var(--toc-bg) !important;
}

.blog-article .seoline-table-of-contents ol.seoline-table-of-contents__list {
    display: block !important;
    margin: 0 !important;
    padding-left: 5px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    list-style: none outside !important;
    list-style-type: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

.blog-article .seoline-table-of-contents ol.seoline-table-of-contents__list li,
.blog-article .seoline-table-of-contents .seoline-table-of-contents__item {
    display: list-item !important;
    margin-bottom: 6px !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    list-style: none outside !important;
    list-style-type: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
    background-image: none !important;
}

.blog-article .seoline-table-of-contents ol.seoline-table-of-contents__list li::marker,
.blog-article .seoline-table-of-contents .seoline-table-of-contents__item::marker {
    color: var(--toc-primary) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

.blog-article .seoline-table-of-contents ol.seoline-table-of-contents__list li::before,
.blog-article .seoline-table-of-contents ol.seoline-table-of-contents__list li::after,
.blog-article .seoline-table-of-contents .seoline-table-of-contents__item::before,
.blog-article .seoline-table-of-contents .seoline-table-of-contents__item::after {
    content: none !important;
    display: none !important;
}

.blog-article .seoline-table-of-contents .seoline-table-of-contents__link {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--toc-primary) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
    background-image: none !important;
}

.blog-article .seoline-table-of-contents .seoline-table-of-contents__link:hover {
    color: var(--toc-red) !important;
    text-decoration: underline !important;
}

@media (min-width: 768px) {
    .seoline-table-of-contents__list {
        columns: 2 !important;
        column-gap: 28px !important;
    }
}

@media (max-width: 767px) {
    .seoline-table-of-contents {
        margin-bottom: 2rem !important;
        border-radius: var(--r, .5rem) !important;
    }

    .seoline-table-of-contents__body {
        padding: 1.25rem !important;
    }

    .seoline-table-of-contents__label {
        font-size: 16px !important;
        letter-spacing: 1.8px !important;
    }

    .seoline-table-of-contents__list {
        padding-left: 20px !important;
        font-size: 14px !important;
        columns: 1 !important;
    }

    .seoline-table-of-contents__list li,
    .seoline-table-of-contents__item {
        font-size: 14px !important;
        margin-bottom: 7px !important;
    }
}