@font-face {
    font-family: 'poppins';
    src: url('/fonts/poppins-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
  }







*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    
}

a {
    text-decoration: none;
    color: #D3D3D3;
}

body {
    background: #F5F5F5;
    overflow-x: hidden;
}

header {
    width: 100vw;
    height: 60vh;
    position: relative;
    background: url("../images/1st page bg image.png") lightgray 50% / cover no-repeat;
    position: relative;
}

header hr {
    position: absolute;
    top: 5.5rem;
    width: 100vw;
    stroke-width: 0.8px;
    stroke: #D3D3D3;
}

nav {
    width: 100vw;
    height: 80px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 5rem;
    padding: 0 2rem;
}

#showall-nav {
    width: 100vw;
    height: 80px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 5rem;
    padding: 0 2rem; 
    flex-direction: row;
}

nav .right {
    gap: 1.5rem;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    cursor: pointer;
    width: 5rem;
}
nav .right img {
    width: 2.4rem;
}

nav .home {
    color: #FFF;
    font-family: Poppins;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    cursor: pointer;
    width: 5rem;
    text-align: center;
}

nav .logo {
        color: #FFF;
        font-family: Poppins;
        font-size: 20px;
        font-style: normal;
        font-weight: 500;
        line-height: normal;
        cursor: pointer;
        background: linear-gradient(135deg, #ffffff, #f0f0f0); /* Subtle gradient for depth */
        border-radius: 15px; /* Soft rounded corners */
        box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.1); /* Soft shadow for premium look */
        text-align: center;
        padding: 0.2rem 1rem;
        cursor: pointer;

       
}

.bottom-container {
    width: 10vw;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    margin-top: 2rem;
}

.bottom-container img {
    width: 1.4rem;
    cursor: pointer;
}


main {
    background-color: #F5F5F5;
    width: 100vw;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 3rem;
    margin-top: 5rem;
}

.cards-container {
    width: 65vw;    
    height: auto;   
    display: flex;
    justify-content: flex-start;
    gap: 5rem;
    flex-wrap: wrap;
    /* margin-bottom: 5rem; */
    align-self: flex-start;
}


.card-container {
    width: 15rem;
    height: auto;
    border-radius: 12px;
    border: 1px solid #E7E6E6;
    background: #FFF;}


.card-body {
    width: 100%;
    
    position: relative;
}

.card-img {
    width: 100%;
    height: 45%;
    border-radius: 12px;
    padding: 6.5px;
    position: relative;
}
.trip-image{
    width: 100%;
    height: 100%;
}
.trip-image img {
    width: 100%;
    height: 100%;
    border-radius: 12px;
}
.heart-container {
    position: absolute;
    width: 1.3rem;
    height: 1.3rem;
    border-radius: 50%;
    bottom: -4px;
    right: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #FFF;
    box-shadow: 0px 10px 40px 0px rgba(0, 0, 0, 0.05);  
}
.heart-container i {
    width: 1rem;
    cursor: pointer;
}

.route {
    width: 100%;
    height: 25%;
    padding: 0 10px;
    margin-top: 10px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
}

.route img {
    width: 1.8rem;
}

.card-title a{
    color: #05A351;
    font-family: Poppins;
    font-size: 11px;
    font-style: normal;
    font-weight: 400;
    line-height: 24.38px;
}


.card-title p {
    color: #717171;
    font-family: Poppins;
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 24.38px; /* 135.444% */
}

.card-title h4 {
    font-size: 10rem;
}

.title-container {
    padding: 10px;
    width: 100%;
    margin-top: 5px;
    margin-bottom: 5px;
    /* margin: 1rem 0; */
}
.title-container h4 {
    color: #05073C;
    font-family: Poppins;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    /* line-height: 24px;  */
}




.card-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    border-top: 2px solid #E7E6E6;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-bottom: 25px;
}

.route a {
    font-size: 0.9rem;
}

.card-bottom h4 , .price-container{
    color: #05073C;
    font-family: Poppins;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 24.38px; /* 152.375% */
}

.price-container span {
    color: #05073C;
    font-family: Poppins;
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    line-height: 24.38px; /* 152.375% */
}













.stars-cont {
    width: 20vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    
  }
  
  .stars-cont p {
    color: #05073C;
    font-family: Poppins;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28.13px;
  }
  
  
  
  
  
  /* stars  */
  
  
  .rate {
     
    height: 46px;
    padding: 0 10px;
  }
  .rate:not(:checked) > input {
    position:absolute;
    top:-9999px;
  }
  .rate:not(:checked) > label {
    float:right;
    width:1em;
    overflow:hidden;
    white-space:nowrap;
    cursor:pointer;
    font-size:10px;
    color:#ccc;
    z-index: 1;
    display: inline-block;
  }
  .rate:not(:checked) > label:before {
    content: '★ ';
  }
  .rate > input:checked ~ label {
    color: #ffc700;    
  }





  .rate {
    height: auto;
    padding: 0 10px;
  }
  
  .rate input[type="radio"] {
    display: none; /* Hide radio buttons */
  }
  
  .rate label {
    float: right;
    width: 1em;
    overflow: hidden;
    white-space: nowrap;
    cursor: pointer;
    font-size: 25px;
    color: #ccc;
    z-index: 1;
    display: inline-block;
  }
  
  .rate label:before {
    content: '★ ';
  }
  
  .rate input:checked ~ label {
    color: #ffc700;    
  }
  

  
.rating-container {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: 0.3rem;

}



.rating-container p {
    color: #05073C;
    font-family: Poppins;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 24.38px;
}


.ratio-container {
    width: 100%;
    height: auto;
    padding-left: 10px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
    margin-bottom: 10px;
}

.ratio-container p {
    color: #888;
    font-family: Poppins;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
}

/* .maleRatio::before{
    content: "";
    width: 0.5rem;
    height: 0.5rem;
    margin-right: 5px;
    border-radius: 50%;
    background-color: #286BEE;
    display: inline-block;
    text-align: center;
}

.femaleRatio::before{
    content: "";
    width: 0.5rem;
    height: 0.5rem;
    margin-right: 5px;
    border-radius: 50%;
    background-color: #F23DE0;
    display: inline-block;
    text-align: center;
} */


.maleRatio , .femaleRatio {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.2rem;
}


.maleRatio span , .femaleRatio span {
    font-size: 18px;
} 

.maleRatio span {
    color: blue;
}

.femaleRatio span {
    color: palevioletred;
    
}


.mb-filters {
    width: 100vw;
    height: 5rem;
    background-color: #05A351;
    display: none;
}





.filter-submit , .filter-close {
    border: none;
    padding: 0.5rem 1.2rem;
    margin-bottom: 1rem;
    cursor: pointer;
    font-family: poppins;
    font-size: 0.7rem;
    background-color: #05A351;
    color: white;
    border-radius: 10px;
    margin-left: 1rem;
    font-weight: 500;
    margin-top: 1rem;
    align-self: flex-start;
}


@media ( max-width:950px ) {
    header {
        width: 100vw;
        height: 47vh;
    }
    nav .right img {
        width: 2rem;
      }

      .filter-container {
        display: none;
      }
      .mb-container {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        margin-top: 3rem;
      }
      .mb-filters {
        width: 7rem;
        height: 3rem;
        background-color: #05A351;
        display: inline-block;
        margin-right: 5rem;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 10px;
        cursor: pointer;
    }
    .mb-filters h3 {
        font-family: Poppins;
        font-size: 12px;
        font-weight: 500;
        color: #fff;
    }



    






    .mb-filter-container {
        width: 0;
        height: auto;
        padding-bottom: 5rem;
        padding-top: 8rem;
        position: absolute;
        backdrop-filter: blur(2px);
        top: 0;
        left: 0;

        z-index: 9999999999999;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        
    }

    .mb-filter-container .filter-container {
        display: inline-block;
    }

    .mb-filter-container .filter-container {
        width: 100vw;
      }

    .mb-filter-container .you-type-filter-content form , .mb-filter-container .languages-filter-container form{
        flex-direction: row;
        flex-wrap: wrap;
    }
    .mb-filter-container #categoryFilterForm label , .mb-filter-container .languages-filter-container label{
        width: 14rem;
    }

    .mb-filter-container .filter-container {
        display: flex;
        align-items: center;
    }
    .mb-filter-container .secondary-search {
        width: 50%;
    }




}

@media( max-width:650px ) {

    .bottom-container {
        margin: 0;
    }

    .bottom-container img {
        width: 1rem;
        cursor: pointer;
      }

      .breadcrumb-nav {
        margin-top: 4rem;
    }
    .rating-container i {
        color: #05A351;
        font-size: 0.6rem;
      }
}


.total-trips {
    font-family: poppins;
    font-size: 1rem;
    color: #717171;
}

.breadcrumb-nav {
    margin-left: 4rem;
    font-size: 14px;
    margin-bottom: 10px;
    font-family: poppins;
    font-size: 1rem;
    margin-top: 3rem;

  }
  
  .breadcrumb-nav a {
    text-decoration: none;
    color: #05A351;
  }
  
  .breadcrumb-nav a:hover {
    text-decoration: underline;
  }
  
  .breadcrumb-nav span {
    margin: 0 5px;
    color: #333;
  }

  .sortdiv {
    width: 650%;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    margin-bottom: -1rem;
    margin-right: 6rem;
    gap: 5rem;
    margin-top: 2.5rem;
}

.sort-outer-container {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
  
.sortdiv label {
    font-family: poppins;
    font-size: 1rem;
    color: #333;
}

#sort {
    font-family: poppins;
    padding: 0.5rem;
    border: none;
    background-color: transparent;
    color: #333;
}



#categoryInputs {

    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
    margin-bottom: 1rem;


}


#categoryInputs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.hidden-category {
    visibility: hidden;
    height: 0;
    width: 0;
    overflow: hidden;
    margin: 0; /* Remove any margins */
    padding: 0; /* Remove any padding */
}


#seeMoreText {
    width: 100%;
    display: flex;
    align-items: flex-start;
    padding-left: 1rem;
    padding-top: 1rem;
    font-family: poppins;
    color: #05A351;
    cursor: pointer;
}

#seeMoreText:hover{
    text-decoration: underline;
}

.heart-container i:hover {
    color: red;
    scale: 1;
}

.suborclose {
    display: none;
}



#sortForm {
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: #05A351;
    padding: 10px 15px;
    border-radius: 8px;
    width: fit-content;
    font-family: 'Poppins', sans-serif;
}

#sortForm label {
    color: #FFF;
    font-size: 16px;
    font-weight: 600;
}

#sort {
    background-color: #FFF;
    color: #05A351;
    border: 2px solid #FFF;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 14px;
    font-family: 'Poppins', sans-serif;
    cursor: pointer;
    transition: 0.3s ease;
    appearance: none; /* Removes default styles for better customization */
}

/* Custom dropdown styling */
#sort:hover {
    background-color: #E6F9EC;
    color: #038E45;
}

#sort:focus {
    outline: none;
    border-color: #038E45;
}

/* Ensuring styles apply to options */
#sort option {
    background-color: #FFF;
    color: #05A351;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    padding: 10px;
}

/* Customizing selected option */
#sort option:checked {
    background-color: #05A351;
    color: #FFF;
}


.card-container {
    cursor: pointer;
}



#sort {
    text-align: center;
}

.trip-type {
    font-family: poppins;
    font-size: 10px;
    margin-bottom: 1rem;
    padding-left: 0.5rem;
}

.trip-type strong {
    color: #05A351;
}

#reset-filter-btn {
    padding: 0.5rem 1.5rem;
    background-color: red;
    color: #ccc;
    border: none;
    border-radius: 10px;
    margin-left: 1rem;
}

#reset-filter-btn a {
    color: #FFF;
    text-decoration: none;
    font-family: poppins;
    font-size: 1rem;
}

#reset-filter-btn:hover {
    background-color: white;
    border: 1px solid red;
    transition: 0.2s ease;

}

#reset-filter-btn:hover a{
    color: red;
    transition: 0.2s ease;

}
.logo{
    display: flex;
    justify-content: center;
    align-items: center;
}
.logo svg {
    height: auto;
    width: 50px;
}





.dest-cont {
    margin-top: 0;
}













































@media(max-width:650px) {
    .breadcrumb-nav {
        margin-top: 1rem;
        margin-left: 1rem;
        font-size: 0.65rem;
    }
    #reset-filter-btn a{
        font-size: 0.6rem;
    }
    .title-container{
        margin: 0;
    }

    #sort {
        width: 4rem;
        padding: 0;
        font-size: 0.5rem;
    }

    #sort option {
        font-size: 8px;
    }
    #sortForm label {
        font-size: 10px;
        font-weight: 400;
    }

    
    .total-trips {
        font-size: 10px;
    }


    nav .home{
        font-size: 16px;
    }

    nav .right img {
        width: 1.8rem;
      }

}





@media(max-width:349px) {

    #sortForm label {
        font-size: 7px;
        font-weight: 400;
      }

      
}

@media(max-width:600px) {
    #safooter{
        margin-top: 0;
    }
}









.sortdiv i{
    color: #E6F9EC;
    
}

.filters-mb{
    width: 3rem;
    height: 2rem;
    background-color: #05A351;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    display: none;
    color: #FFF;
}

.rating-container {
    position: absolute;
    top: -0.5rem;
    right: 1rem;
    width: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
}
.rating-container i {
    color: #05A351;
    font-size: 1rem;
}

.rating-container p {
    color: #05A351;
}

.tour-dates{
    font-family: poppins;
    font-size: 0.7rem;
    padding: 0 10px;
    margin-top: 10px;

}


@media(max-width:650px) {
    .rating-container i{
        font-size: 0.5rem;
    }

    .tour-dates{
        font-family: poppins;
        font-size: 0.5rem;
        padding: 0 10px;
        margin-top: 10px;
    
    }

    .rating-container p {
        font-size: 10px;
      }

      .card-title a {
        font-size: 14px;
        line-height: 14px;
      }
      .card-title {
        letter-spacing: 0;
      }
      .card-title p{
        font-size: 8px;
      }
}

@media(max-width:500px){

    #showall-nav{
        padding: 0 10px;
    }
  }

.card-container {
    position: relative;
}

.soldoutimg{
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.soldimg {
    width: 70%;
    display: none;

}

.card-container.ongoingtrip {
    pointer-events: none;         /* Makes entire card non-clickable */
    opacity: 0.5;                 /* Visually "disabled" look */
    filter: grayscale(100%);      /* Optional: full grayscale */
    cursor: not-allowed;          /* Shows blocked cursor */
  }

  .card-container.ongoingtrip a {
    pointer-events: none;
    text-decoration: none;
    color: inherit;
  }
  