html.eh-splash-active,
html.eh-splash-active body {
    overflow: hidden !important;
}

.eh-splash {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, 1);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    overflow: hidden;
    transition: opacity 360ms ease, background-color 360ms ease;
}

.eh-splash__stage {
    width: min(620px, 78vw);
    display: grid;
    grid-template-rows: 3px auto 3px;
    align-items: center;
    row-gap: 28px;
    filter: blur(0);
    transform: scale(1);
    transition: filter 360ms ease, transform 360ms ease, opacity 360ms ease;
}

.eh-splash__line {
    display: block;
    width: 100%;
    height: 3px;
    background: #0061d4;
    transform: scaleX(0);
    opacity: 1;
}

.eh-splash__line--top {
    transform-origin: left center;
    transition: transform 960ms cubic-bezier(.65, 0, .35, 1);
}

.eh-splash__line--bottom {
    transform-origin: right center;
    transition: transform 960ms cubic-bezier(.65, 0, .35, 1);
}

.eh-splash.is-top-visible .eh-splash__line--top,
.eh-splash.is-bottom-visible .eh-splash__line--bottom {
    transform: scaleX(1);
}

.eh-splash__logo-wrap {
    width: min(470px, 72vw);
    justify-self: center;
    overflow: hidden;
    padding: 2px 0;
}

.eh-splash__logo {
    display: block;
    width: 100%;
    height: auto;
    opacity: 0;
    transform: translateY(-18px);
    transition:
        opacity 980ms cubic-bezier(.16, 1, .3, 1),
        transform 980ms cubic-bezier(.16, 1, .3, 1);
}

.eh-splash.is-logo-visible .eh-splash__logo {
    opacity: 1;
    transform: translateY(0);
}

.eh-splash.is-exiting {
    opacity: 0;
    background: rgba(255, 255, 255, .15);
}

.eh-splash.is-exiting .eh-splash__stage {
    filter: blur(18px);
    transform: scale(1.025);
    opacity: .35;
}

@media (max-width: 680px) {
    .eh-splash__stage {
        width: 86vw;
        row-gap: 20px;
    }

    .eh-splash__logo-wrap {
        width: 78vw;
    }
}

@media (prefers-reduced-motion: reduce) {
    .eh-splash,
    .eh-splash__stage,
    .eh-splash__line,
    .eh-splash__logo {
        transition-duration: 1ms !important;
    }
}
