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

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


html {
    scroll-behavior: smooth;
}


body {

    font-family: 'Poppins', sans-serif;

    color: #1f2937;

    background: #f8fafc;

}



img {

    width: 100%;

    display: block;

}



a {

    text-decoration: none;

    color: inherit;

}



ul {

    list-style: none;

}





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


header {

    position: fixed;

    width: 100%;

    top:0;

    z-index:1000;

}




.navbar {


    display:flex;

    justify-content:space-between;

    align-items:center;


    padding:20px 8%;


    background:white;


    box-shadow:0 5px 20px rgba(0,0,0,0.08);


}




.logo {


    font-size:24px;

    font-weight:700;

    color:#0f4c81;


}




.logo span {

    margin-right:8px;

}





.nav-links {

    display:flex;

    gap:30px;

}




.nav-links a {


    font-weight:500;

    transition:.3s;

}



.nav-links a:hover {


    color:#00a8a8;


}




.menu-btn {


    display:none;

    font-size:28px;

    cursor:pointer;

}







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


.hero {


    height:100vh;


    background:

    url("../images/hero.jpg");


    background-size:cover;

    background-position:center;


    display:flex;

    align-items:center;

    justify-content:center;


    position:relative;


}




.hero-overlay {


    position:absolute;

    inset:0;


    background:

    rgba(0,0,0,0.55);


}




.hero-content {


    position:relative;

    text-align:center;

    color:white;

    max-width:800px;

    padding:20px;


}



.hero-content h1 {


    font-size:55px;

    line-height:1.2;

    margin-bottom:20px;


}




.hero-content p {


    font-size:20px;

    margin-bottom:35px;


}





.hero-buttons {


    display:flex;

    justify-content:center;

    gap:20px;


}



.btn {


    padding:15px 35px;

    border-radius:30px;

    font-weight:600;

    transition:.3s;


}




.primary {


    background:#ffc857;

    color:#111;


}




.secondary {


    border:2px solid white;

    color:white;


}




.btn:hover {


    transform:translateY(-5px);


}






/* =========================
     SECTION COMMON
========================= */


section {


    padding:90px 8%;


}



.section-title {


    text-align:center;

    margin-bottom:50px;


}




.section-title h2 {


    font-size:38px;

    color:#0f4c81;

    margin-bottom:10px;


}





.section-title p {


    color:#666;


}






/* =========================
        ABOUT
========================= */


.about-container {


    display:grid;

    grid-template-columns:1fr 1fr;

    gap:50px;

    align-items:center;


}



.about-image img {


    border-radius:20px;


}




.about-text h3 {


    font-size:32px;

    margin-bottom:20px;


    color:#0f4c81;


}



.about-text p {


    margin-bottom:20px;

    line-height:1.8;


}




.features {


    display:grid;

    grid-template-columns:1fr 1fr;

    gap:15px;


}




.features div {


    background:white;

    padding:15px;

    border-radius:10px;


    box-shadow:0 10px 25px rgba(0,0,0,.08);


}






/* =========================
        DESTINATIONS
========================= */


.places {


    background:white;


}



.card-container {


    display:grid;


    grid-template-columns:repeat(4,1fr);


    gap:25px;


}





.card {


    background:white;

    border-radius:15px;

    overflow:hidden;


    box-shadow:

    0 10px 30px rgba(0,0,0,.1);


    transition:.3s;


}




.card:hover {


    transform:translateY(-10px);


}



.card img {


    height:220px;

    object-fit:cover;


}



.card-content {


    padding:20px;


}


.card-content h3 {


    color:#0f4c81;

    margin-bottom:10px;


}







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


.package-container {


    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;


}



.package-card {


    background:white;

    padding:35px;

    border-radius:20px;


    text-align:center;


    box-shadow:0 10px 30px rgba(0,0,0,.1);


}



.package-card h3 {


    color:#0f4c81;

    margin-bottom:15px;


}



.package-card h4 {


    font-size:28px;

    color:#00a8a8;

    margin-bottom:20px;


}



.package-card li {


    margin:12px 0;


}



.package-card button {


    margin-top:20px;

    padding:12px 30px;

    border:none;

    background:#0f4c81;

    color:white;

    border-radius:30px;

    cursor:pointer;


}



.package-card:hover {


    transform:translateY(-10px);


}



.popular {


    border:3px solid #ffc857;


}







/* =========================
       WHY US
========================= */


.why-us {


    background:#0f4c81;

    color:white;


}




.why-container {


    display:grid;


    grid-template-columns:repeat(4,1fr);


    text-align:center;

}



.why-container h3 {


    font-size:45px;

    color:#ffc857;


}







/* =========================
       CONTACT
========================= */


.contact-box {


    text-align:center;

    background:white;

    padding:40px;

    border-radius:20px;


    box-shadow:0 10px 30px rgba(0,0,0,.1);


}



.contact-box p {


    margin:15px;

    font-size:18px;


}



.whatsapp {


    display:inline-block;

    margin-top:20px;

    background:#25D366;

    color:white;

    padding:15px 30px;

    border-radius:30px;


}






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


footer {


    background:#111827;

    color:white;

    text-align:center;

    padding:40px;


}



footer h3 {


    font-size:28px;

    margin-bottom:10px;


}





/* =========================
       MOBILE DESIGN
========================= */



@media(max-width:900px){


.menu-btn {

    display:block;

}



.nav-links {


    position:absolute;

    top:80px;

    left:0;

    width:100%;


    background:white;


    flex-direction:column;

    text-align:center;

    padding:30px;


    display:none;


}




.nav-links.active {


    display:flex;


}



.hero-content h1 {


    font-size:38px;


}



.hero-content p {


    font-size:16px;


}



.about-container,


.package-container,


.card-container {


    grid-template-columns:1fr;


}




.why-container {


    grid-template-columns:1fr 1fr;

    gap:30px;


}



}




@media(max-width:500px){


.hero-buttons {


    flex-direction:column;


}



.features {


    grid-template-columns:1fr;


}



.why-container {


    grid-template-columns:1fr;


}



.section-title h2 {


    font-size:30px;


}


}