
:root{
 --primary:#2A1F88;
 --secondary:#6f5cff;
 --accent:#FFD54A;
 --bg:#f6f7fb;
 --text:#222;
 --white:#fff;
 --shadow:0 20px 50px rgba(0,0,0,.12);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 font-family:"Poppins",sans-serif;
 background:var(--bg);
 color:var(--text);
 line-height:1.6;
}
.container{width:min(1180px,92%);margin:auto}
.navbar{
 position:fixed;top:0;left:0;width:100%;
 backdrop-filter:blur(14px);
 background:rgba(255,255,255,.78);
 box-shadow:0 10px 30px rgba(0,0,0,.06);
 z-index:1000;
}
.navbar .container{
 display:flex;justify-content:space-between;
 align-items:center;padding:18px 0;
}
.logo{height:56px}
.navbar ul{display:flex;gap:30px;list-style:none}
.navbar a{text-decoration:none;color:var(--primary);font-weight:600}
.hero{
 min-height:100vh;
 display:flex;
 align-items:center;
 background:linear-gradient(135deg,#2A1F88,#5946da);
 color:#fff;
}
.hero-content{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:60px;
 align-items:center;
 padding-top:110px;
}
.tag{
 display:inline-block;
 padding:8px 18px;
 border-radius:30px;
 background:rgba(255,255,255,.15);
 backdrop-filter:blur(10px);
 margin-bottom:20px;
}
.hero h1{
 font-size:3.5rem;
 line-height:1.1;
 margin-bottom:20px;
}
.hero p{font-size:1.1rem;opacity:.9}
.hero-image img{
 width:100%;
 border-radius:25px;
 box-shadow:var(--shadow);
}
.buttons{display:flex;gap:18px;margin:35px 0}
.btn-primary,.btn-secondary{
 text-decoration:none;
 padding:15px 28px;
 border-radius:50px;
 font-weight:700;
 transition:.3s;
}
.btn-primary{
 background:var(--accent);
 color:#222;
}
.btn-primary:hover{transform:translateY(-4px)}
.btn-secondary{
 border:2px solid #fff;
 color:#fff;
}
.stats{
 display:flex;
 gap:40px;
 margin-top:20px;
}
.stats h2{font-size:2rem}
.section{padding:90px 0}
.section h2{
 text-align:center;
 color:var(--primary);
 margin-bottom:20px;
 font-size:2.4rem;
}
.section>p{
 max-width:750px;
 margin:0 auto 40px;
 text-align:center;
}
.cards{
 display:grid;
 grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
 gap:25px;
}
.card{
 background:#fff;
 border-radius:20px;
 padding:30px;
 box-shadow:var(--shadow);
 transition:.3s;
}
.card:hover{
 transform:translateY(-10px);
}
.parceiros{
    background:#2A1F88;
    padding:80px 0;
    overflow:hidden;
}

.parceiros h2{
    color:#fff;
    text-align:center;
    margin-bottom:50px;
}

.slider-container{
    width:100%;
    overflow:hidden;
    position:relative;
}

.slider{

    display:flex;

    width:max-content;

    align-items:center;

    gap:60px;

    animation:rolar 40s linear infinite;

}

.slider:hover{
    animation-play-state:paused;
}

.partner{

    flex:0 0 auto;

    width:170px;

    text-align:center;

}

.partner img{

    width:150px;

    height:150px;

    border-radius:50%;

    object-fit:cover;

    border:4px solid rgba(255,255,255,.4);

    transition:.3s;

}

.partner img:hover{

    transform:scale(1.08);

}

.partner p{

    color:white;

    margin-top:10px;

}

@keyframes rolar{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-50%);
    }

}
.slider-container{

    width:100%;

    overflow:hidden;

    position:relative;

}

#slider{

    display:flex;

    gap:40px;

    cursor:grab;

    user-select:none;

    -webkit-user-select:none;

    touch-action:pan-y;

    will-change:transform;

}

#slider:active{

    cursor:grabbing;

}

.partner{

    flex:0 0 auto;

}

.partner img{

    width:150px;

    height:150px;

    object-fit:cover;

    border-radius:50%;

    transition:.3s;

}

.partner img:hover{

    transform:scale(1.08);

}
footer{
 background:#15153b;
 color:#fff;
 text-align:center;
 padding:45px 20px 30px;
}
footer h2{
    font-size:2rem;
    margin-bottom:10px;
}

footer p{
    margin:12px 0;
}

footer .btn-primary{
    margin-top:15px;
    margin-bottom:20px;
}
@media(max-width:900px){
.hero-content{grid-template-columns:1fr;text-align:center}
.navbar ul{display:none}
.buttons,.stats{justify-content:center;flex-wrap:wrap}
.hero h1{font-size:2.4rem}
}
/*==========================
ANIMAÇÕES
==========================*/

.hidden{
    opacity:0;
    transform:translateY(60px);
    transition:all .8s ease;
}

.show{
    opacity:1;
    transform:translateY(0);
}

/*==========================
NAVBAR AO ROLAR
==========================*/

.navbar.scroll{
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.15);
}

/*==========================
BOTÃO TOPO
==========================*/

#topButton{

position:fixed;

right:25px;

bottom:25px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:#FFD54A;

color:#2A1F88;

font-size:24px;

font-weight:bold;

cursor:pointer;

box-shadow:0 15px 30px rgba(0,0,0,.25);

opacity:0;

pointer-events:none;

transition:.3s;

z-index:9999;

}

#topButton.visible{

opacity:1;

pointer-events:auto;

}

#topButton:hover{

transform:translateY(-5px);

}
/* ==========================
   REDES SOCIAIS
========================== */

.social-icons{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:25px;
    margin:20px 0;
}

.social-icons a{
    color:#ffffff;
    font-size:30px;
    text-decoration:none;
    transition:.3s;
}

.social-icons a i{
    color:inherit;
}

.social-icons a:hover{
    color:#FFD54A;
    transform:translateY(-5px) scale(1.2);
}
