html,
body {
    min-height: 100%;
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    background: #061316;
}

h1:focus {
    outline: none;
}

.coming-soon {
    position: relative;
    display: grid;
    min-height: 100vh;
    overflow: hidden;
    color: #fff;
    isolation: isolate;
    place-items: center;
    padding: clamp(1.5rem, 4vw, 4rem);
}

.coming-soon__video,
.coming-soon__shade {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.coming-soon__video {
    object-fit: cover;
    z-index: -3;
}

.coming-soon__shade {
    z-index: -2;
    background:
        linear-gradient(90deg, rgba(2, 17, 22, 0.84), rgba(2, 17, 22, 0.46) 48%, rgba(2, 17, 22, 0.72)),
        linear-gradient(180deg, rgba(2, 17, 22, 0.26), rgba(2, 17, 22, 0.78));
}

.coming-soon__content {
    width: min(100%, 960px);
    text-align: center;
    text-shadow: 0 3px 28px rgba(0, 0, 0, 0.5);
}

.coming-soon__eyebrow {
    margin: 0 0 1.1rem;
    color: #9de7ff;
    font-size: clamp(0.85rem, 1.6vw, 1.05rem);
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.coming-soon h1 {
    margin: 0;
    font-size: clamp(3.3rem, 10vw, 9rem);
    font-weight: 900;
    line-height: 0.9;
    text-wrap: balance;
}

.coming-soon__message {
    max-width: 680px;
    margin: clamp(1.25rem, 3vw, 2rem) auto 0;
    color: rgba(255, 255, 255, 0.88);
    font-size: clamp(1.05rem, 2.1vw, 1.5rem);
    line-height: 1.55;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: #b32121;
    color: white;
    padding: 1rem;
}

.blazor-error-boundary::after {
    content: "An error has occurred.";
}

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}

@media (max-width: 640px) {
    .coming-soon {
        place-items: end center;
        padding-bottom: 12vh;
    }

    .coming-soon__shade {
        background:
            linear-gradient(180deg, rgba(2, 17, 22, 0.18), rgba(2, 17, 22, 0.9)),
            linear-gradient(90deg, rgba(2, 17, 22, 0.65), rgba(2, 17, 22, 0.42));
    }
}
