/* ================= GLOBAL ================= */

*{
padding:0;
margin:0;
box-sizing:border-box;
font-family:"Poppins",sans-serif;
text-decoration:none;
list-style:none;
scroll-behavior:smooth;
}

img{
max-width:100%;
display:block;
}

/* ================= HERO / BANNER ================= */

.banner{
width:100%;
height:100vh;
overflow:hidden;
display:flex;
justify-content:center;
align-items:center;
position:relative;
}

.banner video{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
pointer-events:none;
}

.content{
position:relative;
z-index:1;
width:100%;
height:100vh;
background-image:linear-gradient(rgba(1,0,5,0.3),rgba(4,1,17,0.4));
}

/* ================= NAVBAR ================= */



/* ================= HERO TITLE ================= */

.title{
margin-top:25vh;
text-align:center;
color:white;
}

.title h1{
font-size:70px;
transition:0.3s;
}

.title h1:hover{
color:transparent;
-webkit-text-stroke:1px white;
}

.button{
display:inline-block;
margin-top:20px;
padding:12px 30px;
background:white;
color:#154a4a;
border-radius:25px;
font-size:14px;
box-shadow:0 4px 10px rgba(0,0,0,0.2);
transition:0.3s;
}

.button:hover{
background:#444;
color:white;
}

/* ================= SERVICES ================= */

.text h2{
font-size:40px;
text-align:center;
margin:60px 0 20px;
}

.rowitems{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
gap:30px;
max-width:1200px;
margin:auto;
padding:20px;
text-align:center;
}

.container-box{
border:1px solid #ddd;
padding:20px;
border-radius:10px;
transition:0.4s;
cursor:pointer;
background:white;
}

.container-box:hover{
transform:translateY(-5px);
box-shadow:0 10px 30px rgba(0,0,0,0.1);
}

.container-image img{
height:50px;
margin:auto;
margin-bottom:15px;
}

.container-box h4{
font-size:18px;
margin-bottom:6px;
}

.container-box p{
font-size:14px;
color:#777;
}

/* ================= PACKAGES ================= */

.package-title{
text-align:center;
margin-top:50px;
}

.package-title h2{
font-size:32px;
}

.package-content,
.package2-content,
.pack4-content,
.pack5-content{
display:flex;
flex-wrap:wrap;
gap:20px;
padding:25px;
margin:20px auto;
max-width:1200px;
border-radius:15px;
background:linear-gradient(#445056,#47addd 45%,#fff 45%);
box-shadow:0 5px 20px rgba(0,0,0,0.2);
}

.image{
position:relative;
flex:1 1 250px;
cursor:pointer;
transition:0.3s;
}

.image img{
height:200px;
border-radius:15px;
}

.image:hover{
transform:scale(1.05);
filter:brightness(110%);
}

.image h3{
position:absolute;
bottom:10px;
right:15px;
color:white;
font-size:16px;
}

/* ================= BUTTON ================= */



/* ================= LOCATIONS ================= */

.location-content{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:20px;
max-width:1200px;
margin:auto;
}

.col-content{
position:relative;
cursor:pointer;
transition:0.3s;
}

.col-content img{
height:300px;
border-radius:20px;
}

.col-content:hover{
transform:scale(1.05);
filter:brightness(110%);
}

.col-content h5{
position:absolute;
left:20px;
bottom:90px;
color:white;
font-size:18px;
}

.col-content p{
position:absolute;
left:20px;
bottom:60px;
color:white;
font-size:12px;
}

/* ================= NEWSLETTER ================= */

.newsletter{
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
gap:40px;
margin:80px auto;
max-width:1000px;
}

.newstext h2{
font-size:36px;
}

.newstext p{
color:#555;
}

.newsletter form{
position:relative;
}

.newsletter input:first-child{
width:300px;
padding:18px 25px;
border:none;
border-radius:30px;
box-shadow:0 10px 25px rgba(0,0,0,0.1);
}

.newsletter input:last-child{
position:absolute;
right:5px;
top:5px;
padding:12px 25px;
background:#191919;
color:white;
border:none;
border-radius:25px;
cursor:pointer;
transition:0.3s;
}

.newsletter input:last-child:hover{
background:white;
color:#191919;
border:1px solid #191919;
}

/* ================= FOOTER ================= */
