/* Insight article detail page */

#insight-article {
    position: relative;
    font-size: clamp(.875rem, 1vw, 1.75rem)
}

#insight-article-main {
    padding-top: calc(var(--base-padding-y) * 3);
    padding-bottom: calc(var(--base-padding-y) * 2)
}

#insight-article-header {
    grid-column: 3 / span 8;
    text-align: center;
    margin-bottom: calc(var(--base-padding-y) * 2)
}

@media (max-width: 812px) {
    #insight-article-header {
        grid-column: 1 / span 6
    }
}

#insight-article-back-top {
    grid-column: 3 / span 8;
    margin-bottom: calc(var(--base-padding-y) * 1.5);
    display: flex;
    align-items: center;
    gap: .5em;
    font-size: .75em;
    text-transform: uppercase;
    letter-spacing: .05em;
    opacity: .4;
    transition: opacity .3s ease;
    pointer-events: auto;
    cursor: pointer
}

@media (max-width: 812px) {
    #insight-article-back-top {
        grid-column: 1 / span 6
    }
}

@media (hover: hover) {
    #insight-article-back-top:hover {
        opacity: .8
    }
}

#insight-article-back-top svg {
    width: 1.2em;
    height: 1.2em;
    transition: transform .3s ease
}

@media (hover: hover) {
    #insight-article-back-top:hover svg {
        transform: translateX(-.3em)
    }
}

#insight-article-meta {
    display: flex;
    justify-content: center;
    gap: 1.5em;
    font-size: .75em;
    text-transform: uppercase;
    letter-spacing: .05em;
    opacity: .5;
    margin-bottom: 2em
}

#insight-article-title {
    font-size: clamp(2rem, 4vw, 4rem);
    line-height: 1;
    letter-spacing: -.03em;
    margin: 0
}

@media (min-aspect-ratio: 21/9) {
    #insight-article-title {
        font-size: 3vw
    }
}

@media (max-width: 812px) {
    #insight-article-title {
        font-size: 8vw
    }
}

#insight-article-excerpt {
    font-size: 1.3em;
    line-height: 1.5;
    margin-top: 1.5em;
    opacity: .6;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto
}

#insight-article-body {
    grid-column: 3 / span 8
}

@media (max-width: 812px) {
    #insight-article-body {
        grid-column: 1 / span 6
    }
}

.insight-article-section {
    margin-bottom: 3em
}

.insight-article-section-title {
    font-size: 1.1em;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .05em;
    margin: 0 0 1.5em
}

.insight-article-text {
    font-size: 1.1em;
    line-height: 1.7;
    opacity: .6;
    margin: 0 0 1.2em
}

.insight-article-text:last-child {
    margin-bottom: 0
}

.insight-article-quote {
    padding: 2em 0;
    margin: 2em 0;
    border-top: 1px solid rgba(0, 0, 0, .08);
    border-bottom: 1px solid rgba(0, 0, 0, .08);
    text-align: center
}

.insight-article-quote-text {
    font-size: 1.3em;
    line-height: 1.5;
    font-style: italic;
    opacity: .7;
    margin: 0
}

@media (max-width: 812px) {
    .insight-article-quote-text {
        font-size: 1.1em
    }
}

.insight-article-list {
    margin: 1.5em 0;
    padding-left: 0;
    list-style: none
}

.insight-article-list li {
    font-size: 1.1em;
    line-height: 1.7;
    opacity: .6;
    padding: .5em 0;
    padding-left: 1.5em;
    position: relative
}

.insight-article-list li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 1em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    opacity: .3
}

#insight-article-footer {
    grid-column: 3 / span 8;
    margin-top: 3em;
    padding-top: 3em;
    border-top: 1px solid rgba(0, 0, 0, .1);
    display: flex;
    justify-content: space-between;
    align-items: center
}

@media (max-width: 812px) {
    #insight-article-footer {
        grid-column: 1 / span 6;
        flex-direction: column;
        gap: 1.5em;
        align-items: flex-start
    }
}

#insight-article-back {
    font-size: .85em;
    text-transform: uppercase;
    letter-spacing: .05em;
    opacity: .5;
    transition: opacity .3s ease;
    pointer-events: auto
}

@media (hover: hover) {
    #insight-article-back:hover {
        opacity: 1
    }
}

#insight-article-date {
    font-size: .75em;
    text-transform: uppercase;
    letter-spacing: .05em;
    opacity: .4
}

#insight-article-title .word {
    overflow: hidden;
    display: inline-block;
    vertical-align: top
}

#insight-article-title .char {
    display: inline-block;
    will-change: transform
}
