/* ==========================================================================
   Guest shell / shared background
   Used on landing/auth guest pages
   ========================================================================== */

html,
body {
    min-height: 100%;
}

body.body-landing-page,
body.body-auth-page {
    min-height: 100vh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 82% 6%, rgba(255, 43, 180, .34) 0, rgba(255, 43, 180, .12) 25%, transparent 54%),
        radial-gradient(circle at 49% 48%, rgba(105, 42, 255, .34) 0, rgba(36, 101, 255, .14) 35%, transparent 64%),
        radial-gradient(circle at 5% 98%, rgba(27, 82, 255, .34) 0, rgba(27, 82, 255, .10) 35%, transparent 62%),
        linear-gradient(135deg, #050611 0%, #080a16 48%, #050611 100%);
    background-attachment: fixed;
    color: #fff;
}

body.body-landing-page .page,
body.body-landing-page .content,
body.body-auth-page .page,
body.body-auth-page .content,
body.body-auth-page .page-content,
body.body-auth-page .page-single,
body.body-auth-page .page-main {
    background: transparent !important;
    box-shadow: none !important;
}

body.body-landing-page .page,
body.body-landing-page .content,
body.body-auth-page .page,
body.body-auth-page .content,
body.body-auth-page .page-main {
    min-height: 100vh;
}

body.body-landing-page .content,
body.body-auth-page .content {
    padding: 0 !important;
    margin: 0 !important;
}

body.body-auth-page .container {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

body.body-landing-page a,
body.body-auth-page a {
    color: inherit;
}

.hide {
    display: none !important;
}


/* ==========================================================================
   Shared decorative page layer
   ========================================================================== */

.rk-guest-page {
    position: relative;
    min-height: calc(100vh - 96px);
    overflow: hidden;
    isolation: isolate;
}

.rk-guest-page::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -3;
    pointer-events: none;
    opacity: .15;
    background-image:
        radial-gradient(circle, rgba(255, 255, 255, .18) 0 1px, transparent 1.5px),
        radial-gradient(circle, rgba(255, 60, 203, .20) 0 1px, transparent 1.5px);
    background-size: 96px 96px, 144px 144px;
    background-position: 14px 28px, 64px 48px;
}

.rk-guest-page::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(5, 6, 17, .06), transparent 30%, transparent 70%, rgba(5, 6, 17, .18)),
        linear-gradient(180deg, rgba(255, 255, 255, .018), transparent 34%, rgba(0, 0, 0, .14));
}

.rk-guest-orb {
    position: absolute;
    z-index: -1;
    pointer-events: none;
    border-radius: 999px;
    filter: blur(38px);
    opacity: .78;
}

.rk-guest-orb-one {
    width: 460px;
    height: 460px;
    top: -210px;
    right: 0;
    background: rgba(255, 43, 180, .34);
}

.rk-guest-orb-two {
    width: 560px;
    height: 560px;
    left: 36%;
    top: 17%;
    background: rgba(91, 42, 255, .26);
}

.rk-guest-orb-three {
    width: 480px;
    height: 480px;
    left: -220px;
    bottom: -230px;
    background: rgba(29, 92, 255, .34);
}

@media (max-width: 767px) {
    .rk-guest-page {
        min-height: auto;
    }
}