/* =====================================
GLOBAL
===================================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html,body{
overflow-x:hidden;
}

body{
background:#070708;
color:#d1d1d1;
font-family:'Open Sans',sans-serif;
line-height:1.7;
}

section{
padding:120px 0;
}

.section.dark{
background:#0c0c0e;
}


/* =====================================
TYPOGRAPHY
===================================== */

h1,h2,h3,h4{
font-family:'Montserrat',sans-serif;
color:#fff;
font-weight:600;
}

h1{
font-size:52px;
letter-spacing:1px;
}

h2{
font-size:36px;
margin-bottom:50px;
}

p{
font-size:18px;
color:#bfbfbf;
}


/* =====================================
HEADER
===================================== */

.navbar-custom{
background:transparent;
transition:all .35s ease;

/* correção flicker */
transform:translateZ(0);
will-change:backdrop-filter;
}

.top-nav-collapse{
background:rgba(10,10,10,.6);
backdrop-filter:blur(14px);
border-bottom:1px solid rgba(255,255,255,.05);
}

.navbar-nav{
gap:30px;
}

.nav-link{
color:#d9d9d9;
font-weight:500;
}

.nav-link:hover{
color:#fff;
}


/* =====================================
LANG DROPDOWN
===================================== */

.lang-dropdown{
position:relative;
cursor:pointer;
}

.lang-btn{
background:none;
border:none;
color:#e6e6e6;
font-weight:500;
display:flex;
align-items:center;
gap:6px;
}

.lang-menu{
display:none;
position:absolute;
right:0;
background:#111;
padding:10px 0;
list-style:none;
border-radius:6px;
width:140px;
box-shadow:0 10px 30px rgba(0,0,0,.6);
}

.lang-menu li{
padding:8px 15px;
cursor:pointer;
display:flex;
align-items:center;
gap:8px;
}

.lang-menu li:hover{
background:#1c1c1c;
}

.lang-dropdown:hover .lang-menu{
display:block;
}

.flag-icon{
width:18px;
height:12px;
object-fit:cover;
border-radius:2px;
}


/* =====================================
HERO
===================================== */

.hero-section{
height:100vh;
display:flex;
align-items:center;
justify-content:center;
position:relative;

/* correção estrelas */
overflow:hidden;
}

.hero-content{
position:relative;
z-index:3;
}

.hero-logo{
width:220px;
margin-bottom:30px;
}

#aurora-bg{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
z-index:1;

/* evita estrelas vazarem */
overflow:hidden;
}


/* =====================================
WAVE
===================================== */

.hero-wave{
position:absolute;
bottom:0;
left:0;
width:100%;
z-index:2;
}

.hero-wave svg{
width:100%;
height:220px;
display:block;
}


/* =====================================
GRID
===================================== */

.investment-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:45px;
margin-top:60px;
}


/* =====================================
CARDS
===================================== */

.investment-card{
background:#101013;
padding:50px 40px;
border-radius:10px;
border:1px solid rgba(255,255,255,.05);
transition:.35s;
text-align:center;
}

.investment-card i{
font-size:36px;
margin-bottom:20px;
color:#e2e2e2;
}

.investment-card h4{
margin-bottom:15px;
}

.investment-card:hover{
transform:translateY(-10px);
border:1px solid rgba(255,255,255,.12);
background:#151518;
}


/* =====================================
VMV GRID
===================================== */

.vmv-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:60px;
margin-top:40px;
}


/* =====================================
FOOTER
===================================== */

footer{
background:#050505;
padding:60px 0;
color:#777;
text-align:center;
}


/* =====================================
RESPONSIVE
===================================== */

@media(max-width:768px){

h1{
font-size:34px;
}

h2{
font-size:28px;
}

.hero-logo{
width:180px;
}

section{
padding:80px 0;
}

}


/* ============================
SPACE SKY BACKGROUND
============================ */

#aurora-bg{

background: linear-gradient(
to top,
#1a1a1d 0%,
#0a0a0c 35%,
#050506 70%,
#000000 100%
);

}

#aurora-bg canvas{

filter: blur(2.4px) brightness(1.15);

transform: scale(1.02);

}

/* ============================
BRAZIL SECTION PARALLAX
============================ */

.presence-section{

position:relative;
overflow:hidden;

}

/* imagem de fundo */

.presence-section::before{

content:"";

position:absolute;
top:0;
left:0;

width:100%;
height:100%;

background-image:url("../img/riodejaneiro.jpg");

background-size:cover;
background-position:center;

opacity:.15;

z-index:0;

/* parallax */

background-attachment:fixed;

}

/* fade da imagem */

.presence-section::after{

content:"";

position:absolute;
top:0;
left:0;

width:100%;
height:100%;

background:linear-gradient(
to bottom,

rgba(7,7,8,1) 0%,
rgba(7,7,8,0.95) 8%,
rgba(7,7,8,0.6) 20%,

rgba(7,7,8,0.0) 45%,
rgba(7,7,8,0.0) 55%,

rgba(7,7,8,0.6) 80%,
rgba(7,7,8,0.95) 92%,
rgba(7,7,8,1) 100%

);

z-index:1;

}

/* garantir que texto fique na frente */

.presence-section .container{
position:relative;
z-index:2;
}

/* =========================
ABOUT SECTION TITLE
========================= */

.about-title{

text-align:center;
margin-bottom:40px;

}

.about-title h2{
margin-top:10px;
}

/* estrelas */

.stars-arc{

width:160px;
margin:0 auto;
opacity:.9;

}

.stars-arc svg{

width:100%;
height:auto;
fill:#ffffff;

}

/* ============================
CONTACT SECTION
============================ */

.contact-wrapper{

display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
margin-top:60px;

}

.contact-form input,
.contact-form textarea{

width:100%;
padding:14px 16px;

background:#0f0f11;
border:1px solid rgba(255,255,255,.08);
border-radius:6px;

color:#fff;

}

.contact-form input:focus,
.contact-form textarea:focus{

outline:none;
border-color:rgba(255,255,255,.25);

}

.form-group{
margin-bottom:20px;
}

.contact-btn{

background:#ffffff;
color:#000;

border:none;
padding:14px 30px;

border-radius:6px;
font-weight:600;

transition:.25s;

}

.contact-btn:hover{

background:#e6e6e6;

}


/* CONTACT INFO */

.contact-info{
display:flex;
flex-direction:column;
gap:20px;
}

.contact-item{

display:flex;
align-items:center;
gap:16px;

background:#0f0f11;
padding:18px;

border-radius:8px;

border:1px solid rgba(255,255,255,.05);

}

.contact-item i{

font-size:20px;
color:#fff;

}

.contact-text span{

font-size:13px;
color:#888;

}

.contact-text p{

margin:0;
color:#fff;

}

.copy-btn{

margin-left:auto;

background:#151518;
border:none;

color:#fff;

padding:8px 14px;

border-radius:5px;

cursor:pointer;

font-size:13px;

transition:.2s;

}

.copy-btn:hover{
background:#202024;
}


/* RESPONSIVE */

@media(max-width:900px){

.contact-wrapper{
grid-template-columns:1fr;
}

}

.copy-btn.copied{

background:#2ecc71;
color:#000;

}

.copy-btn{
transition:.25s;
}
.copy-btn.copied{

background:#2ecc71;
color:#000;
transform:scale(1.05);

}

/* ============================
WHATSAPP FLOAT BUTTON
============================ */

.whatsapp-float{

position:fixed;
bottom:30px;
right:30px;

height:60px;
width:60px;

display:flex;
align-items:center;
justify-content:flex-end;

padding-right:18px;

background:#0f0f11;

border-radius:50%;

border:1px solid rgba(255,255,255,.08);

color:#ffffff;

font-size:24px;

z-index:999999;

transition:
width .35s ease,
border-radius .35s ease,
background .35s ease,
transform .25s ease;

box-shadow:0 10px 25px rgba(0,0,0,.6);

text-decoration:none;

overflow:hidden;

}

/* remover sublinhado */

.whatsapp-float:hover{
text-decoration:none;
}

/* ícone */

.whatsapp-float i{

display:flex;
align-items:center;
justify-content:center;

width:24px;
height:24px;

flex-shrink:0;

transition:.3s;

}

/* texto */

.whatsapp-label{

position:absolute;

right:70px;

opacity:0;

color:#ffffff;

font-size:14px;

white-space:nowrap;

transform:translateX(20px);

transition:
opacity .35s ease,
transform .35s ease;

pointer-events:none;

}

/* expansão */

.whatsapp-float:hover{

width:220px;

border-radius:40px;

background:#151518;

}

/* texto aparece deslizando */

.whatsapp-float:hover .whatsapp-label{

opacity:1;

transform:translateX(0);

}

/* ícone verde */

.whatsapp-float:hover i{

color:#25D366;

}

/* animação pulse */

@keyframes whatsappPulse{

0%{
box-shadow:0 0 0 0 rgba(37,211,102,.35);
}

70%{
box-shadow:0 0 0 14px rgba(37,211,102,0);
}

100%{
box-shadow:0 0 0 0 rgba(37,211,102,0);
}

}

.whatsapp-float{

animation:whatsappPulse 3.5s infinite;

}

/* ===============================
SCROLL REVEAL
=============================== */

.reveal{

opacity:0;
transform:translateY(40px);

transition:
opacity .8s ease,
transform .8s ease;

}

.reveal-visible{

opacity:1;
transform:translateY(0);

}

/* ============================
BACKGROUND ICON SYSTEM (REFINADO)
============================ */

.bg-icon{
position:relative;
overflow:hidden;
}

/* BASE (globo mantém padrão perfeito) */

.bg-icon::after{

content:"";
position:absolute;

top:50%;
right:-10%;

transform:translateY(-50%);

font-family:"Font Awesome 6 Free";
font-weight:900;

/* tamanho */
font-size:700px;

/* 🔥 MAIS APAGADO (antes 0.015) */
opacity:0.01;

color:#ffffff;

width:50%;
text-align:center;

pointer-events:none;
z-index:0;

}

/* ============================
ÍCONE 1 — GLOBO (SEM ALTERAÇÃO)
============================ */

.bg-icon.globe::after{
content:"\f0ac";
}

/* ============================
ÍCONE 2 — LÂMPADA (MAIS PARA BAIXO)
============================ */

.bg-icon.chart::after{
content:"\f0eb";

/* move mais para baixo */
top:60%;

/* ajuste fino */
opacity:0.012;
}

/* ============================
ÍCONE 3 — PESSOA (POUCO PARA BAIXO)
============================ */

.bg-icon.handshake::after{
content:"\f007";

/* move um pouco para baixo */
top:55%;

/* ligeiramente mais visível que os outros */
opacity:0.014;
}

/* conteúdo na frente */

.bg-icon .container{
position:relative;
z-index:2;
}

/* ============================
NEW HERO (CAMADAS CINEMÁTICAS)
============================ */

.new-hero{
position:relative;
height:100vh;
overflow:hidden;
}

.hero-content{
position: relative;
z-index:2;
transform: translateY(-50px);
}

/* CÉU */

.hero-sky{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
filter:brightness(0.85);
will-change: transform;

background:url("../img/estrelado.jpg") center/cover no-repeat;

z-index:1;
}

/* TEXTO */

.hero-title{
font-family:'Bebas Neue', sans-serif;
font-weight:900;
-webkit-text-stroke: 1px rgba(255,255,2550,0.2);
letter-spacing:2px;
position:relative;
opacity:1;
z-index:2;
transform: translateZ(0);
will-change: transform, opacity;

color:#fff;
font-size:52px;
font-weight:600;
line-height:1.3;

transition:transform 0.2s ease-out;
}

/* MONTANHA */

.hero-mountain{
position:absolute;
bottom:0;
left:0;
transform: translateZ(0);
transform: scale(1.1);
will-change: transform;

width:100%;
height:auto;

z-index:5;

/* leve sombra pra dar profundidade */
filter:brightness(0.95);
}

@media (max-width: 768px){
.hero-mountain{
    bottom: 88px;
    transform: scale(1.2);
    width: 250%;
    left: -74%;
}
.hero-wave{
    bottom:-1px;
}
}

/* ============================
WAVE (CORTE DO HERO)
============================ */

.hero-wave{
position:absolute;
bottom:-1px;
left:0;
width:100%;

z-index:6; /* 🔥 acima de tudo */

pointer-events:none;
}

.hero-wave svg{
width:100%;
height:220px;
display:block;

shape-rendering:geometricPrecision;
}

.hero-wave svg path{
fill:070708;

filter: drop-shadow(0 -2px 2pxx #070708);
}

/* ============================
LOADER
============================ */

#loader{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;

background:#050506;

display:flex;
align-items:center;
justify-content:center;

z-index:9999999;
}

/* conteúdo */

.loader-content{
text-align:center;
}

/* logo */

.loader-logo{
color:#fff;
font-size:18px;
letter-spacing:3px;
margin-bottom:20px;
}

/* barra */

.loader-bar{
width:200px;
height:2px;
background:rgba(255,255,255,0.1);
overflow:hidden;
}

.loader-progress{
width:0%;
height:100%;
background:#fff;

animation:loadingAnim 2s ease forwards;
}

/* animação */

@keyframes loadingAnim{
0%{width:0%;}
100%{width:100%;}
}