@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");

.bgg-col{
    background-color: #FBFCFF;
}

 /* main section starts here */
.frrh{
    h2{
        color: #002374;
    font-family: Montserrat;
    font-size: 38px;
    font-weight: 700;
    text-transform: capitalize;
    }
    p{
        color: #6E6E6E;
    font-family: Poppins;
    font-size: 14px;
    font-weight: 400;
    }
    .frghku{
       img{
        width: 20px;
        height: 20px;
       }
       span{
        color: #6E6E6E;
        font-family: Poppins;
        font-size: 16px;
        font-weight: 500;
       }
    }
    .rggge{
       img{
        width: 24px;
        height: 24px;
       }
       span{
        color: #6E6E6E;
        font-family: Poppins;
        font-size: 16px;
        font-weight: 500;
       }
    }
}
.jyjy{
    text-align: right;
    h6{
    color: #323232;
    font-family: Poppins;
    font-size: 10px;
    font-weight: 500;
    text-transform: capitalize;
    }
    h3{
     color: #029302;
    font-family: Montserrat;
    font-size: 32px;
    font-weight: 700;
    text-transform: capitalize;
    }
    button{
        color: #FFF;
        font-family: Lato;
        font-weight: 700;
        font-size: 18px;
        padding: 7px 15px;
        color: #fff;
        background: linear-gradient(180deg, #FD5D68 0%, #F62053 100%);
        border-radius: 8px;
        border: none;
        text-decoration: none;
    }
}
    @media (max-width: 768px) {
      .jyjy {
        display: none;
      }
      .frrh {
    h2 {
        font-size: 22px;
    }
        p {
        font-size: 12px;
    }
    .frghku {
        img {
            width: 20px;
            height: 20px;
        }
        span {
            font-size: 12px;
        }
    }
    .rggge {
        img {
            width: 18px;
            height: 18px;
        }
         span {
            font-size: 12px;
        }
    }
}
    }
 /* main section ends here */

/* image section starts here */
    .gallery img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 12px;
    }

    @media (max-width: 768px) {
      .small-img {
        height: 150px;
      }
      .rvgefe{
        display: none;
      }
      .gallery img {
    border-radius: 10px;
     }
    }

/* image section ends here */

/* package overview section starts here */
.gregrt{
    h3{
        color: #323232;
font-family: Montserrat;
font-size: 30px;
font-weight: 600;
text-transform: uppercase;
    }
    p{
        color: #484848;
        text-align: justify;
        font-family: Poppins;
        font-size: 14px;
        font-weight: 400;
    }
}
.hrhry{
        border-radius: 12px;
        border: 1px solid #d0d0d0b3;
        background: #FFF;
    .pinkjy{
        padding: 20px 20px 0;
        text-align: center;
     background: linear-gradient(120deg, rgb(246 34 82 / 39%) -350.32%, rgba(255, 255, 255, 0.70) 100%);
     h6{
        color: #323232;
        font-family: Poppins;
        font-size: 20px;
        font-weight: 600;
        text-transform: capitalize;
     }
     h4{
        color: #029302;
        font-family: Poppins;
        font-size: 28px;
        font-weight: 600;
        span{
        color: #1C6D11;
        font-family: Poppins;
        font-size: 30px !important;
        font-weight: 400;
        }
     }
     p{
        color: #323232;
        font-family: Poppins;
        font-size: 14px;
        font-weight: 600;
         text-transform: uppercase;
     }
        .price-starting-text {
            color: #323232;
            font-family: Poppins, sans-serif;
            font-size: 12px;
            font-weight: 500;
            margin-bottom: 2px;
            text-transform: capitalize;
        }
    }
    .dasdwd{
     padding: 20px;
        background: linear-gradient(120deg, rgb(246 34 82 / 39%) -350.32%, rgba(255, 255, 255, 0.70) 100%);
         .kilky{

        .hththj{
            border-radius: 8px;
            background: linear-gradient(180deg, #FD5D68 0%, #F62053 100%);
            text-align: center;
            padding: 4px 0;
            img{
               width: 17px;
              height: 17px;
            }
            span{
                color: #FFF;
                font-family: Poppins;
                font-size: 16px;
                font-weight: 600;
            }
        }
    }
    .btgr{
        button{
              color: #002374;
            font-family: Poppins;
            font-size: 14px;
            font-weight: 400;
            border-radius: 8px;
            width: 100%;
            padding: 5px 0;
            border: 1px solid #002374e5;
            background: rgba(240, 244, 255, 0.60);
        }
    }
    }

}
 @media (max-width: 768px) {
.hrhry{
    .pinkjy{
     h6{
     }
     h4{
        font-size: 22px;
        span{
        font-size: 14px;
        }
     }
     p{
        font-size: 16px;
     }
    }
}
.gregrt {
    h3 {
        font-size: 22px;
    }
    p {
        font-size: 12px;
    }
}
    }
/* package overview section ends here */

/* included section starts here */
.hgeeg{
    border-radius: 8px;
    padding: 30px 25px;
    background: 	#F1F6FF;

    .rgrgt{
    h3{
		color: #000;
			font-family: 'Bebas Neue', sans-serif;
			font-size: 26px;
			font-weight: 400;
    }
    p{
        color: #484848;
        text-align: justify;
        font-family: Poppins;
        font-size: 18px;
        font-weight: 400;
         max-width: 850px;
    }
    .frfde{
       span{
        color: #2D69E0;
        font-family: Poppins;
        font-size: 16px;
        font-weight: 600;
       }
       img{
        width: 15px;
        height: 15px;
       }
    }
}
.hrgerg{
    img{
     width: 15px;
     height: 15px;
    }
    span{
    color: #101828;
    font-family: Poppins;
    font-size: 16px;
    font-weight: 700;
    }
    p{
        color: #4A5565;
        font-family: Poppins;
        font-size: 12px;
        font-weight: 400;
    }
}
.rgegj{
.rgrtgreg{
    color: #B9B9B9;
}
p{
color: #484848;
text-align: justify;
font-family: Poppins;
font-size: 16px;
font-weight: 400;
}
h4{
    color: #000;
font-family: Montserrat;
font-size: 26px;
font-weight: 500;
}
}

}

 @media (max-width: 768px) {
.hgeeg{
    padding: 20px 15px;
    .rgrgt{
    h3{
        font-size: 18px;
    }
    p{
        font-size: 12px;
    }
    .frfde{
       span{
        font-size: 14px;
       }
       img{
        width: 15px;
        height: 15px;
       }
    }
}
.hrgerg{
    span{
    font-size: 14px;
    }
    p{
        font-size: 12px;
    }
}
.rgegj{
.rgrtgreg{
    color: #B9B9B9;
}
p{
font-size: 12px;
}
h4{
font-size: 18px;
}
}

}
    }
/* included section ends here */

/* about section starts here */
.kufhe{
    h4{
        color: #323232;
        font-family: Montserrat;
        font-size: 30px;
        font-weight: 600;
        text-transform: uppercase;
    }
}
.rtgrj{
    border-radius: 12px;
border: 1px solid #DFDFDF;
padding: 10px;
background: linear-gradient(79deg, rgba(232, 239, 255, 0.58) 16.93%, rgba(255, 255, 255, 0.58) 119.81%);
.accordion-item{
     position: relative;
  overflow: hidden;
border-radius: 12px !important;
border: 1px solid #DFDFDF !important;
background: #FFF;
}
.custom-accordion .accordion-body {
  background: #fff;
  border-radius: 12px;
  padding-top: 0;
  h3{
    color: #484848;
font-family: Poppins;
font-size: 16px;
font-weight: 600;
  }
  p{
color: #484848;
text-align: justify;
font-family: Poppins;
font-size: 14px;
font-style: italic;
font-weight: 500;
  }
  ul li{
    color: #484848;
text-align: justify;
font-family: Poppins;
font-size: 14px;
font-weight: 500;
margin-bottom: 15px;
  }
  .bthth{
border-radius: 8px;
padding: 15px;
border: 1px solid #FFF;
background:  linear-gradient(91deg, #E8EFFF -32.3%, #FFF 99.89%);
p{
    color: #484848;
text-align: justify;
font-family: Poppins;
font-size: 14px;
font-style: italic;
font-weight: 500;
}
  }
}


.ththt {
  white-space: nowrap;
}

.grgrqq {
    border-radius: 20px;
border: 1px solid #b5b5b5ab;
background: #F2F2F2;
        padding: 5px 10px;
    img{
        width: 20px;
        height: 20px;
    }
span {
color: #484848;
font-family: Poppins;
font-size: 16px;
font-weight: 400;
text-transform: capitalize;
}
}

.custom-accordion .accordion-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('../images/detail/light.png');
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: 0.3s ease;
  z-index: 0;
}

.custom-accordion .accordion-button:not(.collapsed) ~ .accordion-collapse,
.custom-accordion .accordion-button:not(.collapsed) {
  position: relative;
  z-index: 2;
    background-color: transparent;

}

.custom-accordion .accordion-item:has(.accordion-button:not(.collapsed))::before {
  opacity: 1;
}

.custom-accordion .accordion-button,
.custom-accordion .accordion-body {
  position: relative;
  z-index: 2;
  background: transparent;
}
.custom-accordion .accordion-button {
  box-shadow: none;
  border-radius: 12px !important;
    background: #FFF;
    color: #002374;
    padding: 22px 15px;
    font-family: Montserrat;
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
}

.custom-accordion .accordion-button:focus {
  box-shadow: none;
}



}
.njtyjt{
    h5{
        color: #323232;
        font-family: Montserrat;
        font-size: 20px;
        font-weight: 600;
        text-transform: uppercase;
    }
    ul li{
        color: #484848;
        font-family: Poppins;
        font-size: 14px;
        font-weight: 400;
    }
    .custom-list {
  list-style: disc;
  padding-left: 36px;
}

.custom-list li {
  margin-bottom: 12px;
}

.custom-list h6 {
  color: #002374;
  margin: 0;
text-align: justify;
font-family: Poppins;
font-size: 16px;
font-weight: 500;
}

.custom-list p {
  margin: 2px 0 0;
color: #4A5565;
font-family: Poppins;
font-size: 12px;
font-weight: 400;
}
p{
    color: #484848;
font-family: Poppins;
font-size: 14px;
font-weight: 400;
}
}
 @media (max-width: 768px) {
    .kufhe{
    h4{
        font-size: 20px;
    }
}
.rtgrj{
.custom-accordion .accordion-body {
    padding: 10px;
      h3{
font-size: 14px;
  }
  p{
font-size: 12px;
  }
    ul{
padding-left: 25px;
    }
  ul li{
   font-size: 12px;
  }
  .bthth{
p{
font-size: 12px;
}
  }
}
.fefeki{
    margin-bottom: 8px;
}
.grgrqq {
     padding: 2px 6px;
    span {
    font-size: 12px;
    }
}
.custom-accordion .accordion-button {
    font-size: 14px;
    padding: 12px 15px;
}

}
.njtyjt{
    h5{
        font-size: 16px;
    }
    ul{
         padding-left: 20px;
    }
    ul li{
        font-size: 14px;
    }
    .custom-list {
        padding-left: 18px;
    }
.custom-list h6 {
font-size: 14px;
}

.custom-list p {
font-size: 12px;
}
p{
font-size: 12px;
}
}
 }
/* about section ends here */


.pkg-list{
	padding-left: 0px ;
	margin-bottom:0px ;
	li{
		list-style:none;
		color: #4A5565;
        font-family: Poppins;
        font-size: 14px;
        font-weight: 400;
	}
}


@media screen and (max-width:768px) {
	.pkg-list{
		padding-left: 0px !important;
		margin-bottom:0px ;
	}
}

.select-room-btn {
    width: 100%;
    padding: 12px 20px;
    border: none;
    border-radius: 8px;
    background: linear-gradient(180deg, #FD5D68 0%, #F62053 100%);
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.select-room-btn:hover {
    background: linear-gradient(180deg, #ff7681 0%, #ff5179 100%);
    transform: translateY(-1px);
}

.select-room-btn i {
    margin-right: 6px;
}

/* Selected room background */
.accordion-item.selected-room {
    background-color: #fff0f5 !important;
    border: 1px solid #f5b6cf !important;
    border-radius: 12px;
}

/* Change the header background too */
.accordion-item.selected-room .accordion-button,
.accordion-item.selected-room .accordion-body {
    background-color: #fff0f5 !important;
}

/* Keep the selected button blue */
.accordion-item.selected-room .select-room-btn {
    background:  linear-gradient(180deg, #FD5D68 0%, #F62053 100%);
    color: white;
}

.room-content{
    margin-left:25px;
}

.room-image-wrapper {
    position: relative;
    width: 100%;
}

.room-image-wrapper img {
    width: 100%;
    display: block;
}

.room-no {
    position: absolute;
    width: 100%;
    bottom: 27px;
    left: 0%;
    z-index: 2;
    background: #2f2f2fcf;
    border: none;
    color: #fff !important;
    padding: 8px 15px;
    border-radius: 6px;
    font-size: 16px;
}

button.submitbtn {
    background: linear-gradient(180deg, #FD5D68 0%, #F62053 100%);
    color: white;
    padding: 2px;
    align-items: center;
}

.change-room-btn {
    background: #ff3154;
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 5px 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.change-room-btn:hover {
    background: #e52345;
}

/* ==========================================
   ROOMS & GUESTS POPUP
   ========================================== */

.package-room-field {
    position: relative;
}

.package-guests-wrapper {
    position: relative;
    width: 100%;
}

/* Guest popup box */
#popupRoomGuests {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    width: 370px;
    max-width: 100%;
    background: #fff;
    border-radius: 0 0 12px 12px;
    padding: 20px 14px 14px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
    border: 1px solid #e5e5e5;
    z-index: 99999;
}

/* Each Adults / Children / Room row */
#popupRoomGuests .guest-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
    width: 100%;
}

#popupRoomGuests .guest-row:last-of-type {
    margin-bottom: 18px;
}

/* Labels */
#popupRoomGuests .guest-row > span:first-child {
    flex: 1;
    color: #323232;
    font-family: Poppins, sans-serif;
    font-size: 16px;
    font-weight: 600;
}

/* Counter wrapper behavior */
#popupRoomGuests .guest-row button {
    width: 32px;
    height: 32px;
    border: 1px solid #d7d7d7;
    background: #fff;
    color: #323232;
    font-family: Poppins, sans-serif;
    font-size: 18px;
    font-weight: 400;
    cursor: pointer;
    padding: 0;
    margin: 0;
}

/* Left minus button */
#popupRoomGuests .guest-row button:first-of-type {
    border-radius: 6px 0 0 6px;
}

/* Right plus button */
#popupRoomGuests .guest-row button:last-of-type {
    border-radius: 0 6px 6px 0;
}

/* Number in middle */
#popupRoomGuests .guest-row > span:not(:first-child) {
    width: 42px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid #d7d7d7;
    border-bottom: 1px solid #d7d7d7;
    background: #f7f9fc;
    color: #323232;
    font-family: Poppins, sans-serif;
    font-size: 15px;
    font-weight: 500;
}

/* Hover on +/- */
#popupRoomGuests .guest-row button:hover {
    background: #f5f5f5;
}

/* Error message */
#popupRoomError {
    color: #e52345;
    font-family: Poppins, sans-serif;
    font-size: 12px;
    font-weight: 500;
    margin-bottom: 10px;
}

/* Done button */
#popupGuestsDone {
    width: 100%;
    height: 40px;
    border: none;
    border-radius: 8px;
    background: linear-gradient(180deg, #FD5D68 0%, #F62053 100%);
    color: #fff;
    font-family: Poppins, sans-serif;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

#popupGuestsDone:hover {
    background: linear-gradient(180deg, #ff7681 0%, #ff5179 100%);
}

/* Main Rooms & Guest input */
#popupGuests {
    cursor: pointer;
    background-color: #fff;
}

/* Mobile */
@media (max-width: 768px) {

    #popupRoomGuests {
        width: 100%;
        padding: 18px 14px 14px;
    }

    #popupRoomGuests .guest-row {
        margin-bottom: 18px;
    }

    #popupRoomGuests .guest-row > span:first-child {
        font-size: 14px;
    }

}


.connecting-flight {
    width: 100%;
    min-width: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 4px;
    position: relative;
    top: -28px;
}

.connecting-duration {
    font-size: 12px;
    color: #555;
    white-space: nowrap;
}

.connecting-route {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.route-endpoint {
    width: 14px;
    height: 14px;
    border: 3px solid #111;
    border-radius: 50%;
    background: #fff;
    flex-shrink: 0;
}

.route-track {
    height: 3px;
    flex: 1;
    min-width: 15px;
    background: #111;
}

.connection-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: linear-gradient(180deg, #FD5D68 0%, #F62053 100%);;
    flex-shrink: 0;
}

.connecting-label {
    font-size: 12px;
    color:#F62053;
}

.connecting-airport {
    font-size: 12px;
    color: #555;
}

.price-asterisk {
    display: inline;
    margin-left: 2px;
    font-size: 18px;
    vertical-align: top;
}
