* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    word-break: keep-all;
}

html,
body {
    width: 100%;
    height: 100%;
    overflow-x: hidden;
}

html {
    --poster-color: transparent;
    font-size: 14px;
}

body {
    padding: 0;
}

.content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;

    width: 100%;
    height: 100%;

    max-width: 1920px;

    margin: 0 auto;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    background-image: url('/assets/img/bg_therawave.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;

    opacity: 0;
}

.content .intro {
    position: relative;

    width: 100%;
    height: 100%;
}

.content .intro .logo {
    position: absolute;
    top: 32%;
    left: clamp(5%, (1920px - 100vw) * -0.04122 + 21%, 21%);

    width: clamp(90px, (1920px - 100vw) * -0.134 + 248px, 248px);

    animation: logoAni 1s;

    img {
        width: 100%;
        height: auto;
    }
}

.content .intro .footer {
    position: absolute;
    left: 0;
    right: 0;
    bottom: max(5%, min((1920px - 100vw) * 0.007223 + 11%, 11%));

    margin: 0 auto;

    max-width: clamp(277px, (1920px - 100vw) * -0.0711 + 425px, 425px);

    img {
        width: 100%;
        height: auto;

        cursor: pointer;
    }
}

#placeholder {
    flex: 1;
    width: 100%;

    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;

    margin: auto;

    opacity: 0;

    z-index: -99;
}

#placeholder .btn-close {
    position: absolute;
    top: 5%;
    right: 5%;

    max-width: 80px;

    img {
        width: 100%;
        height: auto;

        cursor: pointer;
    }

    z-index: 9999;
}

ad-viewer {
    width: 100%;
    height: 100%;
}

.error {
    color: #fff;
    font-size: 24px;
}

@keyframes logoAni {
    from {
        top: 27%;
    }

    to {
        top: 32%;
    }
}
