@font-face {
    font-family: "SeDj Anton";
    src: url("fonts/Anton-Regular.ttf") format("truetype");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

html:has(.sedj-landing-body) {
    background: #080808;
}

body.sedj-landing-body {
    margin: 0;
    padding: 0;
    background: #080808;
    color: #f8f8f6;
    font-family: Arial, Helvetica, sans-serif;
    -webkit-font-smoothing: antialiased;
}

.sedj-landing,
.sedj-landing * {
    box-sizing: border-box;
}

.sedj-landing {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    place-items: center;
    min-height: 100vh;
    min-height: 100svh;
    padding: max(32px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));
    overflow: hidden;
    background: #080808;
}

.sedj-landing__watermark {
    position: absolute;
    inset: 0;
    z-index: -1;
    overflow: hidden;
    pointer-events: none;
    user-select: none;
}

.sedj-landing__watermark img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    height: 146vh;
    height: 146svh;
    max-width: none;
    max-height: none;
    transform: translate(-50%, -50%);
    opacity: var(--sedj-landing-logo-opacity, .12);
    mix-blend-mode: screen;
}

.sedj-landing__content {
    width: 100%;
    min-width: 0;
    max-width: 1100px;
    margin: 0;
    padding: 0;
    text-align: center;
}

.sedj-landing__title {
    margin: 0;
    color: #f8f8f6;
    font-family: "SeDj Anton", Impact, "Arial Narrow", sans-serif;
    font-size: clamp(64px, 9.1vw, 128px);
    font-weight: 400;
    font-style: normal;
    line-height: 1.05;
    letter-spacing: -.035em;
    text-transform: none;
    text-wrap: balance;
    overflow-wrap: anywhere;
}

.sedj-landing__title span {
    display: block;
}

.sedj-landing__title em {
    color: var(--sedj-landing-accent, #ff002b);
    font-style: normal;
}

.sedj-landing__subtitle {
    margin: 26px auto 0;
    max-width: 760px;
    color: #c5c5c5;
    font-size: clamp(18px, 2.12vw, 30px);
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: -.025em;
    text-wrap: balance;
}

.sedj-landing__actions {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 18px;
    margin-top: 32px;
}

.sedj-landing__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 274px;
    min-height: 68px;
    padding: 16px 24px;
    border: 1px solid #aaa;
    border-radius: 8px;
    color: #fff;
    font: 400 20px/1.3 Arial, Helvetica, sans-serif;
    text-decoration: none;
    transition: background-color .15s ease, border-color .15s ease;
    -webkit-tap-highlight-color: transparent;
}

.sedj-landing__button:visited {
    color: #fff;
}

.sedj-landing__button--login {
    background: rgba(8, 8, 8, .55);
}

.sedj-landing__button--login:hover {
    background: #202020;
    border-color: #fff;
    color: #fff;
}

.sedj-landing__button--primary {
    border-color: var(--sedj-landing-accent, #ff002b);
    background: var(--sedj-landing-accent, #ff002b);
}

.sedj-landing__button--primary:hover {
    border-color: var(--sedj-landing-accent, #ff002b);
    background: var(--sedj-landing-accent, #ff002b);
    filter: brightness(.86);
    color: #fff;
}

.sedj-landing__button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 6px;
}

.sedj-landing__title:focus{outline:none}
.sedj-landing__button--locked{gap:10px;border-color:var(--sedj-locked-color,#ff002b);background:var(--sedj-locked-color,#ff002b)}
.sedj-landing__button--locked:hover{color:#fff;filter:brightness(.86)}
.sedj-lock{flex:none}
.sedj-member-profile{display:flex;justify-content:center;margin-top:16px}
.sedj-member-profile .sedj-landing__button--profile{width:174px;min-height:44px;padding:10px 20px;background:rgba(8,8,8,.55);border-color:#666;font-size:15px}
.sedj-member-profile .sedj-landing__button--profile:hover{background:#202020;border-color:#fff}
.sedj-account-links{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:13px;line-height:1.5}
.sedj-account-links a{color:#aaa;text-decoration:none;padding:8px 0}
.sedj-account-links a:hover,.sedj-account-links a:focus-visible{color:#fff;text-decoration:underline}

@media(max-height:460px){.sedj-account-links{position:static;margin-top:24px;grid-column:1/-1}.sedj-landing:has(.sedj-account-links){align-content:center}}

body.admin-bar .sedj-landing {
    min-height: calc(100vh - 32px);
    min-height: calc(100svh - 32px);
}

@media (max-width: 782px) {
    body.admin-bar .sedj-landing {
        min-height: calc(100vh - 46px);
        min-height: calc(100svh - 46px);
    }
}

@media (max-width: 600px) {
    .sedj-landing__title {
        font-size: clamp(42px, 12.5vw, 74px);
    }
    .sedj-landing__subtitle {
        max-width: 360px;
        margin-top: 22px;
        font-size: clamp(17px, 4.6vw, 21px);
    }
    .sedj-landing__actions {
        gap: 12px;
        margin-top: 28px;
    }
    .sedj-landing__button {
        width: 168px;
        min-height: 64px;
        padding: 13px 12px;
        border-radius: 6px;
        font-size: 15px;
    }
    .sedj-landing__watermark img {
        height: min(146svh, 210vw);
    }
}

@media (max-height: 460px) and (min-width: 601px) {
    .sedj-landing__title {
        font-size: clamp(54px, 14svh, 90px);
    }
    .sedj-landing__subtitle {
        margin-top: 16px;
        font-size: 20px;
    }
    .sedj-landing__actions {
        margin-top: 20px;
    }
    .sedj-landing__button {
        min-height: 52px;
        font-size: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sedj-landing__button {
        transition: none;
    }
}

/* Available options use a red outline; locked options retain a solid fill. */
.sedj-landing__button--login:hover,.sedj-member-profile .sedj-landing__button--profile:hover,.sedj-landing__button--login:focus-visible,.sedj-member-profile .sedj-landing__button--profile:focus-visible{border-color:var(--sedj-landing-accent,#ff002b);color:#ff526d;background:rgba(255,0,43,.075);box-shadow:0 0 0 1px rgba(255,0,43,.18)}
