/* ==========================================
           NEXA SOFTWARE HOUSE
              BY PH NEXA
========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    scroll-behavior:smooth;
}

:root{

    --bg:#050505;
    --bg2:#0b0b0d;

    --white:#ffffff;

    --purple:#7B2EFF;

    --blue:#00BFFF;

    --gray:#bdbdbd;

}

body{

    font-family:'Poppins',sans-serif;

    background:var(--bg);

    color:white;

    overflow-x:hidden;

}

/* ===========================
      FUNDO
=========================== */

.background{

    position:fixed;

    inset:0;

    z-index:-10;

    background:

    radial-gradient(circle at top left,#7B2EFF33,transparent 45%),

    radial-gradient(circle at bottom right,#00BFFF22,transparent 40%),

    linear-gradient(180deg,#050505,#090909,#050505);

}

/* ===========================
        HEADER
=========================== */

header{

    position:fixed;

    top:0;

    width:100%;

    height:90px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:0 8%;

    backdrop-filter:blur(25px);

    background:rgba(0,0,0,.30);

    border-bottom:1px solid rgba(255,255,255,.05);

    z-index:999;

}

.logo h2{

    color:white;

    font-size:30px;

}

.logo span{

    color:var(--blue);

    font-size:12px;

    letter-spacing:2px;

}

nav{

    display:flex;

    gap:35px;

}

nav a{

    color:white;

    text-decoration:none;

    transition:.3s;

    font-weight:500;

}

nav a:hover{

    color:var(--purple);

}

/* ===========================
      BOTÃO MENU
=========================== */

.menu-btn{

    padding:15px 30px;

    border-radius:50px;

    text-decoration:none;

    color:white;

    background:linear-gradient(90deg,var(--purple),var(--blue));

    font-weight:600;

    transition:.35s;

    box-shadow:0 0 35px rgba(123,46,255,.40);

}

.menu-btn:hover{

    transform:translateY(-5px);

}

/* ===========================
        HERO
=========================== */

.hero{

    min-height:100vh;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:150px 8%;

    gap:80px;

}

.hero-left{

    width:55%;

}

.hero-right{

    width:45%;

    display:flex;

    justify-content:center;

    align-items:center;

    position:relative;

}

.tag{

    display:inline-block;

    padding:12px 20px;

    border-radius:50px;

    background:rgba(123,46,255,.10);

    border:1px solid rgba(123,46,255,.30);

    color:var(--blue);

    font-size:13px;

    margin-bottom:30px;

}

.hero h1{

    font-size:70px;

    line-height:1.1;

    margin-bottom:25px;

}

.hero h1 span{

    color:var(--blue);

    display:block;

}

.hero p{

    font-size:20px;

    color:#cfcfcf;

    line-height:1.8;

    margin-bottom:40px;

}

.hero-buttons{

    display:flex;

    gap:20px;

    margin-bottom:60px;

}

.btn-primary{

    background:linear-gradient(90deg,var(--purple),var(--blue));

    color:white;

    text-decoration:none;

    padding:18px 40px;

    border-radius:50px;

    font-weight:600;

    transition:.35s;

}

.btn-primary:hover{

    transform:translateY(-5px);

}

.btn-secondary{

    border:1px solid rgba(255,255,255,.20);

    color:white;

    text-decoration:none;

    padding:18px 40px;

    border-radius:50px;

}

.hero-numbers{

    display:flex;

    gap:60px;

}

.hero-numbers h3{

    color:var(--purple);

    font-size:35px;

}

.hero-numbers span{

    color:#bdbdbd;

}

/* ===========================
       DASHBOARD
=========================== */

.dashboard{

    width:500px;

    height:500px;

    border-radius:30px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(25px);

    box-shadow:0 0 50px rgba(123,46,255,.35);

}

.dashboard-top{

    height:60px;

    display:flex;

    align-items:center;

    gap:12px;

    padding-left:25px;

    border-bottom:1px solid rgba(255,255,255,.08);

}

.circle{

    width:14px;

    height:14px;

    border-radius:50%;

}

.red{

    background:#ff4f4f;

}

.yellow{

    background:#ffd93d;

}

.green{

    background:#2ecc71;

}

.dashboard-body{

    padding:35px;

}

.code-line{

    height:12px;

    margin-bottom:20px;

    border-radius:30px;

    background:linear-gradient(90deg,var(--purple),var(--blue));

}

.w40{width:40%;}
.w60{width:60%;}
.w70{width:70%;}
.w75{width:75%;}
.w80{width:80%;}
.w90{width:90%;}
.w95{width:95%;}
.w100{width:100%;}

/* ===========================
    CARDS FLUTUANTES
=========================== */

.floating-card{

    position:absolute;

    width:220px;

    padding:20px;

    border-radius:20px;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.08);

    box-shadow:0 0 30px rgba(123,46,255,.20);

}

.floating-card h4{

    margin:15px 0;

}

.floating-card p{

    color:#cfcfcf;

    font-size:14px;

}

.card-ai{

    right:-40px;

    top:-20px;

}

.card-design{

    left:-40px;

    bottom:50px;

}

.card-system{

    right:-50px;

    bottom:-20px;

}
/*=========================================
            MARCA DAS TECNOLOGIAS
=========================================*/

.brands{

    width:100%;

    overflow:hidden;

    padding:50px 0;

    border-top:1px solid rgba(255,255,255,.05);

    border-bottom:1px solid rgba(255,255,255,.05);

    background:rgba(255,255,255,.02);

}

.brand-track{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:25px;

}

.brand-track span{

    padding:14px 28px;

    border-radius:50px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.06);

    color:#d9d9d9;

    transition:.35s;

    cursor:default;

}

.brand-track span:hover{

    background:linear-gradient(90deg,var(--purple),var(--blue));

    transform:translateY(-6px);

}



/*=========================================
            TITULOS DAS SEÇÕES
=========================================*/

.section-title{

    text-align:center;

    margin-bottom:70px;

}

.section-title span{

    color:var(--blue);

    letter-spacing:3px;

    font-size:14px;

}

.section-title h2{

    font-size:48px;

    margin:20px 0;

}

.section-title p{

    max-width:750px;

    margin:auto;

    color:#bdbdbd;

    line-height:1.8;

}



/*=========================================
              SERVIÇOS
=========================================*/

.services{

    padding:140px 8%;

}

.services-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.service-card{

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    border-radius:25px;

    padding:40px;

    transition:.4s;

    backdrop-filter:blur(20px);

}

.service-card:hover{

    transform:translateY(-12px);

    border-color:var(--purple);

    box-shadow:0 0 35px rgba(123,46,255,.25);

}

.icon{

    font-size:42px;

    margin-bottom:25px;

}

.service-card h3{

    margin-bottom:15px;

}

.service-card p{

    color:#c9c9c9;

    line-height:1.8;

}



/*=========================================
                SOBRE
=========================================*/

.about{

    padding:150px 8%;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

.section-mini{

    color:var(--blue);

    letter-spacing:3px;

    font-size:13px;

}

.about h2{

    font-size:50px;

    margin:25px 0;

}

.about p{

    color:#c6c6c6;

    line-height:2;

    margin-bottom:25px;

}

.info-card{

    background:rgba(255,255,255,.05);

    border-radius:20px;

    border:1px solid rgba(255,255,255,.08);

    padding:30px;

    margin-bottom:25px;

}

.info-card h3{

    margin-bottom:15px;

}

.info-card p{

    margin:0;

}



/*=========================================
             TECNOLOGIAS
=========================================*/

.tech{

    padding:140px 8%;

}

.tech-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.tech-grid div{

    padding:30px;

    border-radius:18px;

    text-align:center;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    transition:.35s;

}

.tech-grid div:hover{

    transform:translateY(-8px);

    background:linear-gradient(90deg,var(--purple),var(--blue));

}



/*=========================================
             PROCESSO
=========================================*/

.process{

    padding:140px 8%;

}

.process-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:35px;

}

.step{

    text-align:center;

    background:rgba(255,255,255,.04);

    border-radius:25px;

    padding:40px;

    border:1px solid rgba(255,255,255,.08);

}

.step h3{

    font-size:70px;

    color:var(--purple);

}

.step h4{

    margin:20px 0;

}

.step p{

    color:#c8c8c8;

}
/*=========================================
            MARKETING DIGITAL
=========================================*/

.marketing{

    padding:140px 8%;

}

.marketing-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.marketing-card{

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    border-radius:25px;

    padding:35px;

    transition:.35s;

    backdrop-filter:blur(15px);

}

.marketing-card:hover{

    transform:translateY(-10px);

    border-color:var(--blue);

    box-shadow:0 0 35px rgba(0,191,255,.20);

}

.marketing-card h3{

    color:var(--blue);

    margin-bottom:20px;

    font-size:24px;

}

.marketing-card p{

    color:#cfcfcf;

    line-height:1.8;

}

/*=========================================
                  FAQ
=========================================*/

.faq{

    padding:140px 8%;

}

.faq-item{

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    border-radius:20px;

    padding:35px;

    margin-bottom:25px;

    transition:.35s;

}

.faq-item:hover{

    border-color:var(--purple);

    transform:translateY(-5px);

}

.faq-item h3{

    margin-bottom:15px;

    font-size:22px;

}

.faq-item p{

    color:#cfcfcf;

    line-height:1.8;

}

/*=========================================
                CTA
=========================================*/

.cta{

    padding:180px 8%;

    text-align:center;

    background:

    radial-gradient(circle,#7B2EFF22,transparent 70%);

}

.cta h2{

    font-size:60px;

    margin-bottom:30px;

}

.cta p{

    max-width:800px;

    margin:auto;

    color:#cfcfcf;

    font-size:20px;

    line-height:1.8;

    margin-bottom:50px;

}

/*=========================================
               FOOTER
=========================================*/

footer{

    padding:80px 8%;

    border-top:1px solid rgba(255,255,255,.08);

    text-align:center;

}

.footer-top h2{

    font-size:42px;

}

.footer-top p{

    margin-top:15px;

    color:#bdbdbd;

}

.footer-links{

    display:flex;

    justify-content:center;

    gap:30px;

    margin:50px 0;

    flex-wrap:wrap;

}

.footer-links a{

    color:white;

    text-decoration:none;

    transition:.3s;

}

.footer-links a:hover{

    color:var(--purple);

}

.footer-copy{

    color:#8b8b8b;

    line-height:2;

    font-size:15px;

}

/*=========================================
          WHATSAPP FLUTUANTE
=========================================*/

.whatsapp{

    position:fixed;

    right:30px;

    bottom:30px;

    width:70px;

    height:70px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    font-size:32px;

    background:#25D366;

    color:white;

    box-shadow:0 0 30px rgba(37,211,102,.45);

    z-index:99999;

    animation:pulse 2s infinite;

}

@keyframes pulse{

    0%{

        transform:scale(1);

    }

    50%{

        transform:scale(1.12);

    }

    100%{

        transform:scale(1);

    }

}

/*=========================================
             BLURS
=========================================*/

.blur{

    position:fixed;

    width:500px;

    height:500px;

    border-radius:50%;

    filter:blur(150px);

    z-index:-5;

    opacity:.25;

}

.blur1{

    background:#7B2EFF;

    top:-180px;

    left:-180px;

}

.blur2{

    background:#00BFFF;

    bottom:-180px;

    right:-180px;

}

/*=========================================
          RESPONSIVIDADE
=========================================*/

@media(max-width:1200px){

.services-grid{

grid-template-columns:repeat(2,1fr);

}

.tech-grid{

grid-template-columns:repeat(2,1fr);

}

.process-grid{

grid-template-columns:repeat(2,1fr);

}

.marketing-grid{

grid-template-columns:repeat(2,1fr);

}

.hero{

flex-direction:column;

text-align:center;

}

.hero-left{

width:100%;

}

.hero-right{

width:100%;

margin-top:60px;

}

.hero-buttons{

justify-content:center;

}

.hero-numbers{

justify-content:center;

}

.about{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

header{

padding:20px;

flex-direction:column;

height:auto;

}

nav{

display:none;

}

.hero h1{

font-size:42px;

}

.hero p{

font-size:18px;

}

.dashboard{

width:100%;

height:380px;

}

.services-grid,

.tech-grid,

.process-grid,

.marketing-grid{

grid-template-columns:1fr;

}

.cta h2{

font-size:38px;

}

.section-title h2{

font-size:34px;

}

.about h2{

font-size:36px;

}

.hero-buttons{

flex-direction:column;

}

.hero-numbers{

flex-direction:column;

gap:20px;

}

.whatsapp{

width:60px;

height:60px;

font-size:28px;

}

}
/*==================================
      CURSOR GLOW
==================================*/

.cursor-glow{

position:fixed;

width:350px;

height:350px;

border-radius:50%;

pointer-events:none;

background:radial-gradient(

circle,

rgba(123,46,255,.18),

transparent 70%

);

transform:translate(-50%,-50%);

z-index:-1;

transition:.08s;

filter:blur(20px);

}

/*==================================
       PARTICLES
==================================*/

.particle{

position:fixed;

width:4px;

height:4px;

background:#7B2EFF;

border-radius:50%;

opacity:.45;

pointer-events:none;

animation:particle linear infinite;

}

@keyframes particle{

0%{

transform:translateY(0);

opacity:0;

}

20%{

opacity:1;

}

100%{

transform:translateY(-300px);

opacity:0;

}

}
/* TERMINAL */

.terminal{

width:100%;

height:100%;

padding:30px;

font-family:Consolas,monospace;

font-size:15px;

color:#00ff90;

line-height:1.7;

white-space:pre-wrap;

overflow:hidden;

}
/* TERMINAL */

.terminal{

width:100%;
height:100%;

padding:30px;

font-family:Consolas,monospace;

font-size:15px;

line-height:1.8;

color:#00ff88;

white-space:pre-wrap;

overflow:hidden;

}