/* Legal disclaimer page styles */

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

#legal-main {
    min-height: calc(var(--vh, 1vh) * 100);
    padding-top: calc(var(--base-padding-y) * 3);
    padding-bottom: calc(var(--base-padding-y) * 2)
}

#legal-back {
    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;
    margin-bottom: 2em;
    width: fit-content
}

@media (hover: hover) {
    #legal-back:hover {
        opacity: .8
    }
}

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

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

#legal-header {
    grid-column: 1 / -1;
    margin-bottom: calc(var(--base-padding-y) * 1.5);
    text-align: center
}

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

#legal-title {
    font-size: clamp(2.5rem, 5vw, 5rem);
    font-weight: 400;
    line-height: .95;
    letter-spacing: -.03em;
    margin: 0
}

@media (min-aspect-ratio: 21/9) {
    #legal-title {
        font-size: 3.5vw
    }
}

@media (max-width: 812px) {
    #legal-title {
        font-size: 10vw
    }
}

#legal-subtitle {
    font-size: 1.1em;
    line-height: 1.4;
    margin-top: 1em;
    opacity: .6;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto
}

#legal-body {
    grid-column: 3 / span 8;
    max-width: 720px;
    margin: 0 auto
}

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

.legal-section {
    margin-bottom: 2em
}

.legal-heading {
    font-size: 1.2em;
    font-weight: 600;
    margin-bottom: .5em;
    letter-spacing: -.01em
}

.legal-text {
    font-size: 1em;
    line-height: 1.7;
    opacity: .65
}

.legal-link {
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: opacity .3s ease
}

@media (hover: hover) {
    .legal-link:hover {
        opacity: .8
    }
}

.legal-contact {
    padding-top: 2em;
    border-top: 1px solid rgba(0, 0, 0, .1);
    margin-top: 2.5em
}

.legal-updated {
    font-size: .85em;
    opacity: .4;
    margin-top: 2.5em
}
