body.onboarding, body.about-landing {
    color:#eeeae1;
    font-family:monospace;
    text-shadow:none;
}
body.onboarding #starryBackground, body.about-landing #starryBackground {
    opacity:.3;
}
#page-wrap.game-landing {
    width:1160px;
    max-width:100%;
    padding:0 40px;
    text-align:left;
}
.game-landing * {
    box-sizing:border-box;
}
.game-landing a {
    color:inherit;
}
.landing-nav {
    display:flex;
    justify-content:center;
    align-items:center;
    gap:24px;
    padding:24px 0 32px;
    border-bottom:1px solid #29272e;
}
.landing-brand img {
    width:480px;
    max-width:100%;
    height:auto;
    display:block;
}
.game-landing .landing-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:28px;
    min-height:48px;
    padding:13px 22px;
    border-radius:5px;
    border:1px solid #514958;
    font:inherit;
    font-weight:bold;
    text-decoration:none;
    cursor:pointer;
    margin:0;
}
.game-landing .landing-button-primary {
    background:#d6c2ff;
    color:#191320;
    border-color:#d6c2ff;
}
.game-landing .landing-button-primary:hover {
    background:#e8dcff;
}
.game-landing .landing-button-quiet {
    background:transparent;
    color:#eeeae1;
    padding:10px 16px;
    min-height:42px;
}
.game-landing :is(a,button):focus-visible,#landing-lightbox button:focus-visible {
    outline:2px solid #dfcaff;
    outline-offset:5px;
}
.landing-hero {
    padding:80px 0 55px;
    max-width:900px;
}
.landing-eyebrow {
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:11px;
    color:#c5b1df;
    margin:0 0 24px;
}
.landing-dot {
    display:inline-block;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#c5b1df;
    margin-right:7px;
}
.game-landing h1 {
    font-size:clamp(38px,6.4vw,76px);
    line-height:1.08;
    letter-spacing:-4px;
    font-weight:600;
    margin:0 0 28px;
}
.game-landing h1 em {
    font-style:normal;
    color:#d6c2ff;
}
.landing-intro {
    font-size:16px;
    line-height:1.85;
    max-width:710px;
    color:#bdb8c3;
    margin:0 0 30px;
}
.landing-actions {
    display:flex;
    align-items:center;
    gap:28px;
    flex-wrap:wrap;
}
.landing-text-link {
    font-size:13px;
    text-underline-offset:6px;
}
.game-landing .landing-fine {
    font-size:11px;
    color:#a39ba9;
    margin-top:16px;
    line-height:1.7;
}
.landing-shorts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}
.landing-short-frame {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 9 / 16;
    border: 1px solid #40344c;
    border-radius: 8px;
    background: #110f16;
}
.landing-media-note {
    display:flex;
    justify-content:space-between;
    gap:20px;
    color:#a39ba9;
    font-size:10px;
    margin-top:14px;
}
.landing-section {
    padding:76px 0;
    border-bottom:1px solid #29272e;
    scroll-margin-top:24px;
}
.landing-section-heading {
    margin-bottom:32px;
}
.landing-section-heading .landing-eyebrow {
    margin-bottom:16px;
}
.game-landing h2 {
    font-size:clamp(26px,3.8vw,40px);
    line-height:1.2;
    letter-spacing:-1.5px;
    margin:0 0 18px;
    font-weight:500;
}
.game-landing h3 {
    font-size:18px;
    line-height:1.5;
    margin:20px 0 12px;
}
.landing-section p {
    color:#bdb8c3;
    line-height:1.9;
    font-size:13px;
}
.landing-features {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:38px;
}
.landing-number {
    color:#c5b1df;
    font-size:10px;
    letter-spacing:1.5px;
}
.landing-gallery {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.landing-gallery figure {
    margin:0;
    min-width:0;
}
.landing-shot {
    display:block;
    border-radius:5px;
    overflow:hidden;
    border:1px solid #40344c;
}
.landing-shot img {
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:8/5;
    object-fit:cover;
    transition:transform .2s;
}
.landing-shot:hover img {
    transform:scale(1.03);
}
.landing-shot-placeholder {
    aspect-ratio:8/5;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:15px;
    background:#15121b;
    border:1px dashed #40344c;
    border-radius:5px;
    color:#b4a4c5;
}
.landing-shot-placeholder span {
    font-size:32px;
    color:#685578;
}
.landing-shot-placeholder small {
    font-size:10px;
}
.landing-gallery figcaption {
    font-size:11px;
    color:#bdb8c3;
    margin-top:14px;
}
.landing-access {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:85px;
    margin-bottom:40px;
}
.landing-access h3 {
    margin-top:0;
}
.landing-access-details strong {
    color:#eeeae1;
}
.landing-inline-login,.landing-status button {
    border:0;
    background:none;
    color:inherit;
    font:inherit;
    text-decoration:underline;
    cursor:pointer;
    padding:0;
}
.landing-status {
    padding:20px;
    background:#231c2c;
    line-height:1.7;
    margin-top:24px;
}
.landing-access-details .landing-button {
    margin-top:12px;
}
#landing-lightbox {
    box-sizing:border-box;
    width:min(1200px,95vw);
    max-width:95vw;
    max-height:95dvh;
    padding:16px;
    background:#100e14;
    border:1px solid #544161;
    border-radius:8px;
    color:#eeeae1;
    font-family:monospace;
}
#landing-lightbox::backdrop {
    background:rgba(0,0,0,.92);
}
#landing-lightbox button {
    font:inherit;
    cursor:pointer;
    background:#282030;
    color:#eeeae1;
    border:1px solid #514958;
    border-radius:4px;
    padding:10px 16px;
    min-height:44px;
}
#landing-full-image {
    display:block;
    max-height:72dvh;
    max-width:100%;
    width:auto;
    height:auto;
    object-fit:contain;
    margin:auto;
}
.landing-lightbox-toolbar,.landing-lightbox-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}
.landing-lightbox-toolbar {
    margin-bottom:14px;
}
.landing-lightbox-bottom p {
    font-size:13px;
    text-align:center;
}
.landing-lightbox-bottom {
    margin-top:14px;
}
body.landing-viewing-image {
    overflow:hidden;
}
@media(max-width:700px) {
    #page-wrap.game-landing {
        padding:0 22px;
    }
    .landing-brand img {
        width:min(480px, 82vw);
    }
    .landing-hero {
        padding:52px 0 35px;
    }
    .game-landing h1 {
        letter-spacing:-2px;
    }
    .landing-intro {
        font-size:14px;
    }
    .landing-shorts {
        grid-template-columns: minmax(0, 360px);
        justify-content: center;
    }
    .landing-media-note span:last-child {
        display:none;
    }
    .landing-section {
        padding:48px 0;
    }
    .landing-features,.landing-access {
        grid-template-columns:1fr;
        gap:25px;
    }
    .landing-gallery {
        grid-template-columns:1fr;
        gap:26px;
    }
    .landing-access {
        margin-bottom:10px;
    }

    .landing-actions {
        gap:22px;
    }
    .landing-features article+article {
        padding-top:22px;
        border-top:1px solid #29272e;
    }
}
@media(prefers-reduced-motion:reduce) {
    .landing-shot img {
        transition:none;
    }
}

.about-world-image {
    margin: 0;
}
.about-world-image > img {
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid #40344c;
    border-radius: 8px;
}
