.heading {
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.heading h1 {
    font-size: 30px;
    z-index: 2;
    padding: 0px 5px 0px 5px;
    font-family: poppins-extra-light;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-weight: normal;
    font-style: italic;
    text-align: center;
    background-color: var(--content-color-main);

    transition-duration: calc(var(--transition-duration-medium) / 2);
}

.heading.active h1 {
    opacity: 1;
}

.heading.inactive h1 {
    opacity: 0;
}

.heading::before {
    position: absolute;
    content: '';
    z-index: -1;
    top: 50%;
    left: 0px;
    width: 100%;
    height: 1px;
    background-color: var(--content-color-outline);
    transition-duration: var(--transition-duration-medium);
    transition-delay: calc(var(--transition-duration-medium) / 2);
}

.heading.inactive::before {
    transform: scaleX(0);
}

.heading.active::before {
    transform: scaleX(1);
}

@media (width < 1024px) {
    #showcase article .heading h1 {
        font-size: 26px;
    }
}

@media (width < 768px) {
    .heading h1 {
        font-size: 20px;
    }
}