/* Base styles, which will be overridden by everything below them */
/*@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');*/

body {
	overflow-x: hidden;
}

.bg-wonder {
    background-color: #235baa;
}

.text-wonder{
    color: #235baa; 
}

.text-secondary{
    color: #85b0ed !important; 
}

.bg-adventure {
    background-color:#006f52;
}

.text-adventure{
    color: #006f52; 
}

.bg-ultimate {
    background-color:#6f006b;
}
.text-ultimate{
    color: #6f006b; 
}

.bg-package-dark {
   background-color:  #2b2a2a;
}

.bg-package-light {
   background-color:  #d4d4d4;
}

.lightbox {
    display: none; /* Hidden by default */
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    align-items: center;
    justify-content: center;
}

.lightbox-content {
    max-height: 95vh ;
    
}

.lightbox img {
    max-height: 95vh !important ;
    max-width: 100% ;
    
    display: block;
    position:relative;
}

.lightbox-close {
    position: absolute;
    top: 20px; /* Adjust position relative to the image */
    right: 20px; /* Adjust position relative to the image */
    color: #235baa;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
    z-index: 100001; /* Ensure it stays on top of the image */
    -webkit-text-stroke: 2px white; /* Outline thickness and color */
}

.dot, .dot-active {
  height: 15px;
  width: 15px;
  background-color: #648dc6;
  border-radius: 50%;
  display: inline-block;
  border:1px solid #fff;
}

.dot-active {
  background-color: #235baa;
}

.toastft{
	font-family: 'Poppins', sans-serif;
	  position:fixed;
	  bottom: 50px;
	  right: 30px;
	  border-radius: 6px;
	  background: #fff;
	  padding: 20px 35px 20px 25px;
	  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
	  border-left: 8px solid #235baa;
	  overflow: hidden;
	  transform: translateX(calc(100% + 30px));
	  transition: all 0.5s cubic-bezier(0.68, -0.55, 0.25, 1.35);
	  z-index:9999;
}
.toastft.active{
  transform: translateX(0);
}
.toastft-content{
  display: flex;
  justify-content: center;
  align-items: center;
}
.toastft-check{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 35px;
  width: 35px;
  background-color: #235baa;
  border-radius: 50%;
  color: #fff;
  font-size: 20px;
}
.message{
  display: flex;
  flex-direction: column;
  margin: 0 20px;
}
.message-text{
  font-size: 15px;
  font-weight: 600;
}
.text-1{
  color: #333;
}
.text-2{
  color: #666;
  font-weight: 400;
  font-size: 16px;
}
.toastft-close{
  position: absolute;
  top: 10px;
  right: 15px;
  padding: 5px;
  cursor: pointer;
  opacity: 0.7;
  color:#000;
	font-size:1.5em;
}
.toastft-close:hover{
  opacity: 1;
}
.progress{
  position: absolute;
  bottom: 0;
  left: 0;
  height: 3px;
  width: 100%;
  background: #ddd;
}
.progress::before{
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background-color: #235baa;
}
.progress.active::before{
  animation: progress 5s linear forwards;
}
@keyframes progress {
  100%{
    right: 100%;
  }
}
.toastft-btn{
  padding: 10px 40px;
  font-size: 16px;
  outline: none;
  border: none;
  background-color: #235baa;
  color: #fff;
  border-radius: 50px;
  cursor: pointer;
  transition: 0.3s;
}
.toastft-btn:hover{
  background-color: #0fbd35;
}
		
/* Tablets */
/* Equivalent to bootstrap's media-md */
@media(max-width: 768px){
	.toastft{
	  right: 0px;
	 	width:100%;
	  border-radius: 6px;
	  background: #fff;
	  border-left: 8px solid #235baa;
	  overflow: hidden;
}
}

b, strong, .standout{
	font-weight: bold;
}

a{}
a:hover{}
a:visited{}
a:active{}

.nav {}

.heading, h1 {
	font-family: "Mustica Pro";
	font-size: 17px;
	color: #0057b8;
	margin-bottom: 20px;
}
.heading.space-sm{
	margin-bottom: 20px;
}
.heading.space-sm-alt{
	margin-bottom: 5px;
}

.sub-heading {
	text-transform: uppercase;
	color: #235baa;
	font-size: 17px;
	margin-bottom: 20px;
}

.maintext {}

footer {
	color: #fff;
	font-size: 10px;
	position: relative;
	overflow: hidden;
}
.sticky-footer .btn-container .btn:hover,
.sticky-footer .btn-container .btn:active
.sticky-footer .btn-container .btn:focus{
	color: #fff;
}

.copyright {}

.banner-content{
	z-index: 1;
}

.banner-content .offering{
	font-size:18px !important;
}

.banner-content .btn-primary-1 {
    background-color: rgba(0,111,82,0.75)
}

.banner-content .btn-primary-2 {
    background-color: rgba(60,187,237,0.75)
}

.banner-content .btn-primary-1:hover {
    background-color: rgba(0,150,82,1)
}

.banner-content .btn-primary-2:hover {
    background-color: rgba(60,187,255,1)
}

.banner.alt{
	height: initial;
	min-height: 635px;
}
.banner.alt .banner-content{
	z-index: 2;
	max-width: 320px;
    /*
	padding-top: 220px;*/
}

.banner.alt.banner.alt2 .banner-content{
	max-width: 100%;
   
}

.banner-content-2025 {
    top:0px !important;
}

#banner-video{
    height: 100%;
    width: 100%;
    object-fit: cover;
	position: absolute;
	z-index: 2;
	background-color: #235aaa;
}
.body-bg-wrapper{
	position: relative;
	z-index: 1;
}
.banner .testimonials-container{
	position: sticky;
    bottom: 0px;
}

.banner .testimonials-container a{
	color:#fff;
    text-decoration: underline;
}

.banner .testimonials-container a:hover {
	color:#fff;
    text-decoration: underline;
    text-decoration-color: #00a378;
}

.scrollable-text{
	-webkit-overflow-scrolling: auto;
}
.scrollable-text ::-webkit-scrollbar {
	-webkit-appearance: none;
	width: 12px;
}
.scrollable-text  ::-webkit-scrollbar-thumb {
    border-radius: 20px;
    background-color: #3fbbee;
}
.intro img{
	max-height: 50px;
}

.conversion-form input, .conversion-form textarea {
	font-size:1em;
	border-radius: 0px;
	border:2px solid grey;
	
}

.conversion-form input::placeholder, .conversion-form textarea::placeholder {
	

	color:#222;
	font-style: italic;
	
}

.custom-height {
    height: 100% !important;
    border: 5px solid red !important;
}

.zoomed-preview {
    position: absolute;
    border: 3px solid #ccc;
    width: 100%;
    height: auto;
    overflow: hidden;
    background-repeat: no-repeat;
    display: none;
    pointer-events: none;
    z-index: 10;
}



.top-spacer {
    height:85px;
}

.star {
    width:10px;
}

.star2 {
    width:18px;
}


@media (min-width: 768px) {
.star2 {
        width: 45px;
    }
}

@media (min-width: 992px) {
    .top-spacer {
        height:115px;
    }
    
    .star {
        width: 20px;
    }
    
    
    
    .banner-content .offering{
        font-size:24px !important;
    }
}




.conversion-form .btn {
	
	border-radius: 0px;
	border:2px solid white;
	
}

.conversion-form textarea::placeholder { 
	padding-top:13px;
	text-align: center; 
	
}


.packages-carousel .slick-dots li.slick-active a{
	background-color: #006f52;
}
.packages-carousel .slick-dots li:nth-of-type(2).slick-active a{
	background-color: #235baa;
}

/* Wrapper for carousel and navigation */
.reasons-carousel-wrapper {
  width: 100%;
    
  color: '#235baa';
}


/* Style custom arrows */
.custom-prev,
.custom-next {
  background: rgba(255, 255, 255, 0.9);
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 16px;
}


.custom-prev::before {
  content: "◀";
  font-size: 30px;
}

.custom-next, .custom-prev {
 top:-5px;
 color: #235baa;
}

.custom-next::before {
  content: "▶";
  font-size: 30px;
}

/* Hide default Slick arrows while keeping custom ones visible */
.slick-prev:not(.custom-arrow-left),
.slick-next:not(.custom-arrow-right) {
    display: none !important;
}

/* Hide default Slick arrows while keeping custom ones visible */
.slick-prev:not(.custom-arrow-left-2),
.slick-next:not(.custom-arrow-right-2) {
    display: none !important;
}

/* Custom arrow button styles */
.custom-arrow-left, .custom-arrow-right {
    position: absolute;
    top: 110px;
    z-index: 1000; /* Ensure they appear on top of the carousel */
    background: transparent; /* Remove any default background */
    border: none; /* Remove default border */
    cursor: pointer;
    width: auto; /* Match image size */
    height: auto; /* Match image size */
    padding: 0; /* Remove extra padding */
}

.custom-arrow-left {
    left: 15px;
}

.custom-arrow-right {
    right: 15px;
}


/* Custom arrow button styles */
.custom-arrow-left-2, .custom-arrow-right-2 {
    position: absolute;
    top:0px;
    z-index: 1000; /* Ensure they appear on top of the carousel */
    background: transparent !important; /* Remove any default background */
    border: none; /* Remove default border */
    cursor: pointer;
    width: 25px; /* Match image size */
    height: auto; /* Match image size */
    padding: 0; /* Remove extra padding */
}

.custom-arrow-left-2 {
    left: 0px;
}

.custom-arrow-right-2 {
    right: 0px;
}


.dots-wrapper .slick-dots {
 position:absolute;
  justify-content: center;
  top:-10px;
}

.dots-wrapper .slick-dots li {
  margin: 0 3px;
  width: 40px; /* Square size */
  height: 40px;
}

.dots-wrapper .slick-dots li button {
  display: none; /* Hide the default button */
}

.dots-wrapper .slick-dots li::before {
  content: attr(data-index); /* Display the number using data-index */
  display: block;
  width: 100%;
  height: 100%;
  background: #7fa0cf; /* Inactive square color */
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  line-height: 40px; /* Center text vertically */
  transition: background-color 0.3s ease;
}

.dots-wrapper .slick-dots li.slick-active::before {
  background: #235baa;
  color: #fff;
}


/* Responsive styles, which override the base styles at specific sizes */

/* Smartphones */
/* Equivalent to bootstrap's media-sm */
@media(min-width: 576px){
	.intro img{
		max-width: 155px;
	}
	
	.conversion-form textarea::placeholder { 
	padding-top:35px;
	text-align: center; 
	
}
}
	
/* Tablets */
/* Equivalent to bootstrap's media-md */
@media(min-width: 768px){
	.conversion-form input, .conversion-form textarea {
		font-size:1.3em;

	}
}
	
/* Laptops */
/* Equivalent to bootstrap's media-lg */
@media(min-width: 992px){
	.banner.alt{
		height: initial;
		min-height: initial;
	}
    
    .banner-2025 {
        background-image: none !important;
    }
    
    .banner-content-2025 {
        top:250px !important;
    }
    
	.banner.alt .banner-content{
		max-width: 510px;
		padding-top: 0;
        position:absolute;
	}
    
    .banner.alt2 .banner-content{
		max-width:1200px;
		padding-top: 0;
	}
    
	.heading, h1{
		font-size: 29px;
		margin-bottom: 30px;
	}
	.heading.space-sm{
		margin-bottom: 10px;
	}
	.heading.space-sm-alt{
		margin-bottom: 5px;
	}
	.sub-heading {
		font-size: 23px;
		margin-bottom: 25px;
	}
	.about-sidebar{
		width: 400px;
	}
	footer{
		font-size: 15.5px;
	}
	
	

}


	
/* Desktops */
/* Equivalent to bootstrap's media-xl */
@media(min-width: 1200px){
	.banner.alt{
		height: 1080px;
	}
    
     .slider-container  {
        height:440px !important;
        overflow:hidden !important;
    }
}
	
/* Extra large Desktops */
@media(min-width: 1600px){
	
}