/* Intro Overlay — shared across all modes
   Each mode sets --overlay-glow on :root or #type-overlay
   Traveler: rgba(123,203,138,0.4)   green
   Investor: rgba(203,179,122,0.4)   gold
   Main:     rgba(123,163,203,0.4)   blue
*/

#type-overlay {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(8px);
    pointer-events: none !important;
    opacity: 0;
    transition: opacity 0.35s ease;
}

#type-overlay.show {
    display: flex;
    opacity: 1;
}

#type-overlay.fade-out {
    opacity: 0;
    transition: opacity 0.65s ease;
}

.type-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transform: scale(0.985) translateY(10px);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

#type-overlay.show .type-container {
    transform: scale(1) translateY(0);
}

#type-overlay.fade-out .type-container {
    transform: scale(1.02) translateY(-6px);
    transition: transform 0.65s ease;
}

#type-overlay-text {
    font-family: "Cinzel", serif;
    font-size: clamp(48px, 9vw, 120px);
    letter-spacing: 0.25em;
    color: #fff;
    text-shadow: 0 0 60px var(--overlay-glow, rgba(255, 255, 255, 0.3));
    margin-bottom: 0.2em;
    text-align: center;
    white-space: nowrap;
}

#type-overlay-sub {
    font-family: "Manrope", sans-serif;
    font-size: clamp(12px, 2vw, 18px);
    letter-spacing: 0.6em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.6);
    text-align: center;
}