:root{
  --font-motserrat:"Montserrat", sans-serif;
  --secondary-color:#1F331C;
  --primary-color:#C69C6D;
  --head-color:#E9E3D2;
  --nav-color:#5F0B0B;
}
/* exclu css start */
/* ================= Inclusion & Exclusion ================= */

.inclusion-section{
    max-width:1400px;
    margin:80px auto;
    padding:0 5%;
}

.inclusion-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:35px;
    margin-top:40px;
}

.include-box,
.exclude-box{
    background:#fff;
    padding:35px;
    border-radius:10px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.include-box{
    border-top:5px solid #2e7d32;
}

.exclude-box{
    border-top:5px solid #c62828;
}

.include-box h3,
.exclude-box h3{
    margin-bottom:25px;
    font-size:28px;
    color:var(--secondary-color);
}

.include-box h3 i{
    color:#2e7d32;
    margin-right:10px;
}

.exclude-box h3 i{
    color:#c62828;
    margin-right:10px;
}

.include-box ul,
.exclude-box ul{
    list-style:none;
    padding:0;
}

.include-box li,
.exclude-box li{
    display:flex;
    align-items:flex-start;
    gap:12px;
    margin-bottom:16px;
    line-height:1.8;
    color:#555;
}

.include-box li::before{
    content:"✔";
    color:#2e7d32;
    font-weight:bold;
}

.exclude-box li::before{
    content:"✖";
    color:#c62828;
    font-weight:bold;
}

@media(max-width:768px){

.inclusion-grid{
    grid-template-columns:1fr;
}

.include-box,
.exclude-box{
    padding:25px;
}

.include-box h3,
.exclude-box h3{
    font-size:24px;
}

}
/* exclu css end */
.tour-hero{
    position:relative;
    height:75vh;
    background:url("../images/serengeti-game-drive.jpg")
    center center/cover no-repeat;

    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:110px;
}
.tour-hero.kili{
    position:relative;
    height:75vh;
    background:url("../images/machame-kili-50-1024x679.jpg")
    center center/cover no-repeat;

    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:110px;
}

.tour-overlay{

    position:absolute;
    inset:0;

    background:linear-gradient(
        rgba(0,0,0,.70),
        rgba(0,0,0,.60)
    );

}

.tour-content{
    position:relative;
    z-index:2;
    width:90%;
    max-width:1300px;

    color:#fff;

}
.tour-content.safari{
    position:relative;
    z-index:2;
    display: flex;
    justify-content: center;
    align-items: center;
    width:90%;
    max-width:1300px;

    color:#fff;

}
.tour-content.safari h1{
text-transform: uppercase;
letter-spacing: 2px;
font-weight: 400;
}

.tour-tag{

    display:inline-block;

    background:var(--primary-color);

    color:#fff;

    padding:8px 18px;

    margin-bottom:20px;

    font-size:14px;
    font-weight:600;

    text-transform:uppercase;

}

.tour-content h1{
font-weight: 400;
    font-size:56px;

    line-height:1.2;

    margin-bottom:20px;

}

.tour-content p{

    max-width:800px;

    font-size:18px;

    line-height:1.8;

    margin-bottom:45px;

}

.tour-info{

    display:grid;

    grid-template-columns:repeat(6,1fr);

    gap:20px;

}

.info-box{

    background:rgba(255,255,255,.12);

    backdrop-filter:blur(10px);

    border:1px solid rgba(255,255,255,.15);

    padding:22px;

    text-align:center;

    transition:.4s;

}

.info-box:hover{

    background:var(--primary-color);

    transform:translateY(-6px);

}

.info-box i{

    font-size:28px;

    margin-bottom:12px;

}

.info-box span{

    display:block;

    font-size:13px;

    color:#eee;

    margin-bottom:8px;

    text-transform:uppercase;

}

.info-box strong{

    font-size:17px;

}

@media(max-width:1200px){

.tour-info{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:768px){

.tour-hero{

height:auto;

padding:120px 0 70px;

}

.tour-content h1{

font-size:34px;

}

.tour-content p{

font-size:16px;

}

.tour-info{
display: none;
grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:500px){

.tour-info{

grid-template-columns:1fr;

}

}
.tour-details{

    width:100%;
    padding:80px 2%;
   position: relative;
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:40px;
    z-index: 1;

}
.tour-details::after{
   content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../images/map.webp") center/cover no-repeat;
    opacity: .3;
    z-index: -1;
}

.tour-content h2{
    text-align: center;
    font-size:38px;
    color:var(--secondary-color);
    margin-bottom:40px;

}

/* Accordion */

.day-item{

    border:1px solid #ddd;
    margin-bottom:20px;
    overflow:hidden;

}

.day-title{

    background:#fff;
    padding:20px;
color: var(--secondary-color);
    cursor:pointer;

    display:flex;
    justify-content:space-between;
    align-items:center;

    font-weight:600;

}

.day-title span{

    background:var(--secondary-color);
    color:#fff;

    padding:8px 12px;
    margin-right:15px;

}

.day-title i{

    transition:.4s;

}

.day-content{

    display:none;
    padding:25px;
    background:#fafafa;

}

.day-item.active .day-content{

    display:block;

}

.day-item.active .day-title i{

    transform:rotate(45deg);

}

.day-content img{

    width:100%;
    height:350px;
    object-fit:cover;

    margin-bottom:20px;

}

.day-content p{

    line-height:1.8;
    margin-bottom:20px;
    color: var(--secondary-color);

}

.day-content ul{
    padding-left:20px;
color: var(--nav-color);
}

.day-content li{

    list-style:disc;
    margin-bottom:8px;

}

/* Sticky Form */

.sticky-form{
position:relative;
background-color: var(--nav-color);


}

.form-box{

    position:sticky;
    top:120px;

    background:var(--nav-color);

    box-shadow:0 15px 40px rgba(0,0,0,.1);

    padding:30px;

}

.form-box h3{

    margin-bottom:25px;
    color:#fff;

}

.form-box input,
.form-box textarea{

    width:100%;
    padding:14px;
    margin-bottom:15px;

    border:1px solid #ddd;
    outline:none;

}

.form-box button{

    width:100%;

    background:var(--secondary-color);

    color:#fff;

    padding:15px;

    border:none;

    cursor:pointer;

}

.form-box button:hover{

    background:var(--primary-color);

}

@media(max-width:991px){

.tour-details{

grid-template-columns:1fr;

}

.form-box{

position:relative;
top:0;

}

}
/* gallery css */
.gallery-section{

    padding:80px 5%;
    background:#fafafa;

}

.gallery{

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:20px;

}

.gallery img{

    width:100%;
    height:250px;

    object-fit:cover;

    cursor:pointer;

    transition:.4s;

}

.gallery img:hover{

    transform:scale(1.05);

}


/* LIGHTBOX */

.lightbox{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.95);

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    visibility:hidden;

    transition:.4s;

    z-index:99999;

}

.lightbox.show{

    opacity:1;

    visibility:visible;

}

.lightbox-img{

    max-width:90%;

    max-height:85vh;

    animation:fade .4s;

}

@keyframes fade{

from{

opacity:0;

transform:scale(.8);

}

to{

opacity:1;

transform:scale(1);

}

}

.close{

    position:absolute;

    top:30px;

    right:40px;

    color:#fff;

    font-size:45px;

    cursor:pointer;

}

.prev,
.next{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    background:rgba(255,255,255,.15);

    color:#fff;

    border:none;

    width:60px;

    height:60px;

    font-size:28px;

    cursor:pointer;

    transition:.3s;

}

.prev:hover,
.next:hover{

    background:#fff;

    color:#000;

}

.prev{

left:30px;

}

.next{

right:30px;

}

.counter{

    position:absolute;

    bottom:25px;

    color:#fff;

    font-size:18px;

}
/*==========================
ITINERARY SUMMARY TABLE
==========================*/

.itinerary-summary{

    margin-top:60px;
    background:#fff;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    overflow:hidden;

}

.itinerary-summary h2{

    background:var(--secondary-color);
    color:#fff;
    text-align:center;
    padding:20px;
    margin:0;
    font-size:30px;
    font-weight:500;

}

.table-wrapper{

    overflow-x:auto;

}

.itinerary-summary table{

    width:100%;
    border-collapse:collapse;
    min-width:700px;

}

.itinerary-summary thead{

    background:var(--primary-color);
    color:#fff;

}

.itinerary-summary th,
.itinerary-summary td{

    padding:18px 20px;
    text-align:left;
    border-bottom:1px solid #eee;

}

.itinerary-summary tbody tr{

    transition:.3s;

}

.itinerary-summary tbody tr:nth-child(even){

    background:#fafafa;

}

.itinerary-summary tbody tr:hover{

    background:#f5efe7;

}

.itinerary-summary td:first-child{

    font-weight:700;
    color:var(--secondary-color);

}

@media(max-width:768px){

.itinerary-summary h2{

    font-size:24px;

}

.itinerary-summary th,
.itinerary-summary td{

    padding:14px;

}

}
@media(max-width:480px){
.tour-hero.kili{
    position:relative;
    height:75vh;
    background:url("../images/serengeti-game-drive.jpg")
    center center/cover no-repeat;

    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:0px;
}
.tour-content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1300px;
    color: #fff;
}
.day-title span {
    background: var(--secondary-color);
    color: #fff;
    padding: 8px 12px;
    margin-right: 15px;
    font-size: 13px;
}
.day-title{
    font-size: 14px;
}
}
/* ==================== zanzibar detail==================== */
/* ===========================
ZANZIBAR ACTIVITIES
===========================*/

.zanzibar-activities{
    padding:100px 5%;
    background:#f8f8f8;
}

.activity-item{

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;

    align-items:center;

    margin-bottom:80px;
}

.activity-item.reverse .activity-image{
    order:2;
}

.activity-item.reverse .activity-content{
    order:1;
}

.activity-image{

    overflow:hidden;
    border-radius:12px;
}

.activity-image img{

    width:100%;
    height:450px;

    object-fit:cover;

    transition:.6s;
}

.activity-item:hover img{

    transform:scale(1.08);
}

.activity-content{

    padding:20px;
}

.activity-tag{

    display:inline-block;

    background:var(--primary-color);

    color:#fff;

    padding:6px 16px;

    margin-bottom:18px;

    font-size:13px;

    text-transform:uppercase;

    letter-spacing:1px;
}

.activity-content h3{

    font-size:38px;

    color:var(--secondary-color);

    margin-bottom:20px;
}

.activity-content p{

    color:#555;

    line-height:1.9;

    margin-bottom:25px;
}

.activity-content ul{

    margin-bottom:30px;
}

.activity-content li{

    margin-bottom:12px;

    color:#444;
}

.activity-btn{

    display:inline-block;

    background:var(--secondary-color);

    color:#fff;

    padding:14px 30px;

    transition:.3s;
}

.activity-btn:hover{

    background:var(--primary-color);
}
@media(max-width:991px){

.activity-item{

    grid-template-columns:1fr;

    gap:30px;
}

.activity-item.reverse .activity-image,
.activity-item.reverse .activity-content{

    order:unset;
}

.activity-image img{

    height:350px;
}

.activity-content{

    padding:0;
}

.activity-content h3{

    font-size:30px;
}

}

@media(max-width:600px){

.activity-image img{

    height:260px;
}

.activity-content h3{

    font-size:24px;
}

.activity-content p{

    font-size:15px;
}

.activity-btn{

    width:100%;

    text-align:center;
}

}