* {
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Inter', sans-serif;
}

body{
background:#0b0b0f;
color:#fff;
}

/* CONTAINER */

.container{
max-width:1100px;
margin:auto;
padding:40px 20px;
}

/* NAVBAR */

header{
position:fixed;
width:100%;
background:rgba(0,0,0,0.6);
backdrop-filter:blur(10px);
z-index:10;
}

.nav{
display:flex;
justify-content:space-between;
align-items:center;
}

.logo img{
height:40px;
}

.btn-nav{
background:#7605b1;
color:#fff;
padding:10px 20px;
border-radius:8px;
text-decoration:none;
font-weight:600;
}

/* HERO */

.hero{
position:relative;
padding-top:140px;
padding-bottom:120px;
overflow:hidden;
}

.gradient-bg{
position:absolute;
width:800px;
height:800px;
background:radial-gradient(circle,#7605b140,transparent);
top:-200px;
left:-200px;
animation:float 8s infinite alternate;
}

@keyframes float{
0%{transform:translateY(0px);}
100%{transform:translateY(40px);}
}

.hero-content{
text-align:center;
position:relative;
z-index:2;
}

.hero h1{
font-size:48px;
line-height:1.2;
}

.hero span{
background:linear-gradient(90deg,#7605b1,#a855f7);
-webkit-background-clip:text;
-webkit-text-fill-color:transparent;
}

.subtitle{
color:#bbb;
margin:25px auto;
max-width:700px;
font-size:18px;
}

/* BOTÃO */

.btn-primary{
background:linear-gradient(90deg,#7605b1,#a855f7);
padding:16px 32px;
border-radius:10px;
color:#fff;
text-decoration:none;
font-weight:600;
display:inline-block;
margin-top:25px;
transition:.3s;
}

.btn-primary:hover{
transform:translateY(-2px);
}

/* BADGES */

.badges{
margin-top:40px;
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

.badges div{
background:rgba(255,255,255,0.05);
padding:10px 20px;
border-radius:30px;
font-size:14px;
}

/* SEÇÕES */

.autoridade{
background:linear-gradient(180deg,#0b0b0f,#111);
text-align:center;
}

.estrutura{
background:#0f0f14;
}

.cards{
display:flex;
gap:25px;
flex-wrap:wrap;
margin-top:40px;
}

.card{
flex:1;
min-width:260px;
background:rgba(255,255,255,0.03);
padding:30px;
border-radius:16px;
border:1px solid rgba(255,255,255,0.05);
}

/* SOBRE */

.sobre{
background:#0b0b0f;
}

.sobre-flex{
display:flex;
align-items:center;
gap:40px;
flex-wrap:wrap;
}

.sobre-foto img{
width:280px;
border-radius:20px;
}

/* CTA */

.cta{
background:linear-gradient(180deg,#0b0b0f,#09090c);
text-align:center;
}

/* FOOTER */

footer{
text-align:center
