* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* BODY */
body {
    background: #fff;
    font-family: "Segoe UI", Georgia, serif;
}

/* SPLASH SCREEN */
#splash {
    position: fixed;
    inset: 0;
    background: radial-gradient(circle at top,#ffb74d,#e65100);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

/* LOGO TEXT */
.logo-text {
    font-size: 46px;
    font-weight: 600;
    letter-spacing: 2px;
    font-family: Georgia, "Times New Roman", serif;
}

.logo-text span {
    opacity: 0;
    display: inline-block;
    color: #fff8e1;
    text-shadow:
        0 0 6px rgba(255,193,7,.6),
        0 0 14px rgba(255,87,34,.5);
    animation: reveal 0.6s ease forwards;
}

/* LETTER DELAYS */
.logo-text span:nth-child(1){animation-delay:.1s}
.logo-text span:nth-child(2){animation-delay:.2s}
.logo-text span:nth-child(3){animation-delay:.3s}
.logo-text span:nth-child(4){animation-delay:.4s}
.logo-text span:nth-child(5){animation-delay:.5s}
.logo-text span:nth-child(6){animation-delay:.6s}
.logo-text span:nth-child(7){animation-delay:.7s}
.logo-text span:nth-child(8){animation-delay:.8s}
.logo-text span:nth-child(9){animation-delay:.9s}

/* SUBTITLE */
.subtitle {
    margin-top: 12px;
    font-size: 14px;
    letter-spacing: 1px;
    color: #fff3e0;
    opacity: 0;
    animation: fadeUp 1.2s ease forwards;
    animation-delay: 1.4s;
}

/* OM / SYMBOL */
.moon {
    margin-top: 18px;
    font-size: 30px;
    color: #fff3e0;
    opacity: .85;
    animation: float 2s ease-in-out infinite;
}

/* ANIMATIONS */
@keyframes reveal {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.9);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes float {
    0%,100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

/* MAIN APP */
.hidden {
    display: none;
}
