/* =========================================
   Legal Pages
========================================= */

.legal {
    min-height: 100svh;
    padding: 8rem 1.5rem 5rem;

    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.legal__inner {
    width: 100%;
    max-width: 50rem;

    margin: 0 auto;
}


/* -----------------------------------------
   Header
----------------------------------------- */

.legal__header {
    margin-bottom: 4rem;
}

.legal__eyebrow {
    margin: 0 0 1rem;

    font-family: "Manrope", sans-serif;
    font-size: 0.65rem;
    font-weight: 500;
    letter-spacing: 0.16em;
    text-transform: uppercase;

    color: var(--text-secondary);
}

.legal__title {
    margin: 0;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(3.5rem, 10vw, 6rem);
    font-weight: 400;
    line-height: 0.95;
    letter-spacing: -0.035em;

    color: var(--text-primary);
}

.legal__updated {
    margin: 1.25rem 0 0;

    font-size: 0.75rem;

    color: var(--text-secondary);
}


/* -----------------------------------------
   Content
----------------------------------------- */

.legal__content {
    max-width: 44rem;
}

.legal__content h2 {
    margin: 3rem 0 1rem;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(1.75rem, 5vw, 2.25rem);
    font-weight: 400;
    line-height: 1.1;

    color: var(--text-primary);
}

.legal__content p {
    margin: 0 0 1.25rem;

    font-family: "Manrope", sans-serif;
    font-size: 0.9rem;
    line-height: 1.8;

    color: var(--text-secondary);
}


/* -----------------------------------------
   Tablet
----------------------------------------- */

@media only screen and (min-width: 48rem) {

    .legal {
        padding: 10rem 3rem 7rem;
    }
}


/* -----------------------------------------
   Desktop
----------------------------------------- */

@media only screen and (min-width: 64rem) {

    .legal {
        padding-inline: 5rem;
    }
}

/* -----------------------------------------
   Back Home
----------------------------------------- */

.legal__home {
    position: fixed;
    right: 1.5rem;
    bottom: 1.5rem;
    z-index: 50;

    display: inline-flex;
    align-items: center;
    gap: 0.6rem;

    padding: 0.8rem 1.15rem;

    font-family: "Manrope", sans-serif;
    font-size: 0.65rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;

    color: var(--text-light);
    background-color: var(--bg-dark);

    border-radius: 100rem;

    text-decoration: none;

    opacity: 0;
    visibility: hidden;

    transform: translateY(0.75rem);

    transition:
        opacity 0.3s ease,
        transform 0.3s ease,
        visibility 0.3s ease;
}

.legal__home.is-visible {
    opacity: 1;
    visibility: visible;

    transform: translateY(0);
}