:root {
    color-scheme: dark;
    font-family: Tahoma, Arial, sans-serif;
    background: #210c10;
    color: #fff;
}

* {
    box-sizing: border-box;
}

body {
    isolation: isolate;
    display: grid;
    place-items: center;
    min-height: 100vh;
    min-height: 100svh;
    margin: 0;
    padding: 24px;
    background: linear-gradient(135deg, rgba(33, 12, 16, .9), rgba(0, 0, 0, .7));
    text-align: center;
}

.background-video {
    position: fixed;
    inset: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

.welcome {
    width: 100%;
    max-width: 640px;
    padding: 40px 24px 28px;
    border: 1px solid rgba(232, 212, 160, .4);
    border-radius: 20px;
    background: linear-gradient(160deg, rgba(114, 26, 26, .96), rgba(24, 12, 16, .97));
    box-shadow: 0 24px 64px rgba(0, 0, 0, .3);
}

.welcome-logo {
    display: block;
    width: min(220px, 65%);
    height: auto;
    margin: 0 auto;
    object-fit: contain;
}

.welcome-intro {
    margin: 0 0 8px;
    font-size: 18px;
}

h1 {
    margin: 0;
    color: #e8d4a0;
    font-size: clamp(26px, 5vw, 40px);
    line-height: 1.6;
}

.welcome-notice {
    margin: 24px 0 0;
    line-height: 1.9;
}

.welcome-footer {
    margin-top: 32px;
    padding-top: 20px;
    border-top: 1px solid rgba(232, 212, 160, .25);
    color: #e8d4a0;
    font-size: 12px;
    line-height: 1.8;
}

.welcome-footer p {
    margin: 4px 0;
}

@media (max-width: 480px) {
    body {
        padding: 16px;
    }

    .welcome {
        padding: 24px 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .background-video {
        display: none;
    }
}
