/*
Theme Name: UITS
Theme URI: https://uitsnepal.com
Author: UITS
Author URI: https://uitsnepal.com
Description: Travel Theme
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: uits
Tags: one-column, custom-colors, custom-menu, custom-logo
*/


:root {
 --theme-color: #f34e20;
 --title-color: #161921;
 --body-color: #687179;
 --smoke-color: #F5F5F5;
 --smoke-color2: #e5f5fb;
 --smoke-color3: #e6e6e6;
 --black-color: #000000;
 --white-color: #ffffff;
 --light-color: #72849B;
 --yellow-color: #FFB539;
 --success-color: #28a745;
 --error-color: #dc3545;
 --border-color: #E4E4E4;
 --title-font: 'Playfair Display',  serif;
 --body-font: 'Roboto',  sans-serif;
 --body-pfont: 'Poppins',  sans-serif;
 --style-font: 'Dancing Script',  cursive;
 --icon-font: "Font Awesome 6 Free";
 --icon-color: #224796;
 --main-container: 1320px;
 --container-gutters: 30px;
 --section-space: 100px;
 --section-space-mobile: 80px;
 --section-title-space: 60px;
 --ripple-ani-duration: 5s;
}
.poppins-thin { font-family: "Poppins", sans-serif; font-weight: 100; font-style: normal; }
.poppins-extralight { font-family: "Poppins", sans-serif; font-weight: 200; font-style: normal; }
.poppins-light { font-family: "Poppins", sans-serif; font-weight: 300; font-style: normal; }
.poppins-regular { font-family: "Poppins", sans-serif; font-weight: 400; font-style: normal; }
.poppins-medium { font-family: "Poppins", sans-serif; font-weight: 500; font-style: normal; }
.poppins-semibold { font-family: "Poppins", sans-serif; font-weight: 600; font-style: normal; }
.poppins-bold { font-family: "Poppins", sans-serif; font-weight: 700; font-style: normal; }
.poppins-extrabold { font-family: "Poppins", sans-serif; font-weight: 800; font-style: normal; }
.poppins-black { font-family: "Poppins", sans-serif; font-weight: 900; font-style: normal; }
.poppins-thin-italic { font-family: "Poppins", sans-serif; font-weight: 100; font-style: italic; }
.poppins-extralight-italic { font-family: "Poppins", sans-serif; font-weight: 200; font-style: italic; }
.poppins-light-italic { font-family: "Poppins", sans-serif; font-weight: 300; font-style: italic; }
.poppins-regular-italic { font-family: "Poppins", sans-serif; font-weight: 400; font-style: italic; }
.poppins-medium-italic { font-family: "Poppins", sans-serif; font-weight: 500; font-style: italic; }
.poppins-semibold-italic { font-family: "Poppins", sans-serif; font-weight: 600; font-style: italic; }
.poppins-bold-italic { font-family: "Poppins", sans-serif; font-weight: 700; font-style: italic; }
.poppins-extrabold-italic { font-family: "Poppins", sans-serif; font-weight: 800; font-style: italic; }
.poppins-black-italic { font-family: "Poppins", sans-serif; font-weight: 900; font-style: italic; }
.dancing-script-f {
  font-family: "Dancing Script", cursive;
  font-optical-sizing: auto;
  font-weight: 200;
  font-style: normal;
}
.roboto-f {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 200;
  font-style: normal;
  font-variation-settings: "wdth" 100;
}
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
  overflow-y: auto;
  background-color: #f6fafc;
  font-family: var(--body-pfont);
  font-weight: 400;

}
.fullpage-wrapper {
  min-height: 100vh;
  display: block;
  overflow-x: hidden;
}
.slider-section {
  width: 100vw;
  background: #f6fafc;
  padding: 0;
}
.carouselx,
.carouselx-inner,
.carouselx-item {
  width: 100vw;
}
.carouselx-item img {
  width: 100vw;
  height: auto;
  max-width: 100%;
  max-height: none;
  display: block;
  margin: 0 auto;
}
.carouselx-caption .btn {
  background: #fc6830;
  border: none;
  color: #fff;
  font-weight: 600;
  font-size: 18px;
  padding: 9px 28px;
  border-radius: 5px;
}
/* Optional: style to keep topbar/header sticky if desired */
.topbar, .header-section {
  position: relative;
  z-index: 3;
}
.topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 55px;
  padding: 0 32px;
  font-size: 1.0rem;
  color: #fff;
  background: linear-gradient(100deg, #fc6830 67%, #ff8e6a 100%);
  position: relative;
  z-index: 3;
  overflow: hidden;
}
.topbar:before {
  content: '';
  height: 100%;
  width: 70%;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: var(--theme-color);
  -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 40px) 100%, 0% 100%);
  clip-path: polygon(0 0, 100% 0, calc(100% - 40px) 100%, 0% 100%);
  z-index: 0;
  pointer-events: none;
}
.topbar .topbar-left,
.topbar .topbar-right {
  display: flex;
  align-items: center;
  z-index: 1;
  position: relative;
}
.divider {
  width: 2px;
  height: 24px;
  background: rgba(255,255,255,0.18);
  margin: 0 14px;
  border-radius: 4px;
  display: inline-block;
}
.topbar a, .topbar span {
  color: #fff;
  text-decoration: none;
  margin-right: 12px;
  font-weight: 500;
}
.topbar .social-icons {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-left: 10px;
}
.topbar .social-icons a {
  color: #fff;
  font-size: 20px;
}

/*why choose us */


.sub-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--theme-color);
    font-family: var(--style-font);
    text-transform: capitalize;
    margin-top: -0.2em;
    margin-bottom: 25px;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px;
}

.sub-title2 {

font-size: 20px;
    font-weight: 700;
    color: var(--theme-color);
    font-family: var(--style-font);
    text-transform: capitalize;
    margin-top: -0.2em;
    margin-bottom: 25px;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 15px;
}

.justify-content-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
    -ms-flex-pack: center!important;
    justify-content: center !important;
}

.sub-title .shape, .sub-title2 .shape {
    display: inline-block;
    height: 2px;
    width: 40px;
    background-color: var(--theme-color);
    border-radius: 99px;
    position: relative;
}

.sub-title .dots, .sub-title2 .dots {
    display: inline-block;
    width: 8px;
    height: 2px;
    background-color: inherit;
    border-radius: 99px;
    position: absolute;
    top: 0;
}
.sub-title .shape.right .dots, .sub-title2 .shape.right .dots {
    right: -12px;
}

.sub-title .shape.left .dots, .sub-title2 .shape.left .dots {
    left: -12px;
}


.text-theme {
  color: var(--theme-color);
}
.icon-color {
  color: var(--icon-color);
}
.why-choose-us h2 {
  font-family: var(--style-font);
}
.why-choose-us .shadow-sm {
  transition: all 0.3s ease;
}
.why-choose-us .shadow-sm:hover {
  transform: translateY(-6px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
}

.why-choose-us .feature-box {
  padding: 2rem;               /* space inside the box */
  border: 2px solid var(--smoke-color3);  /* add a solid border using your theme colour */
  border-radius: 8px;          /* rounds the corners slightly */
  transition: all 0.3s ease;   /* for hover effect */
  background-color: #fff;      /* ensure box background is white (or adjust as needed) */
  height: 100%;                /* let box fill its column height */
  display: flex;               /* to align content vertically */
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.why-choose-us .feature-box:hover {
  transform: translateY(-6px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.1);
}

/* about us */

.bg-smoke {
	background-color: var(--smoke-color) !important
}

.about-us-section {
  background-color: #fff;
}

.about-image-wrapper {
  position: relative;
  display: inline-block;
}

.about-image {
  max-width: 100%;
  border-radius: 12px;
  transition: transform 0.4s ease;
}



.flying-plane {
  position: absolute;
  bottom: 25%;
  right: -40px;
  width: 1000px; /* Increase for visibility */
  transition: transform 0.6s ease-in-out, filter 0.3s;
  filter: drop-shadow(0 2px 3px rgba(0,0,0,0.4)) brightness(0) saturate(100%) invert(37%) sepia(93%) saturate(2160%) hue-rotate(347deg) brightness(98%) contrast(94%);
}


.about-image-wrapper:hover .flying-plane {
  animation: planeBounce 1.2s ease-in-out infinite alternate;
}

@keyframes planeBounce {
  0%   { transform: translateY(0) rotate(0deg); }
  50%  { transform: translateY(-10px) rotate(5deg); }
  100% { transform: translateY(0) rotate(0deg); }
}


/*about.ds*/

.space, .space-top {
	padding-top: var(--section-space)
}
.space, .space-bottom {
	padding-bottom: var(--section-space)
}

.img-box2 {
	text-align: right;
	position: relative;
	z-index: 2
}
.img-box2 .img1 {
	display: inline-block
}
.img-box2 .ot-video {
	min-height: auto;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 50%;
	overflow: hidden;
	background-color: var(--white-color);
	border-right: 10px solid var(--white-color);
	border-top: 5px solid var(--white-color);
	border-bottom: 5px solid var(--white-color)
}
.img-box2 .shape1 {
	position: absolute;
	bottom: -10px;
	left: 30px;
	z-index: -1;
	-webkit-animation: jumpReverseAni 7s linear infinite;
	animation: jumpReverseAni 7s linear infinite
}
.img-box2 .shape1 img {
	max-width: -webkit-max-content;
	max-width: -moz-max-content;
	max-width: max-content
}

@media (max-width: 1199px) {
.img-box2 {
	max-width: 700px
}
.img-box2 .shape1 {
	left: 90px
}
.counter-grid-wrap {
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center
}
}

@media (max-width: 991px) {
.img-box2 .shape1 {
	left: 0
}
.img-box2 .shape1 img {
	max-width: 100%
}
}

@media (max-width: 575px) {

.space {
padding-top:5px !important;
}

.img-box2 .ot-video {
	max-width: 60%
}
.img-box2 .ot-video img {
	aspect-ratio: 16 / 16;
	height: auto
}}

/**** ***/


/** Desitnations **/


  #map {
            height: 400px;
            width: 100%;
        }

/**+ */

/** Testimponials **/

.testimonial-img {
            width: 150px; /* Set a fixed width */
            height: 150px; /* Set a fixed height */
            object-fit: cover; /* Ensures the image covers the area without distortion */
            border: 4px solid #fff; /* Optional: adds a white border */
            box-shadow: 0 0 10px rgba(0,0,0,0.1); /* Optional: adds a subtle shadow */
        }

/** Footer **/


.custom-footer {
  background: #23242a;
  position: relative;
  overflow: hidden;
  background-image: url('./assets/footer-bg.png'); /* Replace with your image path */
  background-position: center bottom 3px; /* Positions the image at the bottom, horizontally centered */
  background-repeat: no-repeat; /* Prevents the image from repeating */
  background-size: 100% auto; /* Sets the width to 100% and adjusts height proportionally */

}
.footer-desc {
  font-size: 1.2rem;
  line-height: 2.1rem;
}
.footer-contact-title {
  font-size: 2rem;
  font-weight: 600;
}
.footer-contact-highlight {
  color: #ff5823;
}
.footer-contact-hr {
  width: 70px;
  border: 0;
  border-top: 3px solid #ff5823;
  margin-left: 0;
  margin-bottom: 0.75rem;
}
.footer-contact-list .footer-icon {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 1.5rem;
}
.bg-orange {
  background: #ff5823;
}
.footer-contact-text {
  color: #fff;
  font-size: 1rem;
}
.footer-bg {
  position: relative;
  bottom: 0;
  width: 100%;
  margin-top: -2rem;
}
.footer-bottom {
  font-size: 1rem;
  letter-spacing: 0.03em;
  position: absolute;
  bottom: 0;
  width: 100%;
}
.text-orange {
  color: #ff5823 !important;
}




@media (max-width: 768px) {
  .footer-bg img {
    height: 70px;
    object-fit: cover;
  }
  .custom-footer .container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}




/** Animation All **/

.ripple-animation, .play-btn:after, .play-btn:before {
	-webkit-animation-duration: var(--ripple-ani-duration);
	animation-duration: var(--ripple-ani-duration);
	-webkit-animation-timing-function: ease-in-out;
	animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-name: ripple;
	animation-name: ripple
}
@-webkit-keyframes ripple {
 0% {
 -webkit-transform:scale(1);
 transform:scale(1);
 opacity:0
}
 30% {
 opacity:0.4
}
 100% {
 -webkit-transform:scale(1.7);
 transform:scale(1.7);
 opacity:0
}
}
@keyframes ripple {
 0% {
 -webkit-transform:scale(1);
 transform:scale(1);
 opacity:0
}
 30% {
 opacity:0.4
}
 100% {
 -webkit-transform:scale(1.7);
 transform:scale(1.7);
 opacity:0
}
}
@-webkit-keyframes ripplemap {
 0% {
 -webkit-transform:scale(1);
 transform:scale(1);
 opacity:0
}
 30% {
 opacity:0.6
}
 100% {
 -webkit-transform:scale(2.5);
 transform:scale(2.5);
 opacity:0
}
}
@keyframes ripplemap {
 0% {
 -webkit-transform:scale(1);
 transform:scale(1);
 opacity:0
}
 30% {
 opacity:0.6
}
 100% {
 -webkit-transform:scale(2.5);
 transform:scale(2.5);
 opacity:0
}
}
.movingX {
	-webkit-animation: movingX 8s linear infinite;
	animation: movingX 8s linear infinite
}
@-webkit-keyframes movingX {
 0% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
 50% {
 -webkit-transform:translateX(50px);
 transform:translateX(50px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
@keyframes movingX {
 0% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
 50% {
 -webkit-transform:translateX(50px);
 transform:translateX(50px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
.moving {
	-webkit-animation: moving 8s linear infinite;
	animation: moving 8s linear infinite
}
@-webkit-keyframes moving {
 0% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
 50% {
 -webkit-transform:translateX(-50px);
 transform:translateX(-50px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
@keyframes moving {
 0% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
 50% {
 -webkit-transform:translateX(-50px);
 transform:translateX(-50px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
.jump {
	-webkit-animation: jumpAni 7s linear infinite;
	animation: jumpAni 7s linear infinite
}
@-webkit-keyframes jumpAni {
 0% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
 40% {
 -webkit-transform:translateY(-30px);
 transform:translateY(-30px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
@keyframes jumpAni {
 0% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
 40% {
 -webkit-transform:translateY(-30px);
 transform:translateY(-30px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
.jump-reverse {
	-webkit-animation: jumpReverseAni 7s linear infinite;
	animation: jumpReverseAni 7s linear infinite
}
@-webkit-keyframes jumpReverseAni {
 0% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
 50% {
 -webkit-transform:translateY(30px);
 transform:translateY(30px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
@keyframes jumpReverseAni {
 0% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
 50% {
 -webkit-transform:translateY(30px);
 transform:translateY(30px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
.spin {
	-webkit-animation: spin 15s linear infinite;
	animation: spin 15s linear infinite
}
@-webkit-keyframes spin {
 0% {
 -webkit-transform:rotate(0);
 transform:rotate(0)
}
 100% {
 -webkit-transform:rotate(360deg);
 transform:rotate(360deg)
}
}
@keyframes spin {
 0% {
 -webkit-transform:rotate(0);
 transform:rotate(0)
}
 100% {
 -webkit-transform:rotate(360deg);
 transform:rotate(360deg)
}
}
@-webkit-keyframes rotate {
 0% {
 -webkit-transform:rotate(0);
 transform:rotate(0)
}
 50% {
 -webkit-transform:rotate(40deg);
 transform:rotate(40deg)
}
 100% {
 -webkit-transform:rotate(0);
 transform:rotate(0)
}
}
@keyframes rotate {
 0% {
 -webkit-transform:rotate(0);
 transform:rotate(0)
}
 50% {
 -webkit-transform:rotate(40deg);
 transform:rotate(40deg)
}
 100% {
 -webkit-transform:rotate(0);
 transform:rotate(0)
}
}
@-webkit-keyframes animate-positive {
 0% {
 width:0
}
}
@keyframes animate-positive {
 0% {
 width:0
}
}
.scalein.ot-animated {
 --animation-name: scalein
}
.slidetopleft.ot-animated {
 --animation-name: slidetopleft
}
.slidebottomright.ot-animated {
 --animation-name: slidebottomright
}
.slideinleft.ot-animated {
 --animation-name: slideinleft
}
.slideinright.ot-animated {
 --animation-name: slideinright
}
.slideinup.ot-animated {
 --animation-name: slideinup
}
.slideindown.ot-animated {
 --animation-name: slideindown
}
.rollinleft.ot-animated {
 --animation-name: rollinleft
}
.rollinright.ot-animated {
 --animation-name: rollinright
}
.scalein, .slidetopleft, .slidebottomright, .slideinleft, .slideinright, .slideindown, .slideinup, .rollinleft, .rollinright {
	opacity: 0;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-iteration-count: 1;
	animation-iteration-count: 1;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-delay: 0.3s;
	animation-delay: 0.3s;
	-webkit-animation-name: var(--animation-name);
	animation-name: var(--animation-name)
}
.ot-animated {
	opacity: 1
}
@-webkit-keyframes slideinup {
 0% {
 opacity:0;
 -webkit-transform:translateY(70px);
 transform:translateY(70px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
@keyframes slideinup {
 0% {
 opacity:0;
 -webkit-transform:translateY(70px);
 transform:translateY(70px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
@-webkit-keyframes slideinright {
 0% {
 opacity:0;
 -webkit-transform:translateX(70px);
 transform:translateX(70px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
@keyframes slideinright {
 0% {
 opacity:0;
 -webkit-transform:translateX(70px);
 transform:translateX(70px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
@-webkit-keyframes slideindown {
 0% {
 opacity:0;
 -webkit-transform:translateY(-70px);
 transform:translateY(-70px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
@keyframes slideindown {
 0% {
 opacity:0;
 -webkit-transform:translateY(-70px);
 transform:translateY(-70px)
}
 100% {
 -webkit-transform:translateY(0);
 transform:translateY(0)
}
}
@-webkit-keyframes slideinleft {
 0% {
 opacity:0;
 -webkit-transform:translateX(-70px);
 transform:translateX(-70px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
@keyframes slideinleft {
 0% {
 opacity:0;
 -webkit-transform:translateX(-70px);
 transform:translateX(-70px)
}
 100% {
 -webkit-transform:translateX(0);
 transform:translateX(0)
}
}
@-webkit-keyframes slidebottomright {
 0% {
 opacity:0;
 -webkit-transform:translateX(100px) translateY(100px);
 transform:translateX(100px) translateY(100px)
}
 100% {
 -webkit-transform:translateX(0) translateY(0);
 transform:translateX(0) translateY(0)
}
}
@keyframes slidebottomright {
 0% {
 opacity:0;
 -webkit-transform:translateX(100px) translateY(100px);
 transform:translateX(100px) translateY(100px)
}
 100% {
 -webkit-transform:translateX(0) translateY(0);
 transform:translateX(0) translateY(0)
}
}
@-webkit-keyframes slidetopleft {
 0% {
 opacity:0;
 -webkit-transform:translateX(-100px) translateY(-100px);
 transform:translateX(-100px) translateY(-100px)
}
 100% {
 -webkit-transform:translateX(0) translateY(0);
 transform:translateX(0) translateY(0)
}
}
@keyframes slidetopleft {
 0% {
 opacity:0;
 -webkit-transform:translateX(-100px) translateY(-100px);
 transform:translateX(-100px) translateY(-100px)
}
 100% {
 -webkit-transform:translateX(0) translateY(0);
 transform:translateX(0) translateY(0)
}
}
@-webkit-keyframes scalein {
 0% {
 opacity:0;
 -webkit-transform:scale(0.3);
 transform:scale(0.3)
}
 100% {
 -webkit-transform:scale(1);
 transform:scale(1)
}
}
@keyframes scalein {
 0% {
 opacity:0;
 -webkit-transform:scale(0.3);
 transform:scale(0.3)
}
 100% {
 -webkit-transform:scale(1);
 transform:scale(1)
}
}
@-webkit-keyframes rollinleft {
 0% {
 opacity:0;
 -webkit-transform:translateX(-100%) rotate(-120deg);
 transform:translateX(-100%) rotate(-120deg)
}
 to {
 -webkit-transform:translateX(0) rotate(0deg);
 transform:translateX(0) rotate(0deg)
}
}
@keyframes rollinleft {
 0% {
 opacity:0;
 -webkit-transform:translateX(-100%) rotate(-120deg);
 transform:translateX(-100%) rotate(-120deg)
}
 to {
 -webkit-transform:translateX(0) rotate(0deg);
 transform:translateX(0) rotate(0deg)
}
}
@-webkit-keyframes rollinright {
 0% {
 opacity:0;
 -webkit-transform:translateX(100%) rotate(120deg);
 transform:translateX(100%) rotate(120deg)
}
 to {
 -webkit-transform:translateX(0) rotate(0deg);
 transform:translateX(0) rotate(0deg)
}
}
@keyframes rollinright {
 0% {
 opacity:0;
 -webkit-transform:translateX(100%) rotate(120deg);
 transform:translateX(100%) rotate(120deg)
}
 to {
 -webkit-transform:translateX(0) rotate(0deg);
 transform:translateX(0) rotate(0deg)
}
}
/** --- **/


@media (max-width: 768px) {
  .topbar {
    flex-direction: column;
    align-items: flex-start;
    padding: 12px 18px;
    font-size: 1rem;
  }
  .divider { display: none; }
}
.header-section {
  background: #fff;
  padding: 10px 0;
  box-shadow: 0 2px 4px rgba(0,0,0,0.03);
}
.navbar-nav .nav-link {
  margin-right: 20px;
  color: #08194c;
}
.logo {
  max-width: 120px;
  vertical-align: middle;
}
@media (max-width: 991px) {
  .navbar-nav .nav-link {
    margin-right: 0;
    margin-bottom: 4px;
  }
}

.feature-box {
        /*border-radius: 20px;*/
        background: #fff;
        box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
        padding: 20px;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

	@media (min-width: 992px) {
  .sub-title2 { justify-content: flex-start !important; }
}


 .service-img {
  width: 30%;      /* Takes 30% of the parent column */
  height: auto;    /* Maintain aspect ratio */
  margin: 0 auto;  /* Center the image horizontally */
  display: block;  /* Ensures auto margin works */
}


.row.align-top {
  align-items: flex-start !important;
}

 .icon-custom {
        color: #f34e20;
        font-size: 1.25em;
    }

    .btn-custom {
        background-color: #f34e20;
        color: #fff;
    }

    .btn-custom:hover {
        background-color: #224796;
        color: #fff;
    }



    .contact-card {
        min-height: 220px;
        border-radius: 5px;
    }


 /* Destinations */

 /*Quick Facts */
 
.quick-facts-wrapper {
      width: 80%;                    /* exactly 80% of screen */
      max-width: 1400px;
      margin-left: 5vw;              /* change to 0 if you want completely flush left */
      margin-right: auto;
      padding: 60px 0;
      font-family: system-ui, -apple-system, sans-serif;
    }

    .quick-facts-wrapper h2 {
      margin-bottom: 40px;
      font-size: 2.2rem;
      font-weight: 600;
    }

    .facts-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 10px;
    }

    .fact-card {
      background: #ffffff;
      padding: 10px 5px;
      border-radius: 10px;
      text-align: center;
      box-shadow: 0 4px 10px rgba(0,0,0,0.08);
      transition: transform 0.2s;
    }

    .fact-card:hover { transform: translateY(-5px); }

    .fact-card i {
      font-size: 2.4rem;
      color: #224796;
      margin-bottom: 16px;
    }

    .fact-title  { font-size: 0.95rem; color: #666; margin-bottom: 6px; }
    .fact-value  { font-size: 1.15rem; font-weight: 600; color: #1e293b; }
/* Recommended */

 .tab-section {
      padding: 60px 0;
    }

    .section-title {
      text-align: left;
      font-size: 32px;
      font-weight: 700;
      margin-bottom: 30px;
      color: #333;
    }

    .tab-wrapper {
      background-color: #e9ecef;
      border-radius: 8px;
      padding: 12px;
      display: inline-block;
      max-width: 100%;
    }

    /* Horizontal scroll container */
    .tabs-scroll {
      display: flex;
      overflow-x: auto;
      overflow-y: hidden;
      scrollbar-width: none;          /* Firefox */
      max-width: 100%;
    }

    .tabs-scroll::-webkit-scrollbar { /* Chrome / Safari */
      display: none;
    }

    /* Keep tabs in a single row */
    .tabs-scroll .nav-tabs {
      border-bottom: none;
      flex-wrap: nowrap;
      gap: 12px;
    }

    .tabs-scroll .nav-item {
      flex: 0 0 auto;
    }

    .tabs-scroll .nav-link {
      background-color: #ffffff;
      color: #000000;
      border-radius: 6px;
      border: none;
      font-weight: 600;
      padding: 15px 25px;
      transition: all 0.3s ease;
      white-space: nowrap;
    }

    .tabs-scroll .nav-link:hover {
      background-color: #dfe3e8;
      color: #000000;
    }

    .tabs-scroll .nav-link.active {
      background-color: #224796;
      color: #ffffff;
    }

    .tab-content {
      margin-top: 30px;
    }

    .tab-pane {
      background: #ffffff;
      padding: 20px;
      border-radius: 10px;
      box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    }

	/* Contact Booking */

	.contact-card {
      max-width: 420px;
      margin: 40px auto;
      background-color: #ffffff;
      border-radius: 0;
      box-shadow: 0 10px 40px rgba(0,0,0,0.06);
      overflow: hidden;
    }

    .contact-header {
      background-color: #224796;
      padding: 28px 24px;
      text-align: center;
    }

    .contact-header h4 {
      margin: 0;
	  font-size:1.2em;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: #ffffff;
    }

    .contact-body {
      padding: 36px 32px 32px;
    }

    .contact-row {
      display: flex;
      gap: 20px;
      margin-bottom: 18px;
    }

    .contact-row .form-group {
      flex: 1;
    }

    .form-group-single {
      margin-bottom: 18px;
    }

    .contact-input,
    .contact-textarea {
      width: 100%;
      border-radius: 999px;
      border: none;
      background-color: #f8f8f8;
      padding: 12px 22px;
      font-size: 14px;
      color: #555;
      outline: none;
      box-shadow: inset 0 0 0 1px rgba(0,0,0,0.02);
    }

    .contact-input::placeholder,
    .contact-textarea::placeholder {
      color: #c0c0c0;
      font-weight: 500;
    }

    .contact-input:focus,
    .contact-textarea:focus {
      background-color: #fdfdfd;
      box-shadow: 0 0 0 2px rgba(255,210,0,0.5);
    }

    .contact-textarea {
      border-radius: 28px;
      min-height: 130px;
      resize: vertical;
      padding-top: 16px;
    }

    .contact-btn {
      display: block;
      width: 100%;
      border-radius: 999px;
      border: none;
      padding: 14px 24px;
      margin-top: 10px;
      background-color: #224796;
      color: #ffffff;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      font-weight: 600;
      font-size: 13px;
      text-align: center;
      transition: background-color 0.2s ease, box-shadow 0.2s ease;
    }

    .contact-btn:hover {
      background-color: #f5c400;
      box-shadow: 0 6px 18px rgba(0,0,0,0.15);
    }

    .contact-btn:active {
      background-color: #e5b800;
      box-shadow: none;
    }

    @media (max-width: 575.98px) {
      .contact-card {
        margin: 24px 12px;
      }
      .contact-body {
        padding-inline: 20px;
      }
      .contact-row {
        flex-direction: column;
        gap: 12px;
      }
    }

	/*landmarks*/


	/* Card visuals */
    .card-img-top {
      height: 220px;
      object-fit: cover;
      border-top-left-radius: .75rem;
      border-top-right-radius: .75rem;
      display: block;
      width: 100%;
    }
    .card {
      border-radius: .75rem;
      overflow: hidden;
      box-shadow: 0 6px 18px rgba(0,0,0,.08);
      background: #fff;
    }

    /* Lightbox overlay - center content */
    .my-lightbox {
      position: fixed;
      inset: 0;
      display: none;
      background: rgba(0,0,0,0.88);
      z-index: 1100;
      align-items: center;
      justify-content: center;
      padding: 1.25rem;
      overflow: auto;
    }
    .my-lightbox.active { display: flex; }

    /* The content area shrink-wraps to the frame */
    .my-lightbox .lightbox-content {
      display: inline-block;
      position: relative;
      max-width: 95vw;
      max-height: 95vh;
      width: auto;
      box-sizing: border-box;
    }

    .lightbox-frame {
      position: relative;
      display: block;
      max-width: 100%;
      max-height: 100%;
      box-sizing: border-box;
      border-radius: .35rem;
      overflow: hidden;     /* keeps caption/close inside the frame */
      background: #111;
    }

    /* Image: its max-height will be adjusted by JS to leave room for the caption */
    .lightbox-frame img {
      display: block;
      width: 100%;
      height: auto;
      max-width: 100%;
      max-height: calc(95vh - 72px); /* fallback before JS runs */
      object-fit: contain;
      background: transparent;
    }

    /* Caption overlay inside the frame (bottom) */
    .lightbox-caption {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      padding: 0.85rem 1rem;
      background: linear-gradient(0deg, rgba(0,0,0,0.6), rgba(0,0,0,0.25));
      color: #fff;
      font-size: 1rem;
      line-height: 1.25;
      display: block;
      box-sizing: border-box;
      min-height: 48px;
      max-height: 60vh;       /* will be adjusted by JS */
      overflow: visible;      /* will toggle to auto if needed */
      white-space: normal;    /* allow wrapping */
    }

    /* Close button positioned inside frame (top-right) */
    .lightbox-close {
      position: absolute;
      top: 10px;
      right: 10px;
      background: rgba(255,255,255,0.08);
      border: 1px solid rgba(255,255,255,0.12);
      color: #fff;
      padding: .35rem .6rem;
      border-radius: .35rem;
      cursor: pointer;
      font-weight: 600;
      z-index: 6;
      backdrop-filter: blur(2px);
    }
    .lightbox-close:hover { background: rgba(255,255,255,0.12); }

    /* Responsive tweaks */
    @media (max-width: 576px) {
      .card-img-top { height: 180px; }
      .lightbox-caption { font-size: 0.92rem; padding: .6rem .8rem; min-height: 56px; }
      .lightbox-frame img { max-height: calc(95vh - 88px); }
      .lightbox-close { top: 8px; right: 8px; padding: .3rem .5rem; font-size: .95rem; }
    }

    /* carousel spacing */
    .carousel-control-prev, .carousel-control-next { width: 4%; }
