:root{
	--bg-bottom:#071029;
	--accent:#FFD180;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
	margin:0;
	min-height:100vh;
	font-family:system-ui,Segoe UI,Roboto,"Helvetica Neue",Arial;
	background-color:var(--bg-bottom);
	background-image:linear-gradient(rgba(7,16,41,0.55),rgba(7,16,41,0.55)),url('imgs/wallpaper2.png');
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
	color:#fff;
	overflow:hidden;
	display:flex;
	align-items:center;
	justify-content:center;
}

.stage{
	position:relative;
	width:100%;
	height:100vh;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:24px;
}

.stage::before{
	content:"";
	position:absolute;
	inset:0;
	z-index:2;
	pointer-events:none;
	background:linear-gradient(120deg,rgba(255,168,90,0.02),transparent 20%,rgba(124,77,255,0.02));
	animation:overlayMove 18s linear infinite;
}

.content{
	position:relative;
	z-index:4;
	width:min(980px,94vw);
	display:flex;
	flex-direction:column;
	gap:18px;
	align-items:center;
	justify-content:center;
}

.hero,
.about,
.projects,
.site-footer{
	width:100%;
	display:flex;
	justify-content:center;
}

.hero-inner,
.about-card,
.projects-card,
.footer-inner{
	width:100%;
	background:linear-gradient(180deg,rgba(255,255,255,0.06),rgba(255,255,255,0.03));
	backdrop-filter:blur(8px);
	border:1px solid rgba(255,255,255,0.04);
	border-radius:18px;
	box-shadow:0 14px 50px rgba(2,6,23,0.35);
	padding:20px;
}

.hero-inner{
	display:flex;
	align-items:center;
	gap:18px;
}

.hero-avatar{flex:0 0 auto}
.hero-avatar img,
.avatar-fallback{
	width:120px;
	height:120px;
	border-radius:50%;
	object-fit:cover;
	display:block;
	box-shadow:0 8px 30px rgba(2,6,23,0.55);
	border:4px solid rgba(255,255,255,0.03);
}
.avatar-fallback{display:none;background:linear-gradient(180deg,#FFD180,#FFB86B)}
.hero-text{display:flex;flex-direction:column;gap:6px}
.pseudo{margin:0;font-size:clamp(28px,4vw,38px);letter-spacing:.4px}
.subtitle{margin:0;color:rgba(255,255,255,.78);font-size:clamp(14px,1.8vw,18px)}

.about-card h2,
.projects-card h2{
	margin:0 0 10px 0;
	font-size:clamp(22px,2.6vw,30px);
}
.about-card p{margin:0;color:rgba(255,255,255,.82);line-height:1.5}

.projects-card{padding-bottom:16px}
.project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.project-item{opacity:0;animation:reveal .45s ease both}
.project-item:nth-child(1){animation-delay:.08s}
.project-item:nth-child(2){animation-delay:.14s}
.project-item:nth-child(3){animation-delay:.20s}
.project-item:nth-child(4){animation-delay:.26s}
.project-item a{
	display:block;
	padding:12px 14px;
	border-radius:12px;
	background:rgba(255,255,255,0.04);
	color:#fff;
	text-decoration:none;
	font-weight:500;
	transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}
.project-item a:hover{
	transform:translateY(-4px);
	background:rgba(255,255,255,0.08);
	box-shadow:0 10px 24px rgba(2,6,23,.35)
}

.contact-buttons{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}
.btn{
	padding:10px 14px;
	border-radius:12px;
	text-decoration:none;
	color:#fff;
	background:transparent;
	border:1px solid rgba(255,255,255,0.12);
	backdrop-filter:blur(4px);
	transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
.btn:hover{transform:translateY(-3px);background:rgba(255,255,255,.04);box-shadow:0 10px 24px rgba(2,6,23,.35)}
.btn.discord{border-color:rgba(88,101,242,.35)}
.btn.mail{border-color:rgba(255,184,107,.28);color:var(--accent)}
.btn.github{border-color:rgba(255,255,255,.18)}

@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes reveal{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}
@keyframes overlayMove{0%{background-position:0 0}50%{background-position:50% 100%}100%{background-position:0 0}}

@media (max-width:760px){
	.content{width:min(620px,94vw);gap:14px}
	.hero-inner{flex-direction:column;text-align:center}
	.hero-text{align-items:center}
	.hero-avatar img,
	.avatar-fallback{width:108px;height:108px}
	.about-card,
	.projects-card,
	.footer-inner,
	.hero-inner{padding:16px}
}

@media (max-width:520px){
	body{overflow:auto}
	.stage{height:auto;min-height:100vh;padding:16px}
	.content{width:min(100%,92vw)}
	.contact-buttons{flex-direction:column;align-items:stretch}
	.btn{text-align:center}
}
