/*
 * Abertura de marca Luana Percínio.
 * Camada completamente isolada: não altera medidas, posições ou estilos do site.
 */
html.motion-intro-pending {
    background: #FAF8F4;
}

html.motion-intro-pending body > * {
    visibility: hidden;
}

html.motion-intro-pending body > .motion-intro {
    visibility: visible;
}

html.motion-intro-active,
html.motion-intro-active body {
    overflow: hidden;
}

.motion-intro {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: grid;
    place-items: center;
    overflow: hidden;
    visibility: visible;
    color: #FAF8F4;
    background: #2C2825;
    pointer-events: auto;
    isolation: isolate;
    contain: layout paint style;
}

.motion-intro__wordmark {
    position: relative;
    display: inline-flex;
    align-items: baseline;
    justify-content: flex-start;
    font-family: var(--font-display, 'Cormorant Garamond', Georgia, 'Times New Roman', serif);
    font-size: clamp(38px, 7.8vw, 112px);
    font-weight: 300;
    line-height: .82;
    letter-spacing: .07em;
    text-transform: uppercase;
    white-space: nowrap;
    transform-origin: 50% 50%;
    will-change: transform;
}

.motion-intro__letter {
    position: relative;
    z-index: 2;
    display: inline-block;
    min-width: .62em;
    transform-origin: 50% 55%;
    will-change: transform, opacity, filter, color;
}

.motion-intro__rest {
    display: inline-block;
    width: 0;
    overflow: hidden;
    opacity: 0;
    vertical-align: baseline;
    will-change: width, opacity;
}

.motion-intro__rest-inner {
    display: inline-block;
    /* Reserva óptica para que a última letra permaneça inteira durante o recolhimento. */
    padding-right: .35em;
    transform: translateX(-.2em);
    will-change: transform;
}

@media (max-width: 480px) {
    .motion-intro__wordmark {
        font-size: clamp(36px, 10vw, 46px);
        letter-spacing: .045em;
    }
}

@media (prefers-reduced-motion: reduce) {
    html.motion-intro-pending body > * {
        visibility: visible;
    }

    html.motion-intro-active,
    html.motion-intro-active body {
        overflow: auto;
    }

    .motion-intro {
        display: none;
    }
}
