*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins', sans-serif;
}



html{
scroll-behavior:smooth;
}

:root{
--azul:#0b2a3f;
--dourado:#d4af37;
--azul:#0b2a3f;
--dourado:#d3d609;
--branco:#fdfdfd;
}

h1, h2, h3{
font-family:'Playfair Display', serif;
letter-spacing:.5px;
}

.hero-content h1{
font-size:46px;
}

@media(max-width:768px){
.hero-content h1{
font-size:28px;
}
}

.brand{
color:#4fa3ff; /* azul elegante */
font-weight:700;
letter-spacing:1px;
text-shadow:0 2px 10px rgba(79,163,255,.5);
}

.pacotes-title{
font-family:'Playfair Display', serif;
font-size:38px;
margin-bottom:20px;
}

.pacotes-title span{
color:var(--dourado);

color:#3fa9f5;
text-shadow:0 2px 10px rgba(63,169,245,.5);
}



@media(max-width:768px){
.pacotes-title{
font-size:26px;
}
}


/* ===== TITULO PREMIUM ===== */

.pacotes h2{
font-family:'Playfair Display', serif;
font-size:36px;
margin-bottom:20px;
}

@media(max-width:768px){
.pacotes h2{
font-size:26px;
}
}

/* ===== INTRO DESTACADA ===== */

.premium-intro{
background:rgba(255,255,255,.6);
padding:14px 22px;
border-radius:14px;
display:inline-block;
box-shadow:0 8px 20px rgba(0,0,0,.12);
font-weight:500;
}

/* ===== CARDS PREMIUM ===== */

.card{
background:rgba(255,255,255,.75);
backdrop-filter:blur(6px);
transition:.4s ease;
}

.card:hover{
transform:translateY(-10px);
box-shadow:0 15px 35px rgba(0,0,0,.25);
}

/* TITULO CARD */

.card h3{
font-family:'Playfair Display', serif;
color:var(--azul);
margin-bottom:10px;
}

/* TEXTO CARD */

.card p{
font-size:15px;
color:#333;
}

/* MOBILE AJUSTES */

@media(max-width:768px){

.premium-intro{
font-size:15px;
padding:12px 16px;
}

}




body{
background:#f5f6f8;
}

/* ================= HEADER ================= */

.header{
position:fixed;
top:0;
width:100%;
background:rgb(46, 59, 94);
z-index:10;
box-shadow:0 2px 8px rgb(82, 82, 82);
}

.container{
max-width:1200px;
margin:auto;
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 20px;
flex-wrap:wrap;
}

.logo{
max-height:160px;
width:auto;
object-fit:contain;
}


nav a{
font-family:'Poppins', sans-serif;
font-size:15px;
letter-spacing:.10px;
text-transform:uppercase;
color:#ffffff;
transition:.3s ease;

margin:0 30px;


}

nav a:hover{
color:var(--dourado);
}

nav a{
position:relative;
}

nav a:after{
content:"";
position:absolute;
left:0;
bottom:-5px;
width:0;
height:2px;
background:var(--dourado);
transition:.3s;
}

nav a:hover:after{
width:100%;
}

.gold-text{
color:var(--dourado);
font-weight:600;
text-shadow:0 2px 8px rgba(212,175,55,.4);
}


.btn-whats{
background:#00c853;
color:white;
padding:12px 26px;
border-radius:30px;
text-decoration:none;
font-weight:bold;
animation:pulse 1s infinite;
box-shadow:0 0 0 rgba(0,200,83,.7);
}

/* ANIMAÇÃO PULSO */

@keyframes pulse{
0%{
box-shadow:0 0 0 0 rgba(0,200,83,.8);
}
70%{
box-shadow:0 0 0 20px rgba(0,200,83,0);
}
100%{
box-shadow:0 0 0 0 rgba(0,200,83,0);
}
}

/* HOVER */

.btn-whats:hover{
transform:scale(1.05);
}

/* ================= HERO ================= */

.hero{
min-height:100vh;
background:
linear-gradient(rgba(65, 65, 65, 0.45), rgba(0,0,0,.45)),
url("img/img_fundo.jpg") center/cover no-repeat;
display:flex;
align-items:flex-start;
padding-top:120px;
}


.glass{
background:rgba(255,255,255,.12);
backdrop-filter:blur(10px);
-webkit-backdrop-filter:blur(10px);
padding:40px;
border-radius:20px;
box-shadow:0 15px 30px rgba(0,0,0,.25);
max-width:700px;
backdrop-filter:blur(14px);

}




.hero-sub{
font-size:18px;
line-height:1.5;
font-weight:500;
margin:25px 0;
background:rgba(0,0,0,.35);
padding:12px 20px;
border-radius:12px;
display:inline-block;
box-shadow:0 5px 15px rgba(0,0,0,.25);
background:rgba(255,255,255,.15);
backdrop-filter:blur(6px);

}

/* MOBILE */

@media(max-width:768px){
.hero-sub{
font-size:16px;
padding:10px 15px;
background:rgba(255,255,255,.15);
backdrop-filter:blur(6px);

}
}






.hero-content{
color:white;
max-width:650px;
margin-left:100px;
margin-top:180px;
}

.hero-content h1{
font-size:42px;
line-height:1.2;
}

.hero-content p{
margin:20px 0;
font-size:18px;
}

.hero-btns a{
display:inline-block;
padding:14px 30px;
border-radius:30px;
margin-right:10px;
text-decoration:none;
font-weight:bold;
}

.gold{background:var(--dourado); color:#000;}
.green{background:#0b5;color:white;}

/* ================= PORQUE ================= */

.porque{
padding:100px 20px;
text-align:center;
background:white;
}

.intro{
max-width:700px;
margin:20px auto;
}

.cards{
display:flex;
justify-content:center;
gap:25px;
flex-wrap:wrap;
margin-top:40px;
}

.card{
background:#f5f6f8;
padding:25px;
border-radius:15px;
width:280px;
box-shadow:0 5px 15px rgba(0,0,0,.08);
}

/* ================= PACOTES ================= */

.pacotes{
padding:80px 20px;
text-align:center;
}

.grid{
display:flex;
gap:20px;
justify-content:center;
flex-wrap:wrap;
margin-top:40px;
}

.pacote{
background:var(--azul);
color:white;
padding:40px 20px;
border-radius:15px;
width:220px;
}

/* ================= PROXIMAS ================= */

.proximas{
background:white;
padding:80px 20px;
text-align:center;
}

.carousel{
display:flex;
gap:15px;
justify-content:center;
flex-wrap:wrap;
margin-top:30px;
}

.carousel div{
background:#ddd;
padding:30px;
border-radius:12px;
width:180px;
}

/* ================= CTA ================= */

.cta{
background:var(--azul);
color:white;
text-align:center;
padding:70px 20px;
}

.cta-btns a{
display:inline-block;
background:#0b5;
padding:14px 30px;
border-radius:30px;
margin:10px;
text-decoration:none;
color:white;
}

/* ================= FOOTER ================= */

.footer{
text-align:center;
padding:30px;
background:#061a29;
color:white;
}

/* ================================================= */
/* ================= MOBILE ========================= */
/* ================================================= */

@media(max-width:1024px){
.hero-content{
margin-left:50px;
}


}

@media(max-width:768px){

.container{
flex-direction:column;
gap:10px;
}

nav{
width:100%;
text-align:center;
margin-top:10px;
}

nav a{
display:inline-block;
margin:8px;
}

.btn-whats{
margin-top:10px;
}

.logo{
max-height:145px;
}

.hero{
padding-top:130px;
}

.hero-content{
margin:0 20px;
text-align:center;
}

.hero-content h1{
font-size:28px;
}

.hero-content p{
font-size:16px;
}

.cards div,
.grid div,
.carousel div{
width:100%;
max-width:300px;
margin:auto;
}

.hero-btns a,
.cta-btns a{
width:100%;
max-width:280px;
margin:8px auto;
display:block;
}

}

@media(max-width:480px){

.hero-content h1{
font-size:24px;
}

.hero{
padding-top:150px;
}

}


@media(max-width:768px){
.hero-content{
margin-top:160px;
}
}



.reveal{
opacity:0;
transform:translateY(40px);
transition:.8s ease;
}

.reveal.active{
opacity:1;
transform:translateY(0);
}



/* ===== MENU MOBILE FIX ===== */

.menu-toggle{
display:none;
flex-direction:column;
cursor:pointer;
}

.menu-toggle span{
height:3px;
width:25px;
background:#ffffff;
margin:4px 0;
border-radius:4px;
}

/* MOBILE */

@media(max-width:768px){

.menu-toggle{
display:flex;
}

nav{
display:none;
width:100%;
flex-direction:column;
text-align:center;
}

nav.active{
display:flex;
}

nav a{
padding:12px;
border-bottom:1px solid #eee;
}

.container{
align-items:center;
}

.logo{
display:block;
margin:auto;
}

}




.pacote-card{
width:260px;
background:white;
border-radius:18px;
overflow:hidden;
box-shadow:0 8px 25px rgba(0,0,0,.15);
transition:.4s;
display:flex;
flex-direction:column;
}

.pacote-card:hover{
transform:translateY(-8px) scale(1.02);
}

.pacote-card img{
width:100%;
height:380px;
object-fit:cover;
}

.pacote-info{
padding:18px;
text-align:center;
}

.pacote-info h3{
color:var(--azul);
margin-bottom:6px;
}

.pacote-info span{
display:block;
font-size:14px;
color:#555;
margin-bottom:15px;
}

/* BOTÃO WHATS */

.zap{
background:#0b5;
color:white;
padding:10px 22px;
border-radius:25px;
display:inline-block;
font-weight:bold;
animation:pulse 1.5s infinite;
}

@keyframes pulse{
0%{box-shadow:0 0 0 0 rgba(0,187,85,.6);}
70%{box-shadow:0 0 0 12px transparent;}
100%{box-shadow:0 0 0 0 transparent;}
}

/* GRID */

.grid{
display:flex;
gap:25px;
flex-wrap:wrap;
justify-content:center;
margin-top:40px;
}

/* MOBILE */

@media(max-width:768px){

.pacote-card{
width:90%;
}

}
