/*====================================================
RESET
====================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Inter',sans-serif;
    background:#070707;
    color:#FFF;
    overflow-x:hidden;

}

img{
    display:block;
    max-width:100%;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

.container{

    width:min(1200px,90%);
    margin:auto;

}

/*====================================================
BOTÕES
====================================================*/

.btn-primary{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:16px 34px;

    border-radius:12px;

    background:#42D646;

    color:#FFF;

    font-weight:600;

    transition:.35s;

}

.btn-primary:hover{

    transform:translateY(-4px);

    box-shadow:0 15px 40px rgba(66,214,70,.35);

}

.btn-secondary{

    display:inline-flex;

    padding:16px 34px;

    border-radius:12px;

    border:1px solid rgba(255,255,255,.15);

    color:#FFF;

    transition:.35s;

}

.btn-secondary:hover{

    background:#FFF;

    color:#111;

}

/*====================================================
HEADER
====================================================*/

.header{

    position:fixed;

    top:0;
    left:0;

    width:100%;

    z-index:999;

    background:rgba(10,10,10,.88);

    backdrop-filter:blur(18px);

    border-bottom:1px solid rgba(255,255,255,.06);

}

.header .container{

    display:flex;

    align-items:center;

    justify-content:space-between;

    height:85px;

}

.logo img{

    width:170px;

}

.menu-list{

    display:flex;

    gap:40px;

}

.menu-list a{

    color:#FFF;

    font-size:15px;

    transition:.3s;

}

.menu-list a:hover{

    color:#42D646;

}

.menu-mobile{

    display:none;

    background:none;

    border:none;

}

.menu-mobile span{

    display:block;

    width:28px;

    height:2px;

    background:#FFF;

    margin:6px 0;

}

/*====================================================
HERO
====================================================*/

.hero{

    padding:180px 0 120px;

    background:

    radial-gradient(circle at top,#1e3b1d 0%,transparent 45%),

    #070707;

}

.hero-container{

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:70px;

}

.hero-badge{

    display:inline-block;

    padding:10px 18px;

    border-radius:40px;

    border:1px solid rgba(66,214,70,.35);

    color:#42D646;

    margin-bottom:30px;

    font-size:14px;

}

.hero h1{

    font-size:58px;

    line-height:1.1;

    margin-bottom:25px;

}

.hero p{

    color:#B8B8B8;

    font-size:19px;

    line-height:1.8;

    margin-bottom:40px;

}

.hero-buttons{

    display:flex;

    gap:18px;

    margin-bottom:45px;

}

.hero-features{

    display:flex;

    flex-wrap:wrap;

    gap:24px;

    color:#DDD;

}

.hero-image{

    text-align:center;

}

.hero-image img{

    width:100%;

    max-width:620px;

    animation:float 5s ease-in-out infinite;

}

/*====================================================
SECTION HEADER
====================================================*/

.section-header{

    max-width:760px;

    margin:0 auto 70px;

    text-align:center;

}

.section-badge{

    display:inline-block;

    padding:8px 18px;

    border:1px solid rgba(66,214,70,.25);

    border-radius:999px;

    color:#42D646;

    margin-bottom:20px;

}

.section-header h2{

    font-size:46px;

    line-height:1.2;

    margin-bottom:20px;

}

.section-header p{

    color:#AFAFAF;

    line-height:1.8;

}

/*====================================================
EMPRESAS
====================================================*/

.companies{

    padding:120px 0;

}

.companies-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.company-card{

    background:#111;

    border:1px solid rgba(255,255,255,.05);

    border-radius:22px;

    padding:40px;

    text-align:center;

    transition:.35s;

}

.company-card:hover{

    transform:translateY(-10px);

    border-color:#42D646;

    box-shadow:0 20px 50px rgba(66,214,70,.12);

}

.company-card i{

    font-size:46px;

    color:#42D646;

    margin-bottom:25px;

}

.company-card h3{

    font-size:24px;

    margin-bottom:16px;

}

.company-card p{

    color:#AFAFAF;

    line-height:1.7;

}

/*====================================================
ANIMAÇÃO
====================================================*/

@keyframes float{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-15px);

}

100%{

transform:translateY(0);

}

}
/*====================================================
SOBRE
====================================================*/

.about{

    padding:120px 0;

    background:#0B0B0B;

}

.about-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

.about-image{

    text-align:center;

}

.about-image img{

    width:100%;
    max-width:520px;
    margin:auto;

}

.about-content h2{

    font-size:48px;

    line-height:1.2;

    margin:20px 0 30px;

}

.about-content>p{

    color:#B8B8B8;

    line-height:1.9;

    margin-bottom:40px;

}

.about-list{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.about-list div{

    padding:22px 28px;

    border-left:3px solid #42D646;

    background:#121212;

    border-radius:12px;

}

.about-list strong{

    display:block;

    font-size:20px;

    margin-bottom:10px;

}

.about-list p{

    color:#AFAFAF;

    line-height:1.7;

}

/*====================================================
SOLUÇÕES
====================================================*/

.solutions{

    padding:120px 0;

}

.solutions-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.solution-card{

    background:#101010;

    border:1px solid rgba(255,255,255,.05);

    border-radius:22px;

    padding:40px;

    transition:.35s;

}

.solution-card:hover{

    transform:translateY(-10px);

    border-color:#42D646;

    box-shadow:0 20px 60px rgba(66,214,70,.18);

}

.solution-card i{

    font-size:48px;

    color:#42D646;

    margin-bottom:28px;

}

.solution-card h3{

    font-size:24px;

    margin-bottom:16px;

}

.solution-card p{

    color:#AFAFAF;

    line-height:1.8;

}

/*====================================================
COMO FUNCIONA
====================================================*/

.steps{

    padding:120px 0;

    background:#0B0B0B;

}

.steps-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.steps-grid article{

    position:relative;

    background:#101010;

    padding:45px 30px;

    border-radius:20px;

    border:1px solid rgba(255,255,255,.05);

    transition:.35s;

}

.steps-grid article:hover{

    transform:translateY(-10px);

    border-color:#42D646;

}

.steps-grid span{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:65px;

    height:65px;

    border-radius:50%;

    background:#42D646;

    color:#FFF;

    font-size:22px;

    font-weight:700;

    margin-bottom:28px;

}

.steps-grid h3{

    font-size:24px;

    margin-bottom:15px;

}

.steps-grid p{

    color:#AFAFAF;

    line-height:1.8;

}

/* Linha de conexão */

.steps-grid article::after{

    content:"";

    position:absolute;

    top:78px;

    right:-30px;

    width:30px;

    height:2px;

    background:rgba(66,214,70,.35);

}

.steps-grid article:last-child::after{

    display:none;

}
/*====================================================
BENEFÍCIOS
====================================================*/

.benefits{

    padding:120px 0;

}

.benefits-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.benefit-card{

    background:#101010;

    border:1px solid rgba(255,255,255,.05);

    border-radius:22px;

    padding:40px;

    transition:.35s;

    position:relative;

    overflow:hidden;

}

.benefit-card::before{

    content:"";

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:4px;

    background:#42D646;

    transform:scaleX(0);

    transition:.35s;

}

.benefit-card:hover{

    transform:translateY(-10px);

    border-color:#42D646;

    box-shadow:0 20px 60px rgba(66,214,70,.15);

}

.benefit-card:hover::before{

    transform:scaleX(1);

}

.benefit-card h3{

    font-size:24px;

    margin-bottom:18px;

}

.benefit-card p{

    color:#AFAFAF;

    line-height:1.8;

}

/*====================================================
CONTATO
====================================================*/

.contact{

    padding:120px 0;

    background:#0B0B0B;

}

.contact-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:start;

}

.contact-info h2{

    font-size:48px;

    margin:20px 0;

    line-height:1.2;

}

.contact-info>p{

    color:#AFAFAF;

    line-height:1.8;

    margin-bottom:35px;

}

.contact-info ul{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.contact-info li{

    color:#DDD;

    font-size:17px;

}

.contact-form{

    background:#111;

    padding:45px;

    border-radius:24px;

    border:1px solid rgba(255,255,255,.05);

}

.form-group{

    margin-bottom:22px;

}

.contact-form input,

.contact-form select,

.contact-form textarea{

    width:100%;

    background:#181818;

    border:1px solid rgba(255,255,255,.08);

    border-radius:12px;

    padding:18px 20px;

    color:#FFF;

    font-size:16px;

    outline:none;

    transition:.3s;

}

.contact-form input:focus,

.contact-form textarea:focus,

.contact-form select:focus{

    border-color:#42D646;

    box-shadow:0 0 0 4px rgba(66,214,70,.12);

}

.contact-form textarea{

    resize:none;

    min-height:170px;

}

.contact-form button{

    width:100%;

    border:none;

    cursor:pointer;

}

/*====================================================
FOOTER
====================================================*/

.footer{

    padding:70px 0 30px;

    background:#050505;

    border-top:1px solid rgba(255,255,255,.05);

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr;

    gap:50px;

    margin-bottom:50px;

}

.footer img{

    width:180px;

    margin-bottom:25px;

}

.footer p{

    color:#9C9C9C;

    line-height:1.8;

}

.footer h4{

    margin-bottom:20px;

    font-size:20px;

}

.footer ul{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.footer a{

    color:#BDBDBD;

    transition:.3s;

}

.footer a:hover{

    color:#42D646;

}

.footer-bottom{

    text-align:center;

    padding-top:30px;

    border-top:1px solid rgba(255,255,255,.05);

    color:#888;

}

/*====================================================
RESPONSIVO
====================================================*/

@media(max-width:992px){

.hero-container,
.about-grid,
.contact-grid{

grid-template-columns:1fr;

text-align:center;

}

.hero{

padding-top:140px;

}

.hero-buttons{

justify-content:center;

flex-wrap:wrap;

}

.hero-features{

justify-content:center;

}

.companies-grid,
.solutions-grid,
.benefits-grid{

grid-template-columns:repeat(2,1fr);

}

.steps-grid{

grid-template-columns:repeat(2,1fr);

}

.steps-grid article::after{

display:none;

}

.footer-grid{

grid-template-columns:1fr;

text-align:center;

}

.footer img{

margin:auto auto 25px;

}

}

@media(max-width:768px){

.header .btn-primary{

display:none;

}

.menu{

display:none;

}

.menu-mobile{

display:block;

}

.hero h1{

font-size:40px;

}

.section-header h2,
.about-content h2,
.contact-info h2{

font-size:34px;

}

.companies-grid,
.solutions-grid,
.steps-grid,
.benefits-grid{

grid-template-columns:1fr;

}

.contact-form{

padding:30px;

}

.hero-buttons{

flex-direction:column;

}

.btn-primary,
.btn-secondary{

width:100%;

}

}
.header{

    transition:.35s;

}

.header.scroll{

    background:rgba(5,5,5,.97);

    box-shadow:0 12px 35px rgba(0,0,0,.35);

}