*{margin:0;padding:0;box-sizing:border-box;}
body{
font-family:'Montserrat',sans-serif;
color:#fff;
height:100vh;
background:url('image.png') center/cover no-repeat;
position:relative;
}
.overlay{
position:absolute;
width:100%;
height:100%;
background:rgba(0,0,0,0.6);
top:0;left:0;
}
header{
position:absolute;
top:40px;
left:60px;
z-index:2;
}
.logo{font-size:22px;letter-spacing:3px;}
.logo span{color:#C6FF00;}
.sub{margin-top:10px;font-size:12px;opacity:.7;letter-spacing:2px;}
main{
position:relative;
z-index:2;
text-align:center;
top:50%;
transform:translateY(-50%);
}
h1{font-size:90px;font-weight:800;letter-spacing:3px;}
.subtitle{margin-top:20px;font-size:22px;opacity:.9;}
.divider{width:80px;height:4px;background:#C6FF00;margin:30px auto;}
.desc{font-size:16px;opacity:.75;margin-bottom:40px;}
.form{display:flex;justify-content:center;gap:10px;}
input{
width:340px;
padding:15px;
border-radius:12px;
border:1px solid rgba(255,255,255,.3);
background:rgba(0,0,0,0.4);
color:#fff;
}
button{
padding:15px 25px;
background:#C6FF00;
border:none;
border-radius:12px;
font-weight:600;
cursor:pointer;
}
footer{
position:absolute;
bottom:30px;
width:100%;
display:flex;
justify-content:space-around;
font-size:12px;
opacity:.7;
z-index:2;
}
.center{max-width:420px;text-align:center;}
.brand{color:#C6FF00;}

.form-message{
margin-top:14px;
font-size:14px;
text-align:center;
min-height:20px;
color:#fff;
position:relative;
z-index:2;
}
.form-message.success{color:#C6FF00;}
.form-message.error{color:#ff9f9f;}
button:disabled{opacity:.7;cursor:not-allowed;}
