*{ margin:0; padding:0; 
    box-sizing:border-box;
}
html, body{ width:100%; height:100%; 
    overflow:hidden; background:#000; 
    font-family:'Montserrat',sans-serif;
}
canvas{ position:fixed; inset:0; width:100%; 
    height:100%; display:block; z-index:1;
}
.title{ position:fixed; top:50%; left:50%; 
    transform:translate(-50%,-50%); 
    z-index:2; display:flex; 
    justify-content:center; 
    align-items:center; max-width:90vw; 
    padding:20px; text-align:center; 
    line-height:1.2; letter-spacing:3px; 
    font-size:clamp(30px,5vw,64px); 
    font-weight:700; color:#ffffff; 
    white-space:pre-line; 
    word-break:break-word; user-select:none; 
    pointer-events:none; text-shadow:
        0 0 4px #ffffff, 0 0 8px #ffffff, 0 
        0 18px rgba(255,255,255,.9), 0 0 
        40px rgba(255,255,255,.7), 0 0 80px 
        rgba(255,255,255,.5), 0 0 140px 
        rgba(255,255,255,.3);
    animation: breathe 6s ease-in-out 
        infinite, glow 5s ease-in-out 
        infinite;
}
@keyframes breathe{ 0%,100%{ 
        transform:translate(-50%,-50%) 
        scale(1);
    }
    50%{ transform:translate(-50%,-50%) 
        scale(1.03);
    }
}
@keyframes glow{ 0%,100%{ opacity:.8; 
        filter:brightness(1);
    }
    50%{ opacity:1; filter:brightness(1.2);
    }
}
@media (max-width:768px){ .title{ 
        font-size:34px; letter-spacing:2px; 
        padding:16px;
    }
}
