/*==========================
ITINERARIES
===========================*/

.itinerary-section{

padding:90px 5%;

background:#faf8f2;

}

.section-heading{

text-align:center;

max-width:700px;

margin:auto auto 60px;

}

.section-heading span{

color:#b58a55;

font-weight:600;

letter-spacing:2px;

text-transform:uppercase;

}

.section-heading h2{

font-size:42px;

margin:15px 0;

color:#222;

}

.section-heading p{

font-size:18px;

color:#666;

line-height:1.8;

}

/* GRID */

.itinerary-grid{

display:grid;

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

gap:35px;

}

/* CARD */

.itinerary-card{

position:relative;

height:560px;

border-radius:28px;

overflow:hidden;

cursor:pointer;

box-shadow:0 15px 35px rgba(0,0,0,.15);

transition:.45s;

}

.itinerary-card img{

width:100%;

height:100%;

object-fit:cover;

transition:.6s;

}

.itinerary-card:hover img{

transform:scale(1.08);

}

.itinerary-card .overlay{

position:absolute;

inset:0;

background:linear-gradient(

180deg,

rgba(0,0,0,0) 20%,

rgba(0,0,0,.82) 100%

);

}

.card-content{

position:absolute;

left:30px;

right:30px;

bottom:30px;

display:flex;

justify-content:space-between;

align-items:flex-end;

z-index:5;

}

.duration{

display:inline-block;

background:rgba(255,255,255,.18);

backdrop-filter:blur(10px);

padding:8px 18px;

border-radius:50px;

font-size:14px;

font-weight:600;

color:#fff;

margin-bottom:15px;

}

.card-content h3{

font-size:38px;

color:#fff;

margin-bottom:10px;

}

.card-content p{

font-size:18px;

color:#eee;

}

.journey-btn{

background:#fff;

color:#222;

padding:18px 34px;

border-radius:60px;

font-weight:700;

font-size:18px;

white-space:nowrap;

transition:.3s;

}

.journey-btn:hover{

background:#b58a55;

color:#fff;

}

/*==========================
RESPONSIVE
===========================*/

/* Desktop */
.itinerary-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
}

/* Tablets */
@media (max-width:992px){
    .itinerary-grid{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }
}

/* Phones */
@media (max-width:640px){
    .itinerary-grid{
        grid-template-columns:1fr;
        gap:22px;
    }

    .itinerary-card{
        height:420px;
    }

    .card-content h3{
        font-size:28px;
    }

    .journey-btn{
        width:auto;
        padding:14px 28px;
    }
}/*==========================
VIEW MORE BUTTON
===========================*/

.view-more{

margin-top:60px;

display:flex;

justify-content:center;

}

.view-more-btn{

display:inline-flex;

align-items:center;

gap:14px;

padding:18px 40px;

background:#1f3d2b;

color:#fff;

font-size:18px;

font-weight:600;

border-radius:60px;

transition:.35s;

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

}

.view-more-btn span{

transition:.3s;

}

.view-more-btn:hover{

background:#b58a55;

transform:translateY(-3px);

}

.view-more-btn:hover span{

transform:translateX(6px);

}

.extra-itineraries{

display:none;

margin-top:35px;

animation:fadeIn .6s ease;

}

.extra-itineraries.show{

display:grid;

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

gap:35px;

}

@keyframes fadeIn{

from{

opacity:0;
transform:translateY(30px);

}

to{

opacity:1;
transform:translateY(0);

}

}

@media(max-width:992px){

.extra-itineraries.show{

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

}

}

@media(max-width:640px){

.extra-itineraries.show{

grid-template-columns:1fr;

}

}



/* ==========================
   MALAWI DESTINATION SECTION
========================== */

.ms-destination-section{

    width:100%;
    display:grid;
    grid-template-columns:260px 1fr 300px;
    align-items:center;
    gap:60px;

    padding:90px 7%;
    background:#f8f8f8;
}

/* LEFT */

.ms-left-panel{

    background:#5c4739;
    color:#fff;

    padding:60px 35px;

    display:flex;
    flex-direction:column;
    gap:70px;

    border-radius:8px;
}

.ms-stat-box h2{

    font-size:58px;
    margin-bottom:8px;
    font-weight:700;
}

.ms-stat-box span{

    font-size:18px;
    color:#f1f1f1;
}

/* CENTER */

.ms-content small{

    color:#9b6738;

    font-weight:600;

    letter-spacing:1px;

    display:block;

    margin-bottom:20px;
}

.ms-content h2{

    font-size:70px;

    line-height:1.1;

    margin-bottom:30px;

    color:#111;
}

.ms-content p{

    max-width:560px;

    font-size:18px;

    color:#555;

    line-height:1.8;

    margin-bottom:35px;
}

.ms-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:#9b6738;

    font-size:20px;

    text-decoration:none;

    font-weight:600;
}

.ms-btn i{

    font-size:22px;
}

/* RIGHT */

.ms-destination-card{

    background:#a17847;

    color:white;

    padding:40px;

    border-radius:8px;
}

.ms-destination-card h4{

    margin-bottom:25px;

    font-size:28px;
}

.ms-destination-card ul{

    list-style:none;

    padding:0;

    margin:0;
}

.ms-destination-card li{

    padding:18px 0;

    border-bottom:1px solid rgba(255,255,255,.35);

    font-size:18px;
}

.ms-destination-card li:last-child{

    border:none;
}

/* MOBILE */

@media(max-width:1100px){

.ms-destination-section{

grid-template-columns:1fr;

gap:45px;

padding:70px 8%;

}

.ms-left-panel{

flex-direction:row;

justify-content:space-between;

gap:20px;

}

.ms-stat-box{

text-align:center;

flex:1;

}

.ms-content h2{

font-size:48px;

}

.ms-destination-card{

width:100%;

}

}

@media(max-width:700px){

.ms-left-panel{

flex-direction:column;

gap:45px;

}

.ms-content h2{

font-size:38px;

}

.ms-content p{

font-size:16px;

}

.ms-destination-card{

padding:30px;

}

.ms-stat-box h2{

font-size:46px;

}

}
.ms-counter{

    min-height:70px;

    display:block;

}

/*==========================
 BLOG SECTION
===========================*/

.msblog-section{

    padding:90px 8%;
    background:#f8f8f8;

}

.msblog-heading{

    text-align:center;
    max-width:700px;
    margin:auto auto 60px;

}

.msblog-heading span{

    color:#9b6738;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;

}

.msblog-heading h2{

    font-size:48px;
    margin:15px 0;

}

.msblog-heading p{

    color:#666;
    line-height:1.8;

}

.msblog-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;

}

.msblog-card{

    background:#fff;
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.4s;

}

.msblog-card:hover{

    transform:translateY(-8px);

}

.msblog-image{

    overflow:hidden;

}

.msblog-image img{

    width:100%;
    height:250px;
    object-fit:cover;
    transition:.5s;

}

.msblog-card:hover img{

    transform:scale(1.08);

}

.msblog-content{

    padding:30px;

}

.msblog-content span{

    color:#9b6738;
    font-weight:600;
    text-transform:uppercase;
    font-size:14px;

}

.msblog-content h3{

    margin:15px 0;
    font-size:25px;
    line-height:1.4;

}

.msblog-content p{

    color:#666;
    line-height:1.8;
    margin-bottom:25px;

}

.msblog-content a{

    text-decoration:none;
    color:#9b6738;
    font-weight:600;

}

.msblog-btn-box{

    text-align:center;
    margin-top:60px;

}

.msblog-btn{

    display:inline-block;
    background:#9b6738;
    color:#fff;
    text-decoration:none;
    padding:15px 40px;
    border-radius:50px;
    transition:.3s;

}

.msblog-btn:hover{

    background:#7d542b;

}

/*=============
 RESPONSIVE
==============*/

@media(max-width:1000px){

.msblog-grid{

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

}

}

@media(max-width:700px){

.msblog-grid{

grid-template-columns:1fr;

}

.msblog-heading h2{

font-size:34px;

}

.msblog-content h3{

font-size:22px;

}

}