/*
Theme Name: tiss-theme
*/


@font-face {
	font-family: gothic;
	src: url(../tiss-theme/assets/gothic/Fontspring-DEMO-allroundgothic-xlig.otf);
	font-weight: 200;
}
@font-face {
	font-family: gothic;
	src: url(../tiss-theme/assets/gothic/Fontspring-DEMO-allroundgothic-thick.otf);
	font-weight: 300;
}
@font-face {
	font-family: gothic;
	src: url(../tiss-theme/assets/gothic/Fontspring-DEMO-allroundgothic-text.otf);
	font-weight: 400;
}
@font-face {
	font-family: gothic;
	src: url(../tiss-theme/assets/gothic/Fontspring-DEMO-allroundgothic-semi.otf);
	font-weight: 500;
}
@font-face {
	font-family: gothic;
	src: url(../tiss-theme/assets/gothic/Fontspring-DEMO-allroundgothic-medium.otf);
	font-weight: 600;
}
@font-face {
	font-family: gothic;
	src: url(../tiss-theme/assets/gothic/Fontspring-DEMO-allroundgothic-bold.otf);
	font-weight: 700;
}

@font-face {
	font-family: general;
	src: url(../tiss-theme/assets/general/GeneralSans-Regular.otf);
	font-weight: 400;
}
@font-face {
	font-family: general;
	src: url(../tiss-theme/assets/general/GeneralSans-Medium.otf);
	font-weight: 500;
}
@font-face {
	font-family: general;
	src: url(../tiss-theme/assets/general/GeneralSans-Semibold.otf);
	font-weight: 600;
}
@font-face {
	font-family: general;
	src: url(../tiss-theme/assets/general/GeneralSans-Bold.otf);
	font-weight: 700;
}





h1,h2,h3,h4,h5,h6{
     font-family: "Poppins", sans-serif;
}
p, a{
   font-family: "Roboto", sans-serif;
    color: #000000de;  
    font-size: 16px;                                         
}
span{
    font-family: "Roboto", sans-serif;  
}
a:hover{
    text-decoration: none !important;
}


.container {
    padding: 0 6% !important;
    margin: 0 !important;
    max-width: 100% !important;
}

.error-404 img{
    width: 100%;
    height: 485px;
    object-fit: contain;
    margin: 106px 0;
}
/* width */
::-webkit-scrollbar {
  width: 4px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #1D1D1D;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #1b2cc2;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #07317b;
}
  html {
    scroll-behavior: smooth;
	overflow-x: hidden !important;
  }
body{
    background: #f1f5ff !important;
	overflow-x: hidden !important;
}


/* --- header styles --- */
.site-header{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background: linear-gradient(180deg, rgba(3,9,24,0.55) 0%, rgba(3,9,24,0.18) 70%, rgba(3,9,24,0) 100%);
	padding: 26px 0;
	z-index: 999;
	transition: background 0.3s ease, padding 0.3s ease, box-shadow 0.3s ease;
}

.site-header .container{
	padding-top: 0;
	padding-left: 4%;
	padding-right: 4%;
}

.site-header .row{
	row-gap: 12px;
}

body.f-nav .site-header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	padding: 14px 0;
}

.site-logo{
	max-height: 40px;
	transition: opacity 0.25s ease;
}

.site-logo:hover{
	opacity: 0.85;
}

.glass-nav{
	background: rgb(8 19 46 / 36%);
	border: 1px solid rgb(255 255 255 / 42%);
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 10px 28px rgba(0,0,0,0.28);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	border-radius: 999px;
	padding: 10px 8px;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link, #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link, #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {
    background: rgba(51, 51, 51, 0);
    color: #ffffff;
    font-weight: normal;
    text-decoration: none;
    border-color: #fff;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    line-height: 34px;
    height: 38px;
    padding: 0px 20px 0px 20px;
    vertical-align: baseline;
    width: auto;
    display: block;
    color: rgb(204 204 204 / 95%);
    text-transform: none;
    text-decoration: none;
    text-align: left;
    background: rgba(0, 0, 0, 0);
    border: 0;
    border-radius: 3px 3px 3px 3px;
    font-family: inherit;
    font-size: 13px;
    font-weight: normal;
    outline: none;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    line-height: 34px;
    height: 38px;
    padding: 0px 10px 0px 10px;
    vertical-align: baseline;
    width: auto;
    display: flex;
    align-items: center;
    color: rgb(204 204 204 / 95%);
    text-transform: none;
    text-decoration: none;
    text-align: left;
    background: rgba(0, 0, 0, 0);
    border: 0;
    border-radius: 3px 3px 3px 3px;
    font-family: inherit;
    font-size: 13px;
    font-weight: normal;
    outline: none;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link i,
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link span[class*="icon"],
#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link span[class*="fa-"] {
    margin-right: 8px;
	font-size: 23px;
	margin-top: 7px;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover {
    background: rgba(51, 51, 51, 0);
    color: #ffffff;
    font-weight: normal;
    text-decoration: none;
    border-color: #fff;
}

.main-nav-menu{
	list-style: none;
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
}

.main-nav-menu li a{
	display: inline-block;
	padding: 12px 22px;
	color: #eef2fa;
	font-family: "Poppins", sans-serif;
	font-size: 16px;
	font-weight: 400;
	text-decoration: none;
	border-radius: 999px;
	transition: background 0.25s ease, color 0.25s ease;
}

.main-nav-menu li a:hover,
.main-nav-menu li.current-menu-item > a{
	background: rgba(255,255,255,0.14);
	color: #ffffff !important;
}

.col-auto .btn-call,
.col-auto .btn-enquiry{
	display: inline-block;
}

.btn-call,
.btn-enquiry{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 15px;
	padding: 13px 28px;
	border-radius: 999px;
	text-decoration: none;
	margin-left: 10px;
	border: 1.5px solid transparent;
	cursor: pointer;
	transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease;
}

.btn-call{
	background: rgb(22 34 63 / 49%) !important;
	backdrop-filter: blur(6px) !important;
	-webkit-backdrop-filter: blur(6px) !important;
	color: #ffffff !important;
	border-color: rgba(255,255,255,0.4) !important;
	box-shadow: 0 6px 16px rgba(0,0,0,0.25) !important;
}

.btn-call:hover{
	background: rgba(35, 51, 88, 0.95) !important;
	color: #ffffff !important;
	border-color: rgba(255,255,255,0.7) !important;
	transform: translateY(-2px);
}

.btn-enquiry {
    background: #0f2967 !important;
    color: #fff !important;
    padding: 12px 20px !important;
    font-size: 16px !important;
    box-shadow: 0 8px 20px rgba(18, 59, 138, 0.5) !important;
    border-radius: 26px !important;
}

.btn-enquiry:hover{
	background: #2a5fe0 !important;
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(18, 59, 138, 0.6) !important;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
    background: #002a74;
    color: #ffffff;
}

#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover, #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus {
    background: #dcdcdc;
    font-weight: 500;
    color: #000000 !important;
}

/* header ends */


/* --- hero banner styles --- */
.hero-banner{
	position: relative;
	overflow: visible;
	padding: 220px 0 160px;
	isolation: isolate;
}

.hero-banner-media{
	position: absolute;
	inset: 0;
	overflow: hidden;
	z-index: 0;
	background: #060f24;
}

.hero-banner-video{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	animation: heroVideoZoom 22s ease-in-out infinite alternate;
}

@keyframes heroVideoZoom{
	from{ transform: scale(1); }
	to{ transform: scale(1.08); }
}

.hero-banner-overlay{
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(4,11,28,.55) 0%, rgba(6,16,38,.55) 45%, rgba(3,8,22,.88) 100%);
}

.hero-banner-media::after{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 460px;
	background: linear-gradient(180deg, rgba(241,245,255,0) 0%, rgba(241,245,255,.7) 65%, #f1f5ff 100%);
	pointer-events: none;
	z-index: 1;
}

.hero-banner-inner{
	position: relative;
	z-index: 2;
}

.hero-eyebrow{
	color: #f3f6fc;
	font-family: "Roboto", sans-serif;
	font-size: 17px;
	letter-spacing: .02em;
	margin-bottom: 16px;
	opacity: .92;
}

.hero-title {
    font-family: "Poppins", sans-serif;
    font-weight: 800;
    font-size: clamp(32px, 5.6vw, 65px);
    line-height: 1.14;
    margin-bottom: 22px;
    background: linear-gradient(180deg, #ffffff 0%, #ffffff 38%, #73bbff 68%, #6fb3f5 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: #ffffff;
}

.hero-desc{
	color: rgba(255,255,255,.86);
	font-size: 17px;
	line-height: 1.7;
	max-width: 700px;
	margin: 0 auto;
}

.hero-desc p{
	color: inherit;
	font-size: inherit;
	margin-bottom: 0;
}

.hero-search-wrap{
	margin-top: 54px;
	margin-bottom: -40px;
	position: relative;
	z-index: 5;
}

.hero-search-card{
	background: #fff;
	border-radius: 28px;
	padding: 12px 32px 32px;
	box-shadow: 0 4px 0 rgba(255,255,255,.05), 0 44px 80px rgba(2,8,24,.35);
	transition: transform .35s ease, box-shadow .35s ease;
	overflow: hidden;
}

.hero-field-row > [class*="col-"]{
	min-width: 0;
}

.hero-search-tabs{
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	gap: 4px;
	margin: 0 0 20px !important;
	padding: 14px 2px 0;
	border-bottom: 1px solid #eef0f5;
	position: relative;
	scrollbar-width: none;
}

.hero-search-tabs::-webkit-scrollbar{
	display: none;
}

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

.hero-search-tabs .nav-link{
	display: inline-flex;
	align-items: center;
	gap: 9px;
	white-space: nowrap;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #6b7280;
	font-family: "Poppins", sans-serif;
	font-weight: 500;
	font-size: 16px;
	padding: 12px 20px;
	transition: color .25s ease;
}

.hero-search-tabs .nav-link i{
	font-size: 14px;
	color: inherit;
	transition: color .25s ease, transform .25s ease;
}

.hero-search-tabs .nav-link:hover{
	color: #123b8a;
	background: transparent;
}

.hero-search-tabs .nav-link:hover i{
	transform: translateY(-2px);
}

.hero-search-tabs .nav-link.active{
	color: #0f172a;
	font-weight: 700;
	background: transparent;
}

.hero-search-tabs .nav-link.active i{
	color: #1a56db;
}

.hero-tab-indicator{
	position: absolute;
	bottom: -1px;
	height: 3px;
	background: #1657d0;
	border-radius: 3px 3px 0 0;
	transition: left .35s cubic-bezier(.65,0,.35,1), width .35s cubic-bezier(.65,0,.35,1);
}

/* hero-search-card: load-in assemble + light-sweep + per-tab slot-in (.hsc-anim-ready gate = JS) */
.hero-search-card.hsc-anim-ready{
	position: relative;
	opacity: 0;
	transform: translateY(42px) scale(.965);
	filter: blur(8px);
	transition: opacity .7s ease,
	            transform .8s cubic-bezier(.19, 1, .22, 1),
	            filter .6s ease;
	will-change: transform, opacity, filter;
}

.hero-search-card.hsc-anim-ready.hsc-in{
	opacity: 1;
	transform: translateY(0) scale(1);
	filter: blur(0);
	will-change: auto;
}

/* one-shot light sweep */
.hero-search-card.hsc-anim-ready::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 55%;
	height: 100%;
	z-index: 4;
	pointer-events: none;
	background: linear-gradient(115deg,
	            rgba(255, 255, 255, 0) 0%,
	            rgba(214, 231, 255, .5) 50%,
	            rgba(255, 255, 255, 0) 100%);
	transform: translateX(-130%) skewX(-12deg);
	opacity: 0;
}

.hero-search-card.hsc-sweep::before{
	animation: hsc-sweep 1s cubic-bezier(.4, 0, .2, 1);
}

@keyframes hsc-sweep{
	0%   { opacity: 0; transform: translateX(-130%) skewX(-12deg); }
	12%  { opacity: 1; }
	88%  { opacity: 1; }
	100% { opacity: 0; transform: translateX(230%) skewX(-12deg); }
}

/* tab buttons flip down (JS: per-tab stagger) */
.hero-search-card.hsc-anim-ready .hero-search-tabs .nav-link{
	transform-origin: top center;
	transform: perspective(600px) rotateX(-70deg);
	opacity: 0;
	transition: transform .5s cubic-bezier(.2, .7, .3, 1), opacity .4s ease;
}

.hero-search-card.hsc-anim-ready.hsc-in .hero-search-tabs .nav-link{
	transform: perspective(600px) rotateX(0);
	opacity: 1;
}

/* per-tab field slot-in (JS: .hsc-fields-in + row stagger) */
.hero-search-card.hsc-anim-ready .tab-pane .hero-field-row{
	opacity: 0;
	transform: translateX(22px);
	transition: opacity .45s ease, transform .5s cubic-bezier(.19, 1, .22, 1);
}

.hero-search-card.hsc-anim-ready .tab-pane.hsc-fields-in .hero-field-row{
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce){
	.hero-search-card.hsc-anim-ready,
	.hero-search-card.hsc-anim-ready .hero-search-tabs .nav-link,
	.hero-search-card.hsc-anim-ready .tab-pane .hero-field-row{
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
		transition: none !important;
	}

	.hero-search-card.hsc-anim-ready::before{
		display: none !important;
	}
}

.hero-field-row{
	align-items: flex-end;
	row-gap: 14px;
}

.hero-field{
	background: #f5f6f9;
	border: 1.5px solid #eceef3;
	border-radius: 12px;
	padding: 9px 16px 10px;
	transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.hero-field p {
	margin-bottom: 0 !important;
}

.hero-field:hover{
	border-color: #d7dbe6;
}

.hero-field:focus-within{
	background: #fff;
	border-color: #123b8a;
	box-shadow: 0 0 0 4px rgba(18,59,138,.10);
}

.hero-field label{
	display: block;
	font-family: "Poppins", sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: #4b5563;
	margin-bottom: 3px;
}

.hero-field-icon .hero-field-control{
	display: flex;
	align-items: center;
	gap: 10px;
}

.hero-field-icon .hero-field-control > p{
	display: contents;
}

.hero-field-icon .hero-field-control br{
	display: none;
}

.hero-field-icon .hero-field-control i{
	flex: 0 0 auto;
	font-size: 15px;
	color: #16224a;
}

.hero-field-icon .hero-field-control .wpcf7-form-control-wrap{
	flex: 1 1 auto;
	min-width: 0;
}

/* icon-right variant: value on the left, icon on the right (From/To ship icon) */
.hero-field-icon-right .hero-field-control{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.hero-field-icon-right .hero-field-control > p{
	display: contents;
}

.hero-field-icon-right .hero-field-control br{
	display: none;
}

.hero-field-icon-right .hero-field-control i{
	order: 2;
	flex: 0 0 auto;
	font-size: 15px;
	color: #16224a;
}

.hero-field-icon-right .hero-field-control .wpcf7-form-control-wrap{
	order: 1;
	flex: 1 1 auto;
	min-width: 0;
}

.hero-field-swap-group{
	position: relative;
	display: flex;
	gap: 14px;
}

.hero-field-swap-group > .hero-field{
	flex: 1 1 0;
	min-width: 0;
}

.hero-swap-btn{
	position: absolute;
	left: 50%;
	top: 37px;
	transform: translate(-50%, -50%);
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #fff;
	border: 1.5px solid #eceef3;
	box-shadow: 0 8px 18px rgba(4,12,32,.18);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #1a56db;
	padding: 0;
	cursor: pointer;
	transition: box-shadow .25s ease, background .25s ease;
	z-index: 2;
}

.hero-swap-btn:hover{
	background: #eef2fb;
	box-shadow: 0 10px 22px rgba(4,12,32,.24);
}

.hero-swap-btn i{
	font-size: 14px;
	transition: transform .3s ease;
}

.hero-swap-btn.is-swapped i{
	transform: rotate(180deg);
}

.hero-field-combo .hero-field-control{
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
}

.hero-field-combo .hero-field-control > p{
	display: contents;
}

.hero-field-combo .hero-field-control > br{
	display: none;
}

.hero-field-combo-part{
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 1 1 0;
	min-width: 0;
}

.hero-field-combo-part > p{
	display: contents;
}

.hero-field-combo-part br{
	display: none;
}

.hero-field-combo-part i{
	flex: 0 0 auto;
	font-size: 14px;
	color: #16224a;
}

.hero-field-combo-part .wpcf7-form-control-wrap{
	flex: 1 1 auto;
	min-width: 0;
}

.hero-field-combo-divider{
	flex: 0 0 auto;
	width: 1px;
	align-self: stretch;
	background: #d7dbe6;
	margin: 2px 14px;
}

.hero-field .wpcf7-form-control-wrap{
	display: block;
	width: auto;
}

.hero-field input.wpcf7-form-control,
.hero-field select.wpcf7-form-control{
	display: block;
	width: 100%;
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0;
	font-family: "Poppins", sans-serif;
	font-size: 15px;
	font-weight: 500;
	color: #1c2438;
	line-height: 1.4;
}

.hero-field input.wpcf7-form-control::placeholder{
	color: #a7adba;
	font-weight: 400;
}

.hero-field input.wpcf7-form-control:focus,
.hero-field select.wpcf7-form-control:focus{
	outline: none;
	box-shadow: none;
}

.hero-field select.wpcf7-form-control{
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding-right: 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%238a93a6' d='M6 8 0 0h12z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 11px 7px;
	cursor: pointer;
}

.hero-field .wpcf7-not-valid-tip{
	font-size: 11px;
	margin-top: 4px;
}

.hero-field-submit{
	background: none;
	border: none;
	padding: 0;
	display: flex;
	min-width: 0;
}

.hero-field-submit input.wpcf7-submit{
	min-width: 0;
}

.hero-field-submit input.wpcf7-submit{
	width: 100%;
	border: 0;
	border-radius: 16px;
	background: #0d1f4d;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: .01em;
	padding: 17px 20px;
	box-shadow: 0 10px 24px rgba(13,31,77,.4);
	transition: background .25s ease, transform .2s ease, box-shadow .25s ease;
	cursor: pointer;
}

.hero-field-submit input.wpcf7-submit:hover{
	background: #16306e;
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(13,31,77,.5);
}

.hero-field-submit input.wpcf7-submit:active{
	transform: translateY(0);
}

.wpcf7-spinner {
	display: none;
}
.hero-search-card .wpcf7-response-output{
	margin: 14px 0 0 !important;
	font-size: 13.5px;
	border-radius: 10px;
}

/* banner ends */


/* --- inside every listing section --- */
.listing-features{
	padding: 60px 0;
}

.listing-features-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(28px, 4vw, 44px);
	color: #0d1f4d;
	margin-bottom: 14px;
}

.listing-features-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 17px;
	line-height: 1.7;
	margin-bottom: 54px;
}

.listing-feature-card{
	position: relative;
	background: #e8f0fe;
	border: 1.5px dashed #a3bce3;
	border-radius: 22px;
	padding: 34px 30px 30px;
	height: 100%;
	transition: transform .35s ease, box-shadow .35s ease;
}

.listing-feature-icon{
	width: 86px;
	height: 86px;
	border-radius: 50%;
	background: linear-gradient(135deg, #c3d9f7 0%, #4d78c4 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 26px;
	overflow: hidden;
}

.listing-feature-icon img{
	width: 44px;
	height: 44px;
	object-fit: contain;
}

.listing-feature-title{
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: #123b8a;
	margin-bottom: 16px;
}

.listing-feature-list ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.listing-feature-list p,
.listing-feature-list li{
	list-style: none;
	font-family: "Poppins", sans-serif;
	font-size: 15px;
	color: #1c2438;
	padding: 12px 0;
	margin: 0;
	border-bottom: 1px dashed #c7d3ea;
}

.listing-feature-list p:last-child,
.listing-feature-list li:last-child{
	border-bottom: 0;
}

.listing-feature-btn{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	margin-top: 26px;
	background: #0d1f4d;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	padding: 16px 20px;
	border-radius: 999px;
	text-decoration: none;
	transition: background .25s ease, gap .25s ease, box-shadow .25s ease;
	box-shadow: 0 10px 22px rgba(13,31,77,.25);
}

.listing-feature-btn i{
	font-size: 13px;
	transition: transform .25s ease;
}

.listing-feature-btn:hover{
	background: #16306e;
	color: #fff;
	gap: 14px;
	box-shadow: 0 14px 28px rgba(13,31,77,.35);
}


/* listing-features: deal-from-deck entrance + pointer tilt (.lf-anim-ready gate = JS) */
.listing-feature-card {
	--lf-rx: 0deg;
	--lf-ry: 0deg;
	--lf-mx: 50%;
	--lf-my: 50%;
	--lf-glow: 0;
}

/* heading + copy: clip wipe, blur-to-sharp (JS: stagger) */
.listing-features.lf-anim-ready .js-lf-line {
	opacity: 0;
	clip-path: inset(0 100% 0 0);
	filter: blur(6px);
	transition: opacity .7s ease,
	            clip-path .8s cubic-bezier(.16, .84, .44, 1),
	            filter .7s ease;
}

.listing-features.lf-anim-ready .js-lf-line.is-in {
	opacity: 1;
	clip-path: inset(0 0 0 0);
	filter: blur(0);
}

/* cards deal out from a centre stack (JS: --lf-dx/--lf-rot, .is-in) */
.listing-features.lf-anim-ready .js-lf-card-col {
	opacity: 0;
	transform: translate3d(var(--lf-dx, 0), 26px, 0) rotate(var(--lf-rot, 0deg)) scale(.92);
	transition: opacity .6s ease, transform .7s cubic-bezier(.22, 1, .36, 1);
	will-change: transform, opacity;
}

.listing-features.lf-anim-ready .js-lf-card-col.is-in {
	opacity: 1;
	transform: translate3d(0, 0, 0) rotate(0) scale(1);
	will-change: auto;
}

/* icon pop after card lands */
.listing-features.lf-anim-ready .js-lf-card-col .listing-feature-icon {
	opacity: 0;
	transform: rotate(-35deg) scale(.6);
	transition: transform .6s cubic-bezier(.34, 1.56, .64, 1) .15s,
	            opacity .4s ease .15s;
}

.listing-features.lf-anim-ready .js-lf-card-col.is-in .listing-feature-icon {
	opacity: 1;
	transform: rotate(0) scale(1);
}

/* pointer tilt + sheen (JS: .lf-tilt-on, desktop) */
.listing-features.lf-tilt-on .listing-feature-card {
	transform: perspective(900px) rotateX(var(--lf-rx)) rotateY(var(--lf-ry));
	transition: transform .18s ease-out, box-shadow .35s ease;
}

.listing-features.lf-tilt-on .listing-feature-card::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
	opacity: var(--lf-glow);
	background: radial-gradient(180px circle at var(--lf-mx) var(--lf-my),
	            rgba(255, 255, 255, .38), rgba(255, 255, 255, 0) 60%);
	transition: opacity .3s ease;
}

@media (prefers-reduced-motion: reduce) {
	.listing-features.lf-anim-ready .js-lf-line,
	.listing-features.lf-anim-ready .js-lf-card-col,
	.listing-features.lf-anim-ready .js-lf-card-col .listing-feature-icon {
		opacity: 1 !important;
		transform: none !important;
		clip-path: none !important;
		filter: none !important;
		transition: none !important;
	}
}

/* inside every listing section ends */


/* --- visa services slider section --- */
.visa-slider-section{
	padding: 60px 0;
}

.visa-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.visa-slider-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3.4vw, 38px);
	line-height: 1.25;
	color: #0d1f4d;
	margin-bottom: 14px;
}

.visa-slider-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	max-width: 520px;
	margin-bottom: 0;
}

.visa-slider-wrap{
	position: relative;
	margin-top: 48px;
}

.visa-slider-track{
	display: flex;
	gap: 24px;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	padding: 4px 4px 6px;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.visa-slider-track::-webkit-scrollbar{
	display: none;
}

.visa-slide{
	flex: 0 0 calc((100% - 48px) / 3);
	max-width: calc((100% - 48px) / 3);
	scroll-snap-align: start;
}

.visa-card{
	background: #fff;
	border-radius: 18px;
	overflow: hidden;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: transform .3s ease, box-shadow .3s ease;
}

.visa-card-media{
	position: relative;
	height: 190px;
	overflow: hidden;
}

.visa-card-media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .5s ease;
}

.visa-card:hover .visa-card-media img{
	transform: scale(1.06);
}

.visa-card-tag{
	position: absolute;
	top: 14px;
	left: 14px;
	background: rgba(13,31,77,.55);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: 5px 12px;
	border-radius: 999px;
}

.visa-card-body{
	padding: 22px 22px 20px;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.visa-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 19px;
	color: #0d1f4d;
	margin-bottom: 10px;
}

.visa-card-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	flex: 1 1 auto;
}

.visa-card-desc p{
	margin-bottom: 0;
}

.visa-card-footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px dashed #e2e6ee;
}

.visa-card-processing{
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 13px;
	color: #4b5563;
}

.visa-card-enquire{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13.5px;
	color: #123b8a;
	text-decoration: underline;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
	transition: color .2s ease, gap .2s ease;
}

.visa-card-enquire i{
	font-size: 11px;
}

.visa-card-enquire:hover{
	color: #0d1f4d;
	gap: 9px;
}

.visa-slider-arrow{
	position: absolute;
	top: 150px;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	cursor: pointer;
	transition: background .25s ease, color .25s ease, box-shadow .25s ease, opacity .25s ease;
	z-index: 3;
}

.visa-slider-prev{
	left: -60px;
	background: #fff;
	border: 1.5px solid #d7dbe6;
	color: #0d1f4d;
}

.visa-slider-prev:hover{
	background: #f1f5ff;
}

.visa-slider-next{
	right: -60px;
	background: #0d1f4d;
	border: 1.5px solid #0d1f4d;
	color: #fff;
	box-shadow: 0 10px 22px rgba(13,31,77,.3);
}

.visa-slider-next:hover{
	background: #16306e;
}

.visa-slider-arrow.is-disabled{
	opacity: .35;
	cursor: default;
	pointer-events: none;
}

.visa-slider-progress{
	width: 220px;
	max-width: 100%;
	height: 4px;
	border-radius: 999px;
	background: #e5e9f2;
	margin: 36px auto 0;
	overflow: hidden;
}

.visa-slider-progress-bar{
	display: block;
	height: 100%;
	width: 0;
	min-width: 30px;
	background: #d98a1f;
	border-radius: 999px;
	transition: width .15s linear;
}

.visa-slider-section .js-visa-reveal{
	opacity: 0;
	transform: translateY(30px);
	transition: opacity .6s ease, transform .7s cubic-bezier(.22, .61, .36, 1);
}

.visa-slider-section .js-visa-reveal.is-revealed{
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce){
	.visa-slider-section .js-visa-reveal,
	.visa-slider-section .js-visa-reveal.is-revealed{
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* visa services slider section ends */


/* --- activities section --- */
.activities-section{
	background: #0a1730;
	padding: 90px 0 60px;
	overflow: hidden;
}

.activities-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.activities-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3.4vw, 40px);
	line-height: 1.2;
	color: #ffffff;
	margin-bottom: 14px;
}

.activities-desc{
	color: rgba(255,255,255,.65);
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 0;
}

.activities-head-row{
	margin-bottom: 40px;
}

.activities-arrows{
	display: inline-flex;
	gap: 12px;
}

.activities-arrow{
	width: 46px;
	height: 46px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	cursor: pointer;
	transition: background .25s ease, opacity .25s ease, transform .2s ease;
}

.activities-prev{
	background: transparent;
	border: 1.5px solid rgba(255,255,255,.3);
	color: #fff;
}

.activities-prev:hover{
	background: rgba(255,255,255,.08);
}

.activities-next{
	background: #fff;
	border: 1.5px solid #fff;
	color: #0d1f4d;
}

.activities-next:hover{
	background: #eef2fb;
}

.activities-arrow.is-disabled{
	opacity: .35;
	cursor: default;
	pointer-events: none;
}

.activities-track-wrap{
	width: 100%;
	padding: 4px 6% 40px;
}

.activities-slide{
	width: min(720px, 52%);
	height: auto;
}

.activity-card{
	position: relative;
	height: 400px;
	border-radius: 22px;
	overflow: hidden;
	background: #0a1730;
	transform: scale(.94);
	opacity: .5;
	z-index: 1;
	transition: transform .45s ease, opacity .45s ease;
}

.swiper-slide-active .activity-card{
	transform: scale(1);
	opacity: 1;
	z-index: 2;
}

.activity-card-media{
	position: absolute;
	inset: 0;
}

.activity-card-media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.activity-card-overlay{
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,.2) 0%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 45%, rgba(0,0,0,.82) 100%);
}

.activity-card-duration{
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 2;
	background: rgba(255,255,255,.28);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 13px;
	padding: 8px 16px;
	border-radius: 999px;
}

.activity-card-body{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 26px 30px 28px;
}

.activity-card-location{
	color: rgba(255,255,255,.85);
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	margin-bottom: 6px;
}

.activity-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(22px, 2.4vw, 32px);
	color: #fff;
	margin-bottom: 14px;
}

.activity-card-footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.activity-card-desc {
	color: rgba(255,255,255,.75);
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.5;
	margin-bottom: 0;
}

.activity-card-enquire{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
	transition: color .2s ease, gap .2s ease;
}

.activity-card-enquire i{
	font-size: 11px;
}

.activity-card-enquire:hover{
	color: #d98a1f;
	gap: 9px;
}

.activities-progress{
	width: 100%;
	height: 1px;
	border-radius: 0;
	background: rgba(255,255,255,.22);
	margin: 0;
	overflow: hidden;
}

.activities-progress-bar{
	display: block;
	height: 100%;
	width: 0;
	min-width: 70px;
	background: #d98a1f;
	border-radius: 0;
	transition: width .15s linear;
}

/* activities — JS-triggered layered entrance (stagger from JS, tuned per breakpoint) */
.activities-section .js-activities-reveal{
	opacity: 0;
	transform: translateY(30px);
	transition: opacity .6s ease, transform .75s cubic-bezier(.22, .61, .36, 1);
}

.activities-section .activities-slide.js-activities-reveal{
	transform: translateY(48px);
}

.activities-section .activities-slide.js-activities-reveal .activity-card-media{
	transform: scale(1.12);
	transition: transform .9s cubic-bezier(.22, .61, .36, 1);
}

.activities-section .js-activities-reveal.is-revealed,
.activities-section .activities-slide.js-activities-reveal.is-revealed,
.activities-section .activities-slide.js-activities-reveal.is-revealed .activity-card-media{
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce){
	.activities-section .js-activities-reveal,
	.activities-section .js-activities-reveal.is-revealed,
	.activities-section .activities-slide.js-activities-reveal .activity-card-media,
	.activities-section .activities-slide.js-activities-reveal.is-revealed .activity-card-media{
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* activities section ends */


/* --- holiday packages section --- */
.holiday-section{
	background: #0a1730;
	padding: 60px 0;
	overflow: hidden;
}

.holiday-intro-card{
	position: relative;
	height: 544px;
	border-radius: 24px;
	overflow: hidden;
	background-color: #0a1730;
	background-image: url('../tiss-theme/assets/img/holiday-img.png');
	background-size: cover;
	background-position: center;
}

.holiday-intro-overlay{
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(4,10,28,0) 28%, rgba(4,10,28,.55) 62%, rgba(4,10,28,.92) 100%);
}

.holiday-intro-body{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 34px 30px 36px;
}

.holiday-intro-logo{
	height: 34px;
	width: auto;
	margin-bottom: 22px;
	display: block;
}

.holiday-intro-title{
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 32px;
	line-height: 1.2;
	color: #fff;
	margin-bottom: 14px;
}

.holiday-intro-title span{
	font-weight: 300;
	color: rgba(255,255,255,.65);
}

.holiday-intro-desc{
	color: rgba(255,255,255,.7);
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	max-width: 340px;
	margin-bottom: 18px;
}

.holiday-intro-more{
	display: inline-block;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 14px;
	text-decoration: underline;
	text-underline-offset: 6px;
	transition: color .2s ease;
}

.holiday-intro-more:hover{
	color: #d98a1f;
}

.holiday-packages-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3vw, 36px);
	color: #fff;
	margin-bottom: 36px;
}

.holiday-packages-wrap{
	position: relative;
}

.holiday-marquee{
	overflow: hidden;
	width: 100%;
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
	mask-image: linear-gradient(90deg, transparent 0, #000 40px, #000 calc(100% - 40px), transparent 100%);
}

.holiday-marquee-track{
	display: flex;
	gap: 24px;
	width: max-content;
	animation: holidayMarquee 30s linear infinite;
}

.holiday-marquee:hover .holiday-marquee-track{
	animation-play-state: paused;
}

@keyframes holidayMarquee{
	from{ transform: translateX(0); }
	to{ transform: translateX(-50%); }
}

.holiday-package-slide{
	flex: 0 0 auto;
	width: 240px;
}

.holiday-package-card{
	position: relative;
	display: block;
	height: 400px;
	border-radius: 20px;
	overflow: hidden;
}

.holiday-package-media{
	position: absolute;
	inset: 0;
}

.holiday-package-media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.holiday-package-overlay{
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0) 52%, rgba(0,0,0,.78) 100%);
}

.holiday-package-body{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 20px 20px 22px;
}

.holiday-package-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 20px;
	color: #fff;
	margin-bottom: 2px;
}

.holiday-package-desc {
	color: rgba(255,255,255,.7);
	font-family: "Roboto", sans-serif;
	font-size: 14px;
	margin-bottom: 0;
}

/* holiday section — viewport-enter reveal, then marquee starts */
.holiday-section .js-holiday-reveal{
	transition: opacity .6s ease, transform .7s cubic-bezier(.22, .61, .36, 1), clip-path .8s cubic-bezier(.22, .61, .36, 1);
}

.holiday-section .js-holiday-reveal:not(.is-revealed){
	opacity: 0;
}

.holiday-section .holiday-intro-card.js-holiday-reveal:not(.is-revealed){
	clip-path: inset(0 100% 0 0);
	transform: scale(1.04);
}

.holiday-section .holiday-intro-logo.js-holiday-reveal:not(.is-revealed),
.holiday-section .holiday-intro-title.js-holiday-reveal:not(.is-revealed),
.holiday-section .holiday-intro-desc.js-holiday-reveal:not(.is-revealed),
.holiday-section .holiday-intro-more.js-holiday-reveal:not(.is-revealed){
	transform: translateX(-28px);
}

.holiday-section .holiday-packages-title.js-holiday-reveal:not(.is-revealed){
	clip-path: inset(0 0 100% 0);
	transform: translateY(12px);
}

.holiday-section .holiday-package-slide.js-holiday-reveal:not(.is-revealed){
	transform: perspective(1000px) rotateX(-38deg) translateY(46px);
	transform-origin: 50% 100%;
}

.holiday-marquee-track{
	animation-play-state: paused;
}

.holiday-section.is-revealed .holiday-marquee:not(:hover) .holiday-marquee-track{
	animation-play-state: running;
}

@media (prefers-reduced-motion: reduce){
	.holiday-section .js-holiday-reveal:not(.is-revealed){
		opacity: 1;
		transform: none;
		clip-path: none;
		transition: none;
	}
	.holiday-marquee-track{
		animation: none;
	}
}

/* holiday packages section ends */


/* --- hotel listing section --- */
.hotel-section{
	padding: 90px 0;
}

.hotel-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.hotel-section-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(28px, 3.4vw, 40px);
	color: #0d1f4d;
	margin-bottom: 14px;
}

.hotel-section-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	max-width: 520px;
	margin-bottom: 0;
}

.hotel-card-row{
	margin-top: 44px;
	row-gap: 24px;
}

.hotel-card{
	position: relative;
	background: #0d1f4d;
	border-radius: 20px;
	overflow: hidden;
	min-height: 224px;
	height: 100%;
}

.hotel-card-media-col,
.hotel-card-body-col{
	padding: 0;
}

.hotel-card-media{
	height: 100%;
	min-height: 224px;
}

.hotel-card-media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.hotel-card-body{
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	padding: 22px 26px;
}

.hotel-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 19px;
	line-height: 1.25;
	color: #fff;
	margin-bottom: 2px;
}

.hotel-card-location{
	color: rgba(255,255,255,.6);
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
	margin-bottom: 8px;
}

.hotel-card-rating{
	color: #ffffff;
	font-size: 12px;
	margin-bottom: 16px;
}

.hotel-card-rating i{
	margin-right: 3px;
}

.hotel-card-btn{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #4b4a72;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 13.5px;
	padding: 10px 18px;
	border-radius: 999px;
	text-decoration: none;
	transition: background .25s ease, transform .2s ease, gap .2s ease;
}

.hotel-card-btn i{
	font-size: 11px;
	transition: transform .2s ease;
}

.hotel-card-btn:hover{
	background: #5c5a8a;
	color: #fff;
	transform: translateY(-2px);
	gap: 11px;
}


/* hotel section — pop-in reveal on viewport enter */
.hotel-section .js-hotel-reveal{
	transition: opacity .5s ease, transform .7s cubic-bezier(.34, 1.4, .5, 1);
}

.hotel-section .js-hotel-reveal:not(.is-revealed){
	opacity: 0;
	transform: translateY(26px);
}

.hotel-section .hotel-card.js-hotel-reveal:not(.is-revealed){
	transform: translateY(46px) scale(.9) rotate(var(--hotel-lean, 0deg));
}

@media (prefers-reduced-motion: reduce){
	.hotel-section .js-hotel-reveal:not(.is-revealed){
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* hotel listing section ends */


/* --- about section --- */
.about-section{
	padding: 60px 0;
}

.about-image {
    height: 500px;
    border-radius: 15px;
    background-color: #e9edf5;
    background-size: cover;
    background-position: center;
}

.about-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.about-content h2{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3vw, 36px);
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 20px;
}

.about-content p{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.75;
	max-width: 560px;
	margin-bottom: 28px;
}

.about-btn{
	display: inline-block;
	background: #fff;
	border: 1.5px solid #e2e6ee;
	color: #0d1f4d;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14.5px;
	padding: 14px 26px;
	border-radius: 999px;
	text-decoration: none;
	transition: background .25s ease, border-color .25s ease, transform .2s ease;
}

.about-btn:hover{
	background: #f6f8fc;
	border-color: #c7d0e0;
	color: #0d1f4d;
	transform: translateY(-2px);
}

/* about section — viewport-enter reveal: image swings in from its left edge, copy slides in from the right */
.about-section .js-about-reveal{
	transition: opacity .6s ease, transform .8s cubic-bezier(.22, .61, .36, 1);
}

.about-section .js-about-reveal:not(.is-revealed){
	opacity: 0;
	transform: translateX(28px);
}

.about-section .about-image.js-about-reveal:not(.is-revealed){
	transform: perspective(1200px) rotateY(12deg);
	transform-origin: left center;
}

@media (prefers-reduced-motion: reduce){
	.about-section .js-about-reveal:not(.is-revealed){
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* about section ends */


/* --- travel steps section --- */
.travel-steps-section {
    position: relative;
    overflow: hidden;
    padding: 130px 0 30px;
}

.travel-steps-media{
	position: absolute;
	inset: 0;
	z-index: 0;
	background-color: #2a1c12;
	background-size: cover;
	background-position: center;
}

.travel-steps-overlay{
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(20,10,5,.6) 0%, rgba(20,10,5,.25) 45%, rgba(20,10,5,.05) 100%);
}

.travel-steps-inner{
	position: relative;
	z-index: 2;
}

.travel-steps-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(32px, 3.4vw, 44px);
	line-height: 1.15;
	color: #fff;
	margin-bottom: 18px;
}

.travel-steps-desc{
	color: rgba(255,255,255,.85);
	font-family: "Roboto", sans-serif;
	font-size: 15.5px;
	line-height: 1.65;
	max-width: 280px;
	margin-bottom: 0;
}

.travel-steps-strip{
	background: rgba(60,35,15,.4);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	border: 1px solid rgba(255,255,255,.25);
	margin-top: 40px;
}

.travel-steps-strip .travel-steps-row{
	margin-left: 0;
	margin-right: 0;
}

.travel-steps-strip .travel-step{
	padding: 30px 24px;
	display: flex;
	flex-direction: column;
	border-right: 1px solid rgba(255,255,255,.25);
}

.travel-step:last-child{
	border-right: 0;
}

.travel-step-label{
	display: block;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 12px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: rgba(255,255,255,.7);
	margin-bottom: 10px;
}

.travel-step-number{
	display: block;
	font-family: "Poppins", sans-serif;
	font-weight: 500;
	font-size: 34px;
	color: #fff;
}

.travel-step-text{
	display: block;
	font-family: "Poppins", sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.3;
	color: #fff;
	margin-top: 22px;
	max-width: 120px;
}

.travel-steps-section .js-steps-reveal{
	opacity: 0;
	transform: translateY(30px);
	transition: opacity .6s ease, transform .6s cubic-bezier(.22, .61, .36, 1);
}

.travel-steps-section .js-steps-reveal.is-revealed{
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce){
	.travel-steps-section .js-steps-reveal,
	.travel-steps-section .js-steps-reveal.is-revealed{
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* travel steps section ends */


/* --- cta banner section --- */
.cta-banner-section{
	padding: 60px 0;
}

.cta-banner{
	background: linear-gradient(135deg, #0f2a63 0%, #0a1d47 100%);
	border-radius: 22px;
	padding: 54px 40px;
	text-align: center;
	box-shadow: 0 30px 60px rgba(10,22,58,.25);
}

.cta-banner-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3vw, 34px);
	color: #fff;
	margin-bottom: 14px;
}

.cta-banner-desc{
	color: rgba(255,255,255,.75);
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.6;
	max-width: 460px;
	margin: 0 auto 28px;
}

.cta-banner-btn{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #fff;
	color: #12203f;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 15px;
	padding: 15px 28px;
	border-radius: 999px;
	text-decoration: none;
	transition: background .25s ease, transform .2s ease, gap .2s ease, box-shadow .25s ease;
}

.cta-banner-btn i{
	font-size: 13px;
	transition: transform .2s ease;
}

.cta-banner-btn:hover{
	background: #f1f5ff;
	color: #12203f;
	transform: translateY(-2px);
	gap: 13px;
	box-shadow: 0 10px 22px rgba(0,0,0,.18);
}

/* cta banner section ends */


/* --- travel notes section --- */
.travel-notes-section {
	padding: 60px 0;
	background: #fff;
	overflow: hidden;
}

.travel-notes-head {
	margin-bottom: 0;
}

.travel-notes-head-row {
	margin-bottom: 40px;
}

.travel-notes-arrows {
	display: inline-flex;
	gap: 12px;
	padding-bottom: 8px;
}

.travel-notes-arrow {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	cursor: pointer;
	transition: background .25s ease, opacity .25s ease, transform .2s ease, border-color .25s ease;
}

.travel-notes-prev {
	background: transparent;
	border: 1.5px solid rgba(13, 31, 77, .2);
	color: #0d1f4d;
}

.travel-notes-prev:hover {
	border-color: #0d1f4d;
	background: rgba(13, 31, 77, .05);
}

.travel-notes-next {
	background: #0d1f4d;
	border: 1.5px solid #0d1f4d;
	color: #fff;
}

.travel-notes-next:hover {
	background: #11326c;
	border-color: #11326c;
}

.travel-notes-arrow.is-disabled {
	opacity: .35;
	cursor: default;
	pointer-events: none;
}

.travel-notes-eyebrow {
	display: block;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #d79f43;
	margin-bottom: 12px;
}

.travel-notes-title {
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(32px, 3.4vw, 44px);
	color: #0d1f4d;
	margin-bottom: 16px;
	line-height: 1.15;
}

.travel-notes-desc {
	font-family: "Roboto", sans-serif;
	color: #666;
	font-size: 15.5px;
	line-height: 1.65;
	max-width: 480px;
	margin-bottom: 0;
}

.travel-notes-track-wrap {
	width: 100%;
	padding: 4px max(15px, calc((92vw - 1140px) / 2)) 40px;
}

/* travel notes — viewport-enter reveal */
.travel-notes-section .js-notes-reveal:not(.is-revealed){
	opacity: 0;
}

.travel-notes-section .travel-notes-head.js-notes-reveal{
	transition: opacity .6s ease, transform .8s cubic-bezier(.22, .61, .36, 1);
}
.travel-notes-section .travel-notes-head.js-notes-reveal:not(.is-revealed){
	transform: perspective(1100px) rotateX(-18deg) translateY(-6px);
	transform-origin: top center;
}

.travel-notes-section .travel-notes-arrows.js-notes-reveal{
	transition: opacity .4s ease, transform .7s cubic-bezier(.34, 1.56, .64, 1);
}
.travel-notes-section .travel-notes-arrows.js-notes-reveal:not(.is-revealed){
	transform: scale(.55) rotate(-14deg);
}

.travel-notes-section .travel-notes-track-wrap.js-notes-reveal{
	transition: opacity .7s ease, transform .9s cubic-bezier(.22, .61, .36, 1);
}
.travel-notes-section .travel-notes-track-wrap.js-notes-reveal:not(.is-revealed){
	transform: translateX(70px);
}

@media (prefers-reduced-motion: reduce){
	.travel-notes-section .js-notes-reveal:not(.is-revealed){
		opacity: 1;
		transform: none;
		transition: none;
	}
}

/* The magic for the expanding left card */
.travel-notes-slide {
	width: 320px;
	height: 420px;
	transition: width 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.travel-notes-slide.swiper-slide-active {
	width: 520px;
}

.travel-notes-card {
	width: 100%;
	height: 100%;
	border-radius: 16px;
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.travel-notes-slide.no-image .travel-notes-card {
	background: #11326c;
	justify-content: center;
}

.travel-notes-card-media {
	position: absolute;
	inset: 0;
	z-index: 1;
}

.travel-notes-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.travel-notes-card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 40%, rgba(0,0,0,0.85) 100%);
}

.travel-notes-icon-placeholder {
	position: absolute;
	top: 32px;
	left: 32px;
	width: 44px;
	height: 44px;
	background: rgba(255,255,255,0.1);
	border-radius: 12px;
}

.travel-notes-card-body {
	position: relative;
	z-index: 2;
	padding: 32px;
	color: #fff;
}

.travel-notes-badge {
	display: inline-block;
	background: rgba(255,255,255,0.25);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	padding: 6px 14px;
	border-radius: 30px;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 10.5px;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: #fff;
	margin-bottom: 20px;
}

.travel-notes-card-title {
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: clamp(20px, 2vw, 24px);
	line-height: 1.3;
	color: #fff;
	margin-bottom: 12px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.travel-notes-card-desc p{
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	color: rgba(255,255,255,.85);
	margin-bottom: 0;
}

.travel-notes-slide.no-image .travel-notes-card-body {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-top: 50px;
}

.travel-notes-more-link {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin-top: 30px;
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 15px;
	color: #fff;
	text-decoration: none;
	transition: color 0.3s;
}

.travel-notes-more-link i {
	width: 32px;
	height: 32px;
	background: rgba(255,255,255,0.15);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	transition: background 0.3s;
}

.travel-notes-more-link:hover {
	color: rgba(255,255,255,.8);
	text-decoration: none;
}

.travel-notes-more-link:hover i {
	background: rgba(255,255,255,0.25);
}

/* travel notes section ends */


/* --- faq section --- */
.faq-section {
	padding: 60px 0;
	background: #f5f7fb;
}

.faq-eyebrow {
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.faq-title {
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3.4vw, 38px);
	line-height: 1.25;
	color: #0d1f4d;
	margin-bottom: 0;
}

.faq-list {
	margin-top: 48px;
}

.faq-item {
	background: #eaedf4;
	border-radius: 24px;
	margin-bottom: 16px;
	overflow: hidden;
	transition: background .3s ease, box-shadow .3s ease;
}

.faq-item.is-open {
	background: #fff;
	box-shadow: 0 20px 40px rgba(13, 31, 77, .1);
}

.faq-question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	width: 100%;
	padding: 22px 28px;
	background: transparent;
	border: 0;
	text-align: left;
	cursor: pointer;
}

.faq-question-text {
	font-family: "Poppins", sans-serif;
	font-weight: 600;
	font-size: 16.5px;
	line-height: 1.5;
	color: #16213e;
}

.faq-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	color: #0d1f4d;
	font-size: 14px;
	box-shadow: 0 4px 10px rgba(13, 31, 77, .08);
	transition: transform .35s cubic-bezier(.4,0,.2,1), background .3s ease, color .3s ease;
}

.faq-item.is-open .faq-icon {
	background: #0d1f4d;
	color: #fff;
	transform: rotate(135deg);
}

.faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height .4s cubic-bezier(.4,0,.2,1);
}

.faq-answer-inner {
	padding: 0 28px 24px;
}

.faq-answer-inner p {
	font-family: "Roboto", sans-serif;
	font-size: 15px;
	line-height: 1.75;
	color: #6b7280;
	margin-bottom: 0;
}

.faq-answer-inner p + p {
	margin-top: 12px;
}

/* faq section ends */


/* --- enquiry form section --- */
.enquiry-section {
	padding: 60px 0;
}

.enquiry-card {
	background: #fff;
	border-radius: 32px;
	overflow: hidden;
	box-shadow: 0 40px 90px rgba(13, 31, 77, .14);
}

.enquiry-card .row {
	align-items: stretch;
}

/* --- enquiry: left media panel --- */
.enquiry-media-col {
	display: flex;
}

.enquiry-media {
	position: relative;
	flex: 1 1 auto;
	width: 100%;
	min-height: 560px;
	background-size: auto;
	background-position: center;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 48px;
	border-radius: 32px 170px 0 32px;
}

.enquiry-media-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(6,13,32,0) 0%, rgba(6,13,32,.1) 40%, rgba(6,13,32,.8) 100%);
	z-index: 1;
	border-radius: 32px 170px 0 32px;
}

.enquiry-media-content {
	position: relative;
	z-index: 2;
}

.enquiry-media-title {
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(24px, 2.4vw, 32px);
	line-height: 1.32;
	color: #fff;
	margin-bottom: 14px;
	max-width: 420px;
}

.enquiry-media-desc {
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	color: rgba(255,255,255,.82);
	max-width: 380px;
	margin-bottom: 32px;
}

.enquiry-media-contacts {
	display: flex;
	flex-wrap: wrap;
	column-gap: 28px;
	row-gap: 18px;
}

.enquiry-contact-item {
	display: flex;
	align-items: center;
	gap: 12px;
}

.enquiry-contact-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255,255,255,.95);
	color: #d98a1f;
	font-size: 16px;
}

.enquiry-contact-text {
	display: flex;
	flex-direction: column;
}

.enquiry-contact-text strong {
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14px;
	color: #fff;
	margin-bottom: 2px;
}

.enquiry-contact-text a {
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
	color: rgba(255,255,255,.78);
	text-decoration: none;
	transition: color .25s ease;
}

.enquiry-contact-text a:hover {
	color: #fff;
	text-decoration: underline;
}

/* --- enquiry: right form panel --- */
.enquiry-form-wrap {
	padding: 40px;
}

.enquiry-field-row {
	row-gap: 22px;
}

.enquiry-field p {
	margin: 0;
}

.enquiry-field br {
	display: none;
}

.enquiry-field label {
	display: block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #6b7280;
	margin-bottom: 8px;
}

.enquiry-field .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.enquiry-field input.wpcf7-form-control,
.enquiry-field select.wpcf7-form-control,
.enquiry-field textarea.wpcf7-form-control {
	display: block;
	width: 100%;
	border: 1.5px solid #e5e8f0;
	border-radius: 12px;
	padding: 14px 16px;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	height: 58px;
	color: #1c2438;
	background: #fff;
	transition: border-color .25s ease, box-shadow .25s ease;
}

.enquiry-field textarea.wpcf7-form-control {
	min-height: 160px;
	resize: vertical;
}

.enquiry-field input.wpcf7-form-control::placeholder,
.enquiry-field textarea.wpcf7-form-control::placeholder {
	color: #a7adba;
}

.enquiry-field input.wpcf7-form-control:focus,
.enquiry-field select.wpcf7-form-control:focus,
.enquiry-field textarea.wpcf7-form-control:focus {
	outline: none;
	border-color: #0d1f4d;
	box-shadow: 0 0 0 4px rgba(13,31,77,.08);
}

.enquiry-field select.wpcf7-form-control {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	padding-right: 36px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%238a93a6' d='M6 8 0 0h12z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 11px 7px;
	cursor: pointer;
}

.enquiry-field .wpcf7-not-valid-tip {
	font-size: 11.5px;
	margin-top: 5px;
}

.enquiry-field-submit {
	margin-top: 4px;
}

.enquiry-field-submit input.wpcf7-submit {
	width: 100%;
	border: 0;
	border-radius: 999px;
	background: #0d1f4d;
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 15.5px;
	padding: 17px 20px;
	box-shadow: 0 10px 24px rgba(13,31,77,.4);
	transition: background .25s ease, transform .2s ease, box-shadow .25s ease;
	cursor: pointer;
}

.enquiry-field-submit input.wpcf7-submit:hover {
	background: #16306e;
	transform: translateY(-2px);
	box-shadow: 0 14px 28px rgba(13,31,77,.5);
}

.enquiry-field-submit input.wpcf7-submit:active {
	transform: translateY(0);
}

.enquiry-field-submit .wpcf7-spinner {
	display: none;
}

.enquiry-form-wrap .wpcf7-response-output {
	margin: 18px 0 0 !important;
	border-radius: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
}

/* enquiry: scroll-in unfold + cursor spotlight/parallax + field cascade (.enq-anim-ready gate = JS) */
.enquiry-section {
	--enq-mx: 50%;
	--enq-my: 0%;
	--enq-spot: 0;
	--enq-par-x: 0px;
	--enq-par-y: 0px;
}

.js-enquiry-card {
	position: relative;
}

.enquiry-section.enq-anim-ready .js-enquiry-card {
	opacity: 0;
	transform: perspective(1500px) rotateX(7deg) translateY(48px);
	transform-origin: 50% 100%;
	transition: opacity .9s cubic-bezier(.16, .84, .44, 1),
	            transform .9s cubic-bezier(.16, .84, .44, 1);
	will-change: transform, opacity;
}

.enquiry-section.enq-anim-ready .js-enquiry-card.is-revealed {
	opacity: 1;
	transform: perspective(1500px) rotateX(0) translateY(0);
	will-change: auto;
}

/* cursor spotlight (screen blend) */
.enquiry-section.enq-anim-ready .js-enquiry-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 3;
	border-radius: inherit;
	pointer-events: none;
	opacity: var(--enq-spot);
	background: radial-gradient(240px circle at var(--enq-mx) var(--enq-my),
	            rgba(217, 138, 31, .22), rgba(217, 138, 31, 0) 62%);
	mix-blend-mode: screen;
	transition: opacity .45s ease;
}

/* navy curtain wipes off the photo */
.enquiry-section.enq-anim-ready .js-enquiry-media {
	position: relative;
	overflow: hidden;
}

.enquiry-section.enq-anim-ready .js-enquiry-media::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 5;
	background: #0d1f4d;
	transform: translateX(0);
	will-change: transform;
}

.enquiry-section.enq-anim-ready .js-enquiry-card.is-revealed .js-enquiry-media::before {
	transform: translateX(101%);
	transition: transform .85s cubic-bezier(.7, 0, .2, 1) .2s;
	will-change: auto;
}

/* left-panel lines rise (JS: stagger) */
.enquiry-section.enq-anim-ready .js-enquiry-line {
	opacity: 0;
	transform: translateY(26px);
	transition: opacity .7s ease, transform .7s cubic-bezier(.16, .84, .44, 1);
}

.enquiry-section.enq-anim-ready .js-enquiry-card.is-revealed .js-enquiry-line {
	opacity: 1;
	transform: none;
}

/* text-block micro-parallax */
.enquiry-section.enq-anim-ready .js-enquiry-card.is-revealed .enquiry-media-content {
	transform: translate3d(var(--enq-par-x), var(--enq-par-y), 0);
	transition: transform .4s ease-out;
}

/* form fields cascade from left (JS: stagger) */
.enquiry-section.enq-anim-ready .enquiry-form-wrap .enquiry-field,
.enquiry-section.enq-anim-ready .enquiry-form-wrap .enquiry-field-submit {
	opacity: 0;
	transform: translateX(-18px);
	transition: opacity .55s ease, transform .55s cubic-bezier(.16, .84, .44, 1);
}

.enquiry-section.enq-anim-ready.is-fields-in .enquiry-form-wrap .enquiry-field,
.enquiry-section.enq-anim-ready.is-fields-in .enquiry-form-wrap .enquiry-field-submit {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	.enquiry-section.enq-anim-ready .js-enquiry-card,
	.enquiry-section.enq-anim-ready .js-enquiry-line,
	.enquiry-section.enq-anim-ready .enquiry-form-wrap .enquiry-field,
	.enquiry-section.enq-anim-ready .enquiry-form-wrap .enquiry-field-submit,
	.enquiry-section.enq-anim-ready .js-enquiry-card.is-revealed .enquiry-media-content {
		transition: none !important;
		transform: none !important;
		opacity: 1 !important;
	}

	.enquiry-section.enq-anim-ready .js-enquiry-media::before,
	.enquiry-section.enq-anim-ready .js-enquiry-card::after {
		display: none !important;
	}
}

/* enquiry form section ends */


/* --- site footer (general_info post loop) --- */

.footer{
	background: #0c1c3f;
	font-family: "Poppins", sans-serif;
	padding-top: 60px;
}

.footer-main{
	padding: 70px 0 40px;
}

.footer-brand{
	max-width: 340px;
}

.footer-logo{
	max-height: 56px;
	margin-bottom: 18px;
}

.footer-desc{
	color: #9aa5bf;
	font-size: 15px;
	line-height: 1.6;
	margin-bottom: 26px;
}

.footer-social{
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 30px;
}

.footer-social a{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,0.18);
	color: #b7c0d6;
	font-size: 16px;
	text-decoration: none;
	transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.footer-social a:hover{
	background: #d98a1f;
	border-color: #d98a1f;
	color: #ffffff;
}

/* floating WhatsApp button (rendered in footer.php, fixed sitewide) */
.floating-whatsapp{
	position: fixed;
	right: 20px;
	bottom: 22px;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #25d366;
	color: #ffffff;
	font-size: 30px;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 6px 18px rgba(0,0,0,0.28);
	transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
	animation: floating-whatsapp-pulse 2.4s ease-in-out infinite;
}

.floating-whatsapp:hover,
.floating-whatsapp:focus{
	background: #1ebe5b;
	color: #ffffff;
	transform: scale(1.08);
	box-shadow: 0 10px 26px rgba(0,0,0,0.35);
}

@keyframes floating-whatsapp-pulse{
	0%,100%{ box-shadow: 0 6px 18px rgba(0,0,0,0.28), 0 0 0 0 rgba(37,211,102,0.45); }
	50%    { box-shadow: 0 6px 18px rgba(0,0,0,0.28), 0 0 0 14px rgba(37,211,102,0); }
}

/* Floating Call */
.floating-call {
	position: fixed;
	right: 20px;
	bottom: 95px;
	width: 56px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #0d6efd;
	color: #fff;
	border-radius: 50%;
	text-decoration: none;
	font-size: 20px;
	box-shadow: 0 5px 18px rgba(13, 110, 253, 0.35);
	z-index: 9998;
	transition: all 0.3s ease;
}
.floating-call:hover {
	background: #0b5ed7;
	color: #fff;
	box-shadow: 0 8px 22px rgba(13, 110, 253, 0.45);
}

.footer-col-title{
	color: #ffffff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	margin-bottom: 22px;
}

.footer-nav{
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-nav li + li{
	margin-top: 16px;
}

.footer-nav a{
	color: #b7c0d6;
	font-size: 15px;
	text-decoration: none;
	transition: color 0.2s ease;
}

.footer-nav a:hover,
.footer-col .menu a:hover,
.footer-col ul:not(.footer-nav) a:hover {
	color: #ffffff;
}

/* Fallback for standard WP menus in footer without .footer-nav class */
.footer-col .menu,
.footer-col ul:not(.footer-nav) {
	list-style: none;
	margin: 0;
	padding: 0;
}
.footer-col .menu li,
.footer-col ul:not(.footer-nav) li {
	display: block;
}
.footer-col .menu li + li,
.footer-col ul:not(.footer-nav) li + li {
	margin-top: 16px;
}
.footer-col .menu a,
.footer-col ul:not(.footer-nav) a {
	color: #b7c0d6;
	font-size: 15px;
	text-decoration: none;
	transition: color 0.2s ease;
}

.footer-contact-item{
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.footer-contact-item + .footer-contact-item{
	margin-top: 20px;
}

.footer-contact-icon{
	flex-shrink: 0;
	color: #d98a1f;
	font-size: 17px;
	line-height: 1.6;
}

.footer-contact-text{
	color: #b7c0d6;
	font-size: 15px;
	line-height: 1.6;
}

.footer-contact-text a{
	color: #b7c0d6;
	text-decoration: none;
	transition: color 0.2s ease;
}

.footer-contact-text a:hover{
	color: #ffffff;
}

.footer-bottom{
	border-top: 1px solid rgba(255,255,255,0.12);
}

.footer-bottom-inner{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 22px 0;
}

.footer-copy,
.footer-credit{
	color: #8b95ad;
	font-size: 14px;
	margin: 0;
}

.footer-credit a{
	color: #8b95ad;
	text-decoration: none;
	font-size: 14px;
}

.footer-credit a:hover{
	color: #ffffff;
}

/* site footer ends */



/* ABOUT PAGE */

/* inner about banner section starts */

.inner-about-banner-wrap {
	position: relative;
	overflow: hidden;
	min-height: 650px;
	height: 100dvh;
	max-height: 780px;
	background: #0a1730;
	isolation: isolate;
	display: flex;
	align-items: flex-end;
}

.inner-about-banner-media{
	position: absolute;
	inset: 0;
	z-index: 0;
}

.inner-about-banner-media img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	filter: grayscale(.15) contrast(1.05);
}

.inner-about-banner-media::after{
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(0deg, rgba(6,13,32,.92) 0%, rgba(6,13,32,.55) 32%, rgba(6,13,32,.08) 60%, rgba(6,13,32,0) 78%),
		linear-gradient(100deg, rgba(6,13,32,.85) 0%, rgba(6,13,32,.35) 32%, rgba(6,13,32,0) 55%);
}

.inner-about-banner-content{
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 820px;
	padding: 90px 0 72px;
}

.inner-about-banner-title {
    color: #fff;
    font-size: 60px;
    font-weight: 400;
    line-height: 1.1;
    margin-bottom: 28px;
    max-width: 700px;
}

.inner-about-banner-title em {
	font-style: italic;
	font-weight: 500;
	color: #e3b565;
}

.inner-about-banner-desc p{
    color: rgba(255,255,255,.72);
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
    max-width: 400px;
    padding-left: 28px;
    border-left: 1px solid rgba(255,255,255,.25);
}

/* services banner: Ken Burns image + word-by-word title + border draw (.svc-anim-ready gate = JS) */
.inner-about-banner-wrap.svc-anim-ready .inner-about-banner-media img{
	transform: scale(1.14);
	transition: transform 1.6s cubic-bezier(.16, .84, .44, 1);
	will-change: transform;
}

.inner-about-banner-wrap.svc-anim-ready.svc-in .inner-about-banner-media img{
	transform: scale(1);
	will-change: auto;
}

.inner-about-banner-wrap.svc-anim-ready .svc-word{
	display: inline-block;
	opacity: 0;
	transform: translateY(20px) rotate(1.5deg);
	transition: opacity .6s ease, transform .7s cubic-bezier(.16, .84, .44, 1);
	will-change: transform, opacity;
}

.inner-about-banner-wrap.svc-anim-ready.svc-in .svc-word{
	opacity: 1;
	transform: none;
	will-change: auto;
}

.inner-about-banner-wrap.svc-anim-ready .inner-about-banner-desc p{
	position: relative;
	border-left-color: transparent;
	opacity: 0;
	transform: translateY(12px);
	transition: opacity .6s ease .35s, transform .6s ease .35s;
}

.inner-about-banner-wrap.svc-anim-ready .inner-about-banner-desc p::before{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 100%;
	background: rgba(255, 255, 255, .25);
	transform: scaleY(0);
	transform-origin: top;
	transition: transform .7s cubic-bezier(.16, .84, .44, 1);
}

.inner-about-banner-wrap.svc-anim-ready.svc-in .inner-about-banner-desc p{
	opacity: 1;
	transform: none;
}

.inner-about-banner-wrap.svc-anim-ready.svc-in .inner-about-banner-desc p::before{
	transform: scaleY(1);
	transition-delay: .5s;
}

@media (prefers-reduced-motion: reduce){
	.inner-about-banner-wrap.svc-anim-ready .inner-about-banner-media img,
	.inner-about-banner-wrap.svc-anim-ready .svc-word,
	.inner-about-banner-wrap.svc-anim-ready .inner-about-banner-desc p{
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	.inner-about-banner-wrap.svc-anim-ready .inner-about-banner-desc p{
		border-left-color: rgba(255, 255, 255, .25);
	}

	.inner-about-banner-wrap.svc-anim-ready .inner-about-banner-desc p::before{
		display: none !important;
	}
}

/* inner about banner section ends */


/* inner about us section starts */

.inner-about-us-wrap{
	background: #fff;
	padding: 90px 0;
}

.inner-about-us-media{
	border-radius: 14px;
	overflow: hidden;
}

.inner-about-us-media img{
	width: 100%;
	height: auto;
	display: block;
}

.inner-about-us-collage{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	padding: 30px 6px;
}

.inner-about-us-collage-bg{
	position: absolute;
	inset: 8% 0;
	z-index: 0;
	background: linear-gradient(135deg, #eaf1ff, #f4e9d8);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' preserveAspectRatio='none'%3E%3Cpath d='M12 40 C 90 4, 220 -6, 340 14 C 460 34, 560 8, 592 46 C 610 130, 596 260, 588 340 C 500 388, 340 402, 210 388 C 100 376, 24 392, 8 350 C -4 260, 2 120, 12 40 Z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' preserveAspectRatio='none'%3E%3Cpath d='M12 40 C 90 4, 220 -6, 340 14 C 460 34, 560 8, 592 46 C 610 130, 596 260, 588 340 C 500 388, 340 402, 210 388 C 100 376, 24 392, 8 350 C -4 260, 2 120, 12 40 Z'/%3E%3C/svg%3E");
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
}

.inner-about-us-collage::after{
	content: "";
	position: absolute;
	top: -14px;
	right: 6%;
	width: 84px;
	height: 84px;
	background-image: radial-gradient(#c9d6f2 1.5px, transparent 1.6px);
	background-size: 12px 12px;
	opacity: .8;
	z-index: 0;
	pointer-events: none;
}

.inner-about-us-collage-item{
	position: relative;
	z-index: 1;
	flex: 1 1 0;
	border-radius: 20px;
	overflow: hidden;
	background: #eef2fb;
	box-shadow: 0 16px 34px rgba(13,31,77,.14);
	transition: transform .35s ease, box-shadow .35s ease;
}

.inner-about-us-collage-item:hover{
	box-shadow: 0 22px 44px rgba(13,31,77,.2);
}

.inner-about-us-collage-item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .5s ease;
}

.inner-about-us-collage-item:hover img{
	transform: scale(1.06);
}

.inner-about-us-collage-side {
    aspect-ratio: 3 / 4;
    align-self: center;
}

.inner-about-us-collage-main{
	aspect-ratio: 3 / 5;
	flex: 1 1 0;
	transform: translateY(-16px);
	z-index: 2;
}

/* only one image available: drop the side-card layout, show it full width */
.inner-about-us-collage-single{
	display: block;
	padding: 0;
}

.inner-about-us-collage-single .inner-about-us-collage-bg,
.inner-about-us-collage-single::after{
	display: none;
}

.inner-about-us-collage-single .inner-about-us-collage-item{
	aspect-ratio: 4 / 3.4;
	transform: none;
}

.inner-about-us-eyebrow{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #1a56db;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.inner-about-us-eyebrow::before{
	content: "";
	width: 28px;
	height: 2px;
	background: #e3b565;
	border-radius: 2px;
}

.inner-about-us-content{
	color: #4a5266;
	font-size: 16px;
	line-height: 1.9;
}

.inner-about-us-content h1,
.inner-about-us-content h2,
.inner-about-us-content h3,
.inner-about-us-content h4{
	color: #0d1f4d;
	font-weight: 600;
	margin-bottom: 18px;
}

.inner-about-us-content p:last-child{
	margin-bottom: 0;
}

/* inner about us section ends */


/* inner why choose section starts */

.inner-why-choose-wrap{
	position: relative;
	background: #f7f9fd;
	padding: 100px 0;
	overflow: hidden;
}

.inner-why-choose-wrap::before{
	content: "";
	position: absolute;
	top: -180px;
	right: -180px;
	width: 420px;
	height: 420px;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(26,86,219,.07), rgba(26,86,219,0));
	pointer-events: none;
}

.inner-why-choose-eyebrow{
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #1a56db;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	margin-bottom: 16px;
}

.inner-why-choose-title{
	position: relative;
	color: #0d1f4d;
	font-size: 38px;
	font-weight: 600;
	line-height: 1.3;
	margin-bottom: 20px;
}

.inner-why-choose-intro{
	position: relative;
	color: #5b6472;
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 60px;
}

.inner-why-choose-card{
	position: relative;
	height: 100%;
	text-align: center;
	background: #fff;
	border: 1px solid #e7ebf5;
	border-radius: 16px;
	padding: 44px 26px 36px;
	overflow: hidden;
	transition: box-shadow .3s ease, transform .3s ease, border-color .3s ease;
}

.inner-why-choose-card:hover {
	box-shadow: 0 22px 44px rgba(13,31,77,.12);
	border-color: #d7deef;
	transform: translateY(-6px);
}

.inner-why-choose-card:hover::before{
	transform: scaleX(1);
}

.inner-why-choose-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	margin: 0 auto 26px;
	border-radius: 50%;
	border: #000 2px solid;
	transition: background .3s ease, transform .3s ease;
}

.inner-why-choose-icon img{
	max-width: 34px;
	max-height: 34px;
	object-fit: contain;
	transition: filter .3s ease;
}

.inner-why-choose-card-title{
	color: #0d1f4d;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 12px;
}

.inner-why-choose-card-desc p{
	color: #6b7280;
	font-size: 14px;
	line-height: 1.7;
}


/* inner why choose section ends */


/* inner testimonials section starts */
.inner-testimonials-wrap {
	background: #f7f4ee;
	padding: 100px 0;
}

.inner-testimonials-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #1a56db;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.inner-testimonials-title {
	color: #0d1f4d;
	font-size: 36px;
	font-weight: 600;
	margin-bottom: 56px;
}

.inner-testimonials-slider-wrap {
	position: relative;
	display: flex;
	align-items: center;
	gap: 20px;
}

.inner-testimonials-slider {
	flex: 1 1 auto;
	min-width: 0;
}

.inner-testimonials-slider .inner-testimonials-slide {
	padding: 6px 12px;
	box-sizing: border-box;
}

.inner-testimonials-slider .slick-track{
	display: flex;
	align-items: stretch;
}

.inner-testimonials-slider .slick-slide{
	height: auto;
}

.inner-testimonials-slider .slick-slide > div{
	height: 100%;
}

.inner-testimonials-card {
    height: 100%;
    background: #fff;
    border: 1px solid #ece6d9;
    border-radius: 16px;
    padding: 30px 26px;
    box-shadow: 0px 4px 6px rgba(13, 31, 77, .06);
    transition: box-shadow .3s ease, transform .3s ease;
}

.inner-testimonials-card:hover {
	transform: translateY(-4px);
}

.inner-testimonials-stars{
	color: #e3b565;
	font-size: 14px;
	letter-spacing: 3px;
	margin-bottom: 16px;
}

.inner-testimonials-stars .inner-testimonials-star-empty {
	color: #e6e1d4;
}

.inner-testimonials-quote {
	color: #4a5266;
	font-size: 15px;
	line-height: 1.75;
	margin-bottom: 24px;
	min-height: 84px;
}

.inner-testimonials-quote p:last-child {
	margin-bottom: 0;
}

.inner-testimonials-person {
	display: flex;
	align-items: center;
	gap: 12px;
}

.inner-testimonials-avatar {
	display: block;
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	overflow: hidden;
}

.inner-testimonials-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.inner-testimonials-person-info {
	display: flex;
	flex-direction: column;
}

.inner-testimonials-name {
	color: #0d1f4d;
	font-size: 15px;
	font-weight: 600;
}

.inner-testimonials-location {
	color: #9096a3;
	font-size: 13px;
}

.inner-testimonials-arrow {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #0d1f4d;
	color: #fff;
	border: none;
	font-size: 15px;
	cursor: pointer;
	transition: background .25s ease, transform .25s ease;
}

.inner-testimonials-arrow:hover {
	background: #1a56db;
	transform: scale(1.06);
}

.inner-testimonials-arrow.slick-disabled {
	opacity: .4;
	cursor: default;
	pointer-events: none;
}

/* ABOUT PAGE motion (.abt-anim-ready gate = JS) */

/* 1. banner: centre-out photo wipe + letter-spacing contract + desc slide */
.inner-about-banner-wrap.abt-anim-ready .inner-about-banner-media img{
	clip-path: inset(0 50% 0 50%);
	transition: clip-path 1s cubic-bezier(.16, .84, .44, 1);
	will-change: clip-path;
}
.inner-about-banner-wrap.abt-anim-ready.abt-in .inner-about-banner-media img{
	clip-path: inset(0 0 0 0);
	will-change: auto;
}

.inner-about-banner-wrap.abt-anim-ready .inner-about-banner-title{
	opacity: 0;
	letter-spacing: .28em;
	filter: blur(4px);
	transition: opacity .8s ease,
	            letter-spacing 1s cubic-bezier(.16, .84, .44, 1),
	            filter .8s ease;
	will-change: letter-spacing, opacity, filter;
}
.inner-about-banner-wrap.abt-anim-ready.abt-in .inner-about-banner-title{
	opacity: 1;
	letter-spacing: normal;
	filter: blur(0);
	will-change: auto;
}

.inner-about-banner-wrap.abt-anim-ready .inner-about-banner-desc p{
	opacity: 0;
	transform: translateX(-26px);
	transition: opacity .7s ease .3s, transform .8s cubic-bezier(.16, .84, .44, 1) .3s;
}
.inner-about-banner-wrap.abt-anim-ready.abt-in .inner-about-banner-desc p{
	opacity: 1;
	transform: none;
}

/* 2. why-choose: heading + underline draw, cards page-flip in, icon spin-pop */
.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-eyebrow,
.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-title,
.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-intro{
	opacity: 0;
	transform: translateY(20px);
	transition: opacity .6s ease, transform .7s cubic-bezier(.19, 1, .22, 1);
}
.inner-why-choose-wrap.abt-anim-ready.abt-in .inner-why-choose-eyebrow{ opacity: 1; transform: none; }
.inner-why-choose-wrap.abt-anim-ready.abt-in .inner-why-choose-title{ opacity: 1; transform: none; transition-delay: .08s; }
.inner-why-choose-wrap.abt-anim-ready.abt-in .inner-why-choose-intro{ opacity: 1; transform: none; transition-delay: .16s; }

.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-title::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: -8px;
	width: 64px;
	height: 3px;
	border-radius: 3px;
	background: #e3b565;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .7s cubic-bezier(.16, .84, .44, 1) .35s;
}
.inner-why-choose-wrap.abt-anim-ready.abt-in .inner-why-choose-title::after{ transform: scaleX(1); }

.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-card{
	opacity: 0;
	transform: perspective(1100px) rotateY(-40deg) translateX(-12px);
	transform-origin: left center;
	transition: opacity .5s ease,
	            transform .8s cubic-bezier(.19, 1, .22, 1),
	            box-shadow .3s ease,
	            border-color .3s ease;
	will-change: transform, opacity;
}
.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-card.is-in{
	opacity: 1;
	transform: perspective(1100px) rotateY(0) translateX(0);
	will-change: auto;
}

.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-icon{
	transform: rotate(-160deg) scale(0);
	transition: background .3s ease, transform .7s cubic-bezier(.34, 1.56, .64, 1);
}
.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-card.is-in .inner-why-choose-icon{
	transform: rotate(0) scale(1);
	transition-delay: .18s;
}

/* 3. about-us: collage assembles from the sides + pointer-depth parallax (JS: translate) */
.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-bg{
	opacity: 0;
	transform: scale(.72) rotate(-6deg);
	transition: opacity .7s ease, transform .9s cubic-bezier(.19, 1, .22, 1);
}
.inner-about-us-wrap.abt-anim-ready.abt-in .inner-about-us-collage-bg{
	opacity: 1;
	transform: none;
}

.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage::after{
	opacity: 0;
	transition: opacity .6s ease .5s;
}
.inner-about-us-wrap.abt-anim-ready.abt-in .inner-about-us-collage::after{ opacity: .8; }

.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-left,
.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-right,
.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-main{
	opacity: 0;
	transition: opacity .7s ease,
	            transform .9s cubic-bezier(.19, 1, .22, 1),
	            translate .3s ease-out;
	will-change: transform, opacity;
}
.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-left{ transform: translateX(-60px) rotate(-9deg); }
.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-right{ transform: translateX(60px) rotate(9deg); }
.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-main{ transform: translateY(34px) scale(.9); }

.inner-about-us-wrap.abt-anim-ready.abt-in .inner-about-us-collage-left,
.inner-about-us-wrap.abt-anim-ready.abt-in .inner-about-us-collage-right{
	opacity: 1;
	transform: none;
	will-change: auto;
}
.inner-about-us-wrap.abt-anim-ready.abt-in .inner-about-us-collage-main{
	opacity: 1;
	transform: translateY(-16px);   /* base resting offset */
	will-change: auto;
}

.inner-about-us-wrap.abt-anim-ready .inner-about-us-content > *{
	opacity: 0;
	transform: translateY(22px);
	transition: opacity .6s ease, transform .7s cubic-bezier(.19, 1, .22, 1);
}
.inner-about-us-wrap.abt-anim-ready.abt-in .inner-about-us-content > *{
	opacity: 1;
	transform: none;
}

/* 4. testimonials: heading + slider lift, one-shot star twinkle */
.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-eyebrow,
.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-title,
.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-slider-wrap{
	opacity: 0;
	transform: translateY(26px);
	transition: opacity .7s ease, transform .8s cubic-bezier(.19, 1, .22, 1);
}
.inner-testimonials-wrap.abt-anim-ready.abt-in .inner-testimonials-eyebrow{ opacity: 1; transform: none; }
.inner-testimonials-wrap.abt-anim-ready.abt-in .inner-testimonials-title{ opacity: 1; transform: none; transition-delay: .08s; }
.inner-testimonials-wrap.abt-anim-ready.abt-in .inner-testimonials-slider-wrap{ opacity: 1; transform: none; transition-delay: .16s; }

.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-stars.abt-twinkle i{
	animation: abt-twinkle .5s ease both;
}
.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-stars.abt-twinkle i:nth-child(2){ animation-delay: .07s; }
.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-stars.abt-twinkle i:nth-child(3){ animation-delay: .14s; }
.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-stars.abt-twinkle i:nth-child(4){ animation-delay: .21s; }
.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-stars.abt-twinkle i:nth-child(5){ animation-delay: .28s; }

@keyframes abt-twinkle{
	0%   { transform: scale(1); }
	40%  { transform: scale(1.35); }
	100% { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce){
	.inner-about-banner-wrap.abt-anim-ready .inner-about-banner-media img,
	.inner-about-banner-wrap.abt-anim-ready .inner-about-banner-title,
	.inner-about-banner-wrap.abt-anim-ready .inner-about-banner-desc p,
	.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-eyebrow,
	.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-title,
	.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-intro,
	.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-card,
	.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-icon,
	.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-bg,
	.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-left,
	.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-right,
	.inner-about-us-wrap.abt-anim-ready .inner-about-us-content > *,
	.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-eyebrow,
	.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-title,
	.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-slider-wrap{
		opacity: 1 !important;
		transform: none !important;
		letter-spacing: normal !important;
		filter: none !important;
		clip-path: none !important;
		transition: none !important;
	}
	.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage-main{
		opacity: 1 !important;
		transform: translateY(-16px) !important;
		transition: none !important;
	}
	.inner-why-choose-wrap.abt-anim-ready .inner-why-choose-title::after{ transform: none !important; }
	.inner-about-us-wrap.abt-anim-ready .inner-about-us-collage::after{ opacity: .8 !important; }
	.inner-testimonials-wrap.abt-anim-ready .inner-testimonials-stars.abt-twinkle i{ animation: none !important; }
}

/* inner testimonials section ends */



/* BLOG PAGE */

/* blog listing page starts */

.inner-blog-wrap {
	padding: 80px 0 60px;
}

.inner-blog-wrap .row {
    row-gap: 24px;
}

.blog-page-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap;
    padding-bottom: 40px;
}

.blog-page-header-text {
    max-width: 55%;
}

.blog-page-header-text h6 {
	font-weight: 700;
	font-size: 13px;
	letter-spacing: 2px;
	color: #1a56db;
	margin-bottom: 14px;
}

.blog-page-header-text h1 {
	font-weight: 800;
	font-size: 40px;
	color: #0d1f4d;
	margin-bottom: 18px;
}

.blog-page-header-text p {
	color: #6b7280;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 0;
}

.blog-category-filter {
	flex-shrink: 0;
	min-width: 280px;
	position: relative;
}

.blog-category-filter summary {
	display: flex;
	align-items: stretch;
	gap: 12px;
	cursor: pointer;
	list-style: none;
}

.blog-category-filter summary::-webkit-details-marker {
	display: none;
}

.blog-category-filter-label {
	flex: 1;
	display: flex;
	align-items: center;
	padding: 18px 20px;
	background: #fff;
	border-radius: 10px;
	color: #0d1f4d;
	font-size: 15px;
	box-shadow: 0 1px 2px rgba(13, 31, 77, 0.08);
}

.blog-category-filter-toggle {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 1px 2px rgba(13, 31, 77, 0.08);
}

.blog-category-filter-toggle i {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #0d1f4d;
	color: #fff;
	font-size: 13px;
	transition: transform 0.25s ease;
}

.blog-category-filter[open] .blog-category-filter-toggle i {
	transform: rotate(180deg);
}

.blog-category-filter-list {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	z-index: 10;
	background: #fff;
	border-radius: 10px;
	padding: 20px 24px;
	margin: 0;
	list-style: none;
	box-shadow: 0 12px 32px rgba(13, 31, 77, 0.14);
}

.blog-category-filter-list li + li {
	margin-top: 16px;
}

.blog-category-filter-list a {
	display: block;
	font-size: 15px;
	font-weight: 500;
	color: #0d1f4d;
}

.blog-category-filter-list a:hover,
.blog-category-filter-list a.is-active {
	color: #ee7c3b;
}

.inner-blog-item {
	height: 100%;
}

a.blog-inner-item {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.blog-inner-item .date {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	font-size: 13px;
	color: #6b7280;
	margin-bottom: 14px;
}

.blog-inner-item .date p {
	margin-bottom: 0;
	font-size: 13px;
	color: #6b7280;
}

.blog-main-img {
	border-radius: 14px;
	overflow: hidden;
	margin-bottom: 20px;
	aspect-ratio: 4 / 3;
	background: #eef1f6;
}

.blog-main-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease;
}

.blog-inner-item:hover .blog-main-img img {
	transform: scale(1.04);
}

.blog-category-badge {
	display: inline-block;
	font-weight: 600;
	font-size: 12px;
	color: #0d1f4d;
	background: #eef1f6;
	border-radius: 20px;
	padding: 4px 12px;
	margin-bottom: 12px;
}

.blog-detail-wrapper h5 {
	font-weight: 700;
	font-size: 18px;
	line-height: 1.4;
	color: #0d1f4d;
	margin-bottom: 8px;
}

.blog-detail-wrapper p {
	color: #6b7280;
	font-size: 14px;
	line-height: 1.6;
	margin-bottom: 0;
}

.blog-detail-wrapper .readmore {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 14px;
	font-weight: 600;
	font-size: 14px;
	color: #1a56db;
}

/* BLOG PAGE motion (.blg-anim-ready gate = JS) */

/* 1. banner: image focus-pull, title rises from a clip mask, highlighter swipe on <em> */
.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-media img{
	filter: blur(16px) saturate(1.5) grayscale(.15) contrast(1.05);
	transition: filter 1.1s ease;
	will-change: filter;
}
.inner-about-banner-wrap.blg-anim-ready.blg-in .inner-about-banner-media img{
	filter: blur(0) saturate(1) grayscale(.15) contrast(1.05);
	will-change: auto;
}

.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-title{
	opacity: 0;
	clip-path: inset(105% 0 -5% 0);
	transform: translateY(14px);
	transition: opacity .7s ease,
	            clip-path .9s cubic-bezier(.16, .84, .44, 1),
	            transform .9s cubic-bezier(.16, .84, .44, 1);
	will-change: clip-path, transform;
}
.inner-about-banner-wrap.blg-anim-ready.blg-in .inner-about-banner-title{
	opacity: 1;
	clip-path: inset(-5% 0 -5% 0);
	transform: none;
	will-change: auto;
}

.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-title em{
	background-repeat: no-repeat;
	background-position: 0 100%;
	background-size: 0% 32%;
	transition: background-size .7s cubic-bezier(.16, .84, .44, 1) .55s;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}
.inner-about-banner-wrap.blg-anim-ready.blg-in .inner-about-banner-title em{
	background-size: 100% 32%;
}

.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-desc p{
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .7s ease .35s, transform .8s cubic-bezier(.16, .84, .44, 1) .35s;
}
.inner-about-banner-wrap.blg-anim-ready.blg-in .inner-about-banner-desc p{
	opacity: 1;
	transform: none;
}

/* 2. header: text + filter rise, then a rule draws across the base */
.blog-page-header.blg-anim-ready{ position: relative; }

.blog-page-header.blg-anim-ready .blog-page-header-text > *,
.blog-page-header.blg-anim-ready .blog-category-filter{
	opacity: 0;
	transform: translateY(22px);
	transition: opacity .6s ease, transform .7s cubic-bezier(.19, 1, .22, 1);
}
.blog-page-header.blg-anim-ready.blg-in .blog-page-header-text > *,
.blog-page-header.blg-anim-ready.blg-in .blog-category-filter{
	opacity: 1;
	transform: none;
}
.blog-page-header.blg-anim-ready.blg-in .blog-page-header-text > *:nth-child(2){ transition-delay: .08s; }
.blog-page-header.blg-anim-ready.blg-in .blog-page-header-text > *:nth-child(3){ transition-delay: .16s; }
.blog-page-header.blg-anim-ready.blg-in .blog-category-filter{ transition-delay: .24s; }

.blog-page-header.blg-anim-ready::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: rgba(13, 31, 77, .15);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .8s cubic-bezier(.16, .84, .44, 1) .2s;
}
.blog-page-header.blg-anim-ready.blg-in::after{ transform: scaleX(1); }

/* 3. cards: column-shutter drop (JS: per-column delay), image zoom-out, copy rise */
.blog-listing-wrapper.blg-anim-ready .inner-blog-item{
	opacity: 0;
	transform: perspective(1200px) rotateX(-10deg) translateY(-44px);
	transform-origin: top center;
	transition: opacity .55s ease, transform .8s cubic-bezier(.19, 1, .22, 1);
	will-change: transform, opacity;
}
.blog-listing-wrapper.blg-anim-ready .inner-blog-item.is-in{
	opacity: 1;
	transform: none;
	will-change: auto;
}
.blog-listing-wrapper{
    padding-top:30px;
}
.blog-listing-wrapper.blg-anim-ready .inner-blog-item .blog-main-img img{
	scale: 1.25;
	transition: transform .35s ease, scale .8s cubic-bezier(.19, 1, .22, 1);
}
.blog-listing-wrapper.blg-anim-ready .inner-blog-item.is-in .blog-main-img img{
	scale: 1;
}

.blog-listing-wrapper.blg-anim-ready .inner-blog-item .blog-detail-wrapper{
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .5s ease, transform .6s cubic-bezier(.19, 1, .22, 1);
}
.blog-listing-wrapper.blg-anim-ready .inner-blog-item.is-in .blog-detail-wrapper{
	opacity: 1;
	transform: none;
	transition-delay: .18s;
}

/* pointer: card drifts toward the cursor, image casts a light-source shadow (JS: .blg-tilt-on, desktop) */
.blog-listing-wrapper.blg-tilt-on .inner-blog-item .blog-inner-item{
	translate: var(--blg-tx, 0) var(--blg-ty, 0);
	transition: translate .3s ease-out;
}
.blog-listing-wrapper.blg-tilt-on .inner-blog-item .blog-main-img{
	box-shadow: calc(var(--blg-sx, 0) * -18px) calc(var(--blg-sy, 0) * -14px + 16px) 38px rgba(13, 31, 77, .2);
	transition: box-shadow .3s ease-out;
}

@media (prefers-reduced-motion: reduce){
	.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-media img,
	.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-title,
	.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-title em,
	.inner-about-banner-wrap.blg-anim-ready .inner-about-banner-desc p,
	.blog-page-header.blg-anim-ready .blog-page-header-text > *,
	.blog-page-header.blg-anim-ready .blog-category-filter,
	.blog-listing-wrapper.blg-anim-ready .inner-blog-item,
	.blog-listing-wrapper.blg-anim-ready .inner-blog-item .blog-main-img img,
	.blog-listing-wrapper.blg-anim-ready .inner-blog-item .blog-detail-wrapper{
		opacity: 1 !important;
		transform: none !important;
		scale: 1 !important;
		filter: grayscale(.15) contrast(1.05) !important;
		clip-path: none !important;
		background-size: 100% 32% !important;
		transition: none !important;
	}
	.blog-page-header.blg-anim-ready::after{ transform: none !important; }
}

/* blog listing page ends */


/* single blog page starts */

.single-blog-wrap {
	padding: 150px 0 80px;
}

.single-blog-breadcrumb {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #6b7280;
	margin-bottom: 32px;
}

.single-blog-breadcrumb a {
	color: #6b7280;
}

.single-blog-breadcrumb a:hover {
	color: #1a56db;
}

.single-blog-header {
	max-width: 780px;
	margin: 0 auto 40px;
	text-align: center;
}

.single-blog-header h1 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 18px;
}

.single-blog-excerpt {
	color: #6b7280;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 18px;
}

.single-blog-header .blog-category-badge {
	margin-bottom: 0;
}

.single-blog-main-img {
	border-radius: 18px;
	overflow: hidden;
	margin-bottom: 28px;
	background: #f7f9fd;
}

.single-blog-main-img img {
	width: 100%;
	height: 500px;
	object-fit: cover;
	display: block;
}

.single-blog-meta {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 780px;
	margin: 0 auto 40px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e5e9f2;
	font-size: 14px;
	color: #6b7280;
}

.single-blog-meta i {
	margin-right: 6px;
}

.single-blog-content {
    max-width: 950px;
    margin: 0 auto;
    color: #374151;
    font-size: 16px;
    line-height: 1.8;
}

.single-blog-content p {
	color: #374151;
	margin-bottom: 20px;
}

.single-blog-content ul,
.single-blog-content ol {
	margin-bottom: 20px;
	padding-left: 22px;
}

.single-blog-content li {
	margin-bottom: 10px;
}

.single-blog-content a {
	color: #1a56db;
}

.single-blog-content img {
	max-width: 100%;
	height: auto;
	border-radius: 14px;
	margin-bottom: 20px;
}

/* single blog page ends */

/* related posts section starts */

.related-post-wrap {
	padding: 0 0 100px;
}

.related-post-wrap h2 {
	text-align: center;
	font-weight: 800;
	font-size: 30px;
	color: #0d1f4d;
	margin-bottom: 48px;
}

.related-post-wrap .row {
	row-gap: 48px;
}

/* related posts section ends */


/* Hotel page */

.inner-hotel-section {
    background: #f5f2ea;
    padding: 80px 0;
}

.inner-hotel-section .col-lg-4,
.inner-hotel-section .col-md-6 {
    margin-bottom: 32px;
}

.inner-hotel-section-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    border-radius: 20px;
    border-bottom-left-radius: 0;
    padding: 20px 0 0;
    height: 100%;
    overflow: visible;
}

.inner-hotel-section-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 15px 15px;
    flex-shrink: 0;
}

.inner-hotel-section-card-icon img {
    width: 100px;
    height: 100px;
    object-fit: cover;
	border-radius: 20px;
}

.inner-hotel-section-card-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 15px 8px;
}

.inner-hotel-section-card-rating {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-size: 13px;
}

.inner-hotel-section-card-rating i {
    color: #f5a623;
    font-size: 12px;
}

.inner-hotel-section-card-rating-num {
    margin-left: 4px;
    font-weight: 700;
}

.inner-hotel-section-card-location {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    opacity: 0.85;
}

.inner-hotel-section-card-location i {
    font-size: 12px;
}

.inner-hotel-section-card-title {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    margin: 15px;
    flex-shrink: 0;
}

.inner-hotel-section-card-desc {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 15px 20px;
    flex: 1;
}

.inner-hotel-section-card-btn {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 700;
    width: fit-content;
    padding: 10px 18px;
    border-radius: 50px;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease, transform .3s ease, box-shadow .3s ease, gap .3s ease;
}

.inner-hotel-section-card-btn:hover {
    gap: 9px;
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, .18);
}

.inner-hotel-section-card-btn i {
    transition: transform .3s ease, opacity .3s ease;
}

.inner-hotel-section-card-btn i:nth-of-type(2) {
    margin-left: -9px;
    opacity: .55;
}

.inner-hotel-section-card-btn:hover i:nth-of-type(1) {
    transform: translateX(3px);
}

.inner-hotel-section-card-btn:hover i:nth-of-type(2) {
    transform: translateX(5px);
    opacity: 1;
    transition-delay: .06s;
}

.inner-hotel-section-card-notch {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 160px;
    height: 50px;
    background: #f5f2ea;
    border-top-right-radius: 24px;
    z-index: 1;
    pointer-events: none;
    margin-top: 20px;
}

.col-lg-4:nth-child(3n+1) .inner-hotel-section-card {
    background: #004aff47;
}

.col-lg-4:nth-child(3n+1) .inner-hotel-section-card-icon,
.col-lg-4:nth-child(3n+1) .inner-hotel-section-card-title {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-hotel-section-card-desc {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-hotel-section-card-btn {
    background: #004aff47;
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-hotel-section-card-btn:hover {
    background: #0d1f4d;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card {
    background: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card-rating-num {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card-location {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card-title {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card-btn {
    background: #2a5fe0;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card-btn:hover {
    background: #ffffff;
    color: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-hotel-section-card-notch {
    background: #f5f2ea;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card {
    background: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card-rating-num{
    color: #ffffff;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card-location {
    color: #ffffff;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card-title {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card-btn {
    background: #0f2967;
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card-btn:hover {
    background: #ffffff;
    color: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-hotel-section-card-notch {
    background: #f5f2ea;
}

/* inner hotel section end  */


/* Activities page */

.inner-activities-section {
    background: #f5f2ea;
    padding: 80px 0;
}

.inner-activities-section .col-lg-4,
.inner-activities-section .col-md-6 {
    margin-bottom: 32px;
}

.inner-activities-section-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    border-radius: 20px;
    border-bottom-left-radius: 0;
    padding: 20px 0 0;
    height: 100%;
    overflow: visible;
}

.inner-activities-section-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 15px 15px;
    flex-shrink: 0;
}

.inner-activities-section-card-icon img {
    width: 100px;
    height: 100px;
    object-fit: cover;
	border-radius: 20px;
}

.inner-activities-section-card-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0 15px 8px;
}

.inner-activities-section-card-duration {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    opacity: 0.85;
}

.inner-activities-section-card-duration i {
    font-size: 12px;
}

.inner-activities-section-card-location {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    opacity: 0.85;
}

.inner-activities-section-card-location i {
    font-size: 12px;
}

.inner-activities-section-card-title {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    margin: 15px;
    flex-shrink: 0;
}

.inner-activities-section-card-desc {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 15px 20px;
    flex: 1;
}

.inner-activities-section-card-btn {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 700;
    width: fit-content;
    padding: 10px 18px;
    border-radius: 50px;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease, transform .3s ease, box-shadow .3s ease, gap .3s ease;
}

.inner-activities-section-card-btn:hover {
    gap: 9px;
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, .18);
}

.inner-activities-section-card-btn i {
    transition: transform .3s ease, opacity .3s ease;
}

.inner-activities-section-card-btn i:nth-of-type(2) {
    margin-left: -9px;
    opacity: .55;
}

.inner-activities-section-card-btn:hover i:nth-of-type(1) {
    transform: translateX(3px);
}

.inner-activities-section-card-btn:hover i:nth-of-type(2) {
    transform: translateX(5px);
    opacity: 1;
    transition-delay: .06s;
}

.inner-activities-section-card-notch {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 160px;
    height: 50px;
    background: #f5f2ea;
    border-top-right-radius: 24px;
    z-index: 1;
    pointer-events: none;
    margin-top: 20px;
}

.col-lg-4:nth-child(3n+1) .inner-activities-section-card {
    background: #004aff47;
}

.col-lg-4:nth-child(3n+1) .inner-activities-section-card-icon,
.col-lg-4:nth-child(3n+1) .inner-activities-section-card-title {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-activities-section-card-desc {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-activities-section-card-btn {
    background: #004aff47;
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-activities-section-card-btn:hover {
    background: #0d1f4d;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-activities-section-card {
    background: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-activities-section-card-duration,
.col-lg-4:nth-child(3n+2) .inner-activities-section-card-location {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-activities-section-card-title {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-activities-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n+2) .inner-activities-section-card-btn {
    background: #2a5fe0;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-activities-section-card-btn:hover {
    background: #ffffff;
    color: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-activities-section-card-notch {
    background: #f5f2ea;
}

.col-lg-4:nth-child(3n) .inner-activities-section-card {
    background: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-activities-section-card-duration,
.col-lg-4:nth-child(3n) .inner-activities-section-card-location {
    color: #ffffff;
}

.col-lg-4:nth-child(3n) .inner-activities-section-card-title {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-activities-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-activities-section-card-btn {
    background: #0f2967;
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-activities-section-card-btn:hover {
    background: #ffffff;
    color: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-activities-section-card-notch {
    background: #f5f2ea;
}

/* inner activities section end */


/* Flight booking page */

.inner-flight-section {
    background: #f5f2ea;
    padding: 80px 0;
}

.inner-flight-section .col-lg-4,
.inner-flight-section .col-md-6 {
    margin-bottom: 32px;
}

.inner-flight-section-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    border-radius: 20px;
    border-bottom-left-radius: 0;
    padding: 20px 0 0;
    height: 100%;
    overflow: visible;
}

.inner-flight-section-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 15px 15px;
    flex-shrink: 0;
}

.inner-flight-section-card-icon img {
    width: 100px;
    height: 100px;
    object-fit: cover;
	border-radius: 20px;
}

.inner-flight-section-card-route {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 15px 8px;
    font-family: "Poppins", sans-serif;
    font-weight: 700;
    font-size: 14px;
}

.inner-flight-section-card-route i {
    font-size: 12px;
    opacity: .7;
}

.inner-flight-section-card-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0 15px 8px;
}

.inner-flight-section-card-airline,
.inner-flight-section-card-duration {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    opacity: 0.85;
}

.inner-flight-section-card-airline i,
.inner-flight-section-card-duration i {
    font-size: 12px;
}

.inner-flight-section-card-title {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    margin: 15px;
    flex-shrink: 0;
}

.inner-flight-section-card-desc {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 15px 12px;
    flex: 1;
}

.inner-flight-section-card-price {
    display: block;
    font-family: "Poppins", sans-serif;
    font-weight: 800;
    font-size: 17px;
    margin: 0 15px 16px;
}

.inner-flight-section-card-btn {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 700;
    width: fit-content;
    padding: 10px 18px;
    border-radius: 50px;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease, transform .3s ease, box-shadow .3s ease, gap .3s ease;
}

.inner-flight-section-card-btn:hover {
    gap: 9px;
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, .18);
}

.inner-flight-section-card-btn i {
    transition: transform .3s ease, opacity .3s ease;
}

.inner-flight-section-card-btn i:nth-of-type(2) {
    margin-left: -9px;
    opacity: .55;
}

.inner-flight-section-card-btn:hover i:nth-of-type(1) {
    transform: translateX(3px);
}

.inner-flight-section-card-btn:hover i:nth-of-type(2) {
    transform: translateX(5px);
    opacity: 1;
    transition-delay: .06s;
}

.inner-flight-section-card-notch {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 160px;
    height: 50px;
    background: #f5f2ea;
    border-top-right-radius: 24px;
    z-index: 1;
    pointer-events: none;
    margin-top: 20px;
}

.col-lg-4:nth-child(3n+1) .inner-flight-section-card {
    background: #004aff47;
}

.col-lg-4:nth-child(3n+1) .inner-flight-section-card-icon,
.col-lg-4:nth-child(3n+1) .inner-flight-section-card-route,
.col-lg-4:nth-child(3n+1) .inner-flight-section-card-title,
.col-lg-4:nth-child(3n+1) .inner-flight-section-card-price {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-flight-section-card-desc {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-flight-section-card-btn {
    background: #004aff47;
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-flight-section-card-btn:hover {
    background: #0d1f4d;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-flight-section-card {
    background: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-flight-section-card-route,
.col-lg-4:nth-child(3n+2) .inner-flight-section-card-airline,
.col-lg-4:nth-child(3n+2) .inner-flight-section-card-duration,
.col-lg-4:nth-child(3n+2) .inner-flight-section-card-title,
.col-lg-4:nth-child(3n+2) .inner-flight-section-card-price {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-flight-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n+2) .inner-flight-section-card-btn {
    background: #2a5fe0;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-flight-section-card-btn:hover {
    background: #ffffff;
    color: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-flight-section-card-notch {
    background: #f5f2ea;
}

.col-lg-4:nth-child(3n) .inner-flight-section-card {
    background: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-flight-section-card-route,
.col-lg-4:nth-child(3n) .inner-flight-section-card-airline,
.col-lg-4:nth-child(3n) .inner-flight-section-card-duration,
.col-lg-4:nth-child(3n) .inner-flight-section-card-title,
.col-lg-4:nth-child(3n) .inner-flight-section-card-price {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-flight-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-flight-section-card-btn {
    background: #0f2967;
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-flight-section-card-btn:hover {
    background: #ffffff;
    color: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-flight-section-card-notch {
    background: #f5f2ea;
}

/* inner flight section end */


/* SINGLE HOTEL PAGE */

/* single hotel header starts (layout mirrors .single-blog-wrap / .single-blog-header) */

.single-hotel-wrap{
	padding: 150px 0 80px;
}

.single-hotel-breadcrumb{
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #6b7280;
	margin-bottom: 32px;
}

.single-hotel-breadcrumb a{
	color: #6b7280;
}

.single-hotel-breadcrumb a:hover{
	color: #1a56db;
}

.single-hotel-header{
	max-width: 780px;
	margin: 0 auto 32px;
	text-align: center;
}

.single-hotel-header h1{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 18px;
}

.single-hotel-excerpt{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 0;
}

.single-hotel-main-img{
	border-radius: 18px;
	overflow: hidden;
	margin-bottom: 28px;
	background: #f7f9fd;
}

.single-hotel-main-img img{
	width: 100%;
	height: 500px;
	object-fit: cover;
	display: block;
}

.single-hotel-meta{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 780px;
	margin: 0 auto 40px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e5e9f2;
}

.single-hotel-meta-rating{
	display: inline-flex;
	align-items: center;
	gap: 3px;
	color: #f5a623;
	font-size: 14px;
}

.single-hotel-meta-location{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
}

.single-hotel-meta-location i{
	color: #d98a1f;
}

.single-hotel-body-row{
	row-gap: 32px;
}

/* single hotel header ends */


/* single hotel body starts */

.single-hotel-content{
	color: #374151;
	font-size: 16px;
	line-height: 1.8;
}

.single-hotel-content p{
	color: #374151;
	margin-bottom: 20px;
}

.single-hotel-content ul,
.single-hotel-content ol{
	margin-bottom: 20px;
	padding-left: 22px;
}

.single-hotel-content li{
	margin-bottom: 10px;
}

.single-hotel-content h2,
.single-hotel-content h3{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	color: #0d1f4d;
	margin-bottom: 16px;
}

.single-hotel-content img{
	max-width: 100%;
	height: auto;
	border-radius: 14px;
	margin-bottom: 20px;
}

.single-hotel-sidebar-col{
	position: relative;
}

.single-hotel-side-card{
	background: #0d1f4d;
	border-radius: 20px;
	padding: 32px 28px;
	color: #ffffff;
}

.single-hotel-side-card.is-pinned{
	position: fixed;
	top: 100px;
	z-index: 5;
}

.single-hotel-side-card.is-pinned-bottom{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.single-hotel-side-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 19px;
	margin-bottom: 12px;
}

.single-hotel-side-card-desc{
	color: rgba(255,255,255,.7);
	font-size: 14px;
	line-height: 1.7;
	margin-bottom: 22px;
}

.single-hotel-side-card-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	border: none;
	background: #d98a1f;
	color: #ffffff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14px;
	padding: 14px 20px;
	border-radius: 999px;
	text-decoration: none;
	cursor: pointer;
	transition: background .25s ease, transform .2s ease, gap .2s ease;
}

.single-hotel-side-card-btn i{
	font-size: 12px;
	transition: transform .2s ease;
}

.single-hotel-side-card-btn:hover{
	background: #c07a19;
	color: #ffffff;
	gap: 11px;
	transform: translateY(-2px);
}

/* single hotel body ends */


/* single hotel gallery starts */

.single-hotel-gallery-wrap{
	background: #f7f9fd;
	padding: 90px 0;
}

.single-hotel-gallery-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.single-hotel-gallery-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3vw, 36px);
	color: #0d1f4d;
	margin-bottom: 0;
}

.single-hotel-gallery-row{
	margin-top: 44px;
	row-gap: 24px;
}

.single-hotel-gallery-item{
	position: relative;
	display: block;
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #eef1f6;
}

.single-hotel-gallery-item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.single-hotel-gallery-item-zoom{
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(13,31,77,0);
	color: #ffffff;
	font-size: 18px;
	opacity: 0;
	transition: background .3s ease, opacity .3s ease;
}

.single-hotel-gallery-item:hover img{
	transform: scale(1.08);
}

.single-hotel-gallery-item:hover .single-hotel-gallery-item-zoom{
	background: rgba(13,31,77,.45);
	opacity: 1;
}

/* single hotel gallery ends */


/* single hotel lightbox starts */

.single-hotel-lightbox{
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(6,13,32,.92);
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s ease, visibility .25s ease;
	padding: 40px;
}

.single-hotel-lightbox.is-open{
	opacity: 1;
	visibility: visible;
}

.single-hotel-lightbox-img{
	max-width: 100%;
	max-height: 100%;
	border-radius: 12px;
	box-shadow: 0 20px 60px rgba(0,0,0,.5);
}

.single-hotel-lightbox-close,
.single-hotel-lightbox-nav{
	position: absolute;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: none;
	background: rgba(255,255,255,.12);
	color: #ffffff;
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease;
}

.single-hotel-lightbox-close:hover,
.single-hotel-lightbox-nav:hover{
	background: rgba(255,255,255,.22);
}

.single-hotel-lightbox-close{
	top: 24px;
	right: 24px;
}

.single-hotel-lightbox-nav{
	top: 50%;
	transform: translateY(-50%);
}

.single-hotel-lightbox-prev{ left: 24px; }
.single-hotel-lightbox-next{ right: 24px; }

body.single-hotel-lightbox-open{
	overflow: hidden;
}

/* single hotel lightbox ends */


/* single hotel enquiry modal starts */

.hotel-enquiry-modal{
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(6,13,32,.78);
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease;
}

.hotel-enquiry-modal.is-open{
	opacity: 1;
	visibility: visible;
}

.hotel-enquiry-modal-card{
	position: relative;
	width: 100%;
	max-width: 620px;
	max-height: 90vh;
	overflow-y: auto;
	background: #ffffff;
	border-radius: 24px;
	padding: 44px 40px 40px;
	box-shadow: 0 30px 80px rgba(0,0,0,.4);
	transform: translateY(24px) scale(.97);
	transition: transform .35s cubic-bezier(.22,1,.36,1);
}

.hotel-enquiry-modal.is-open .hotel-enquiry-modal-card{
	transform: translateY(0) scale(1);
}

.hotel-enquiry-modal-close{
	position: absolute;
	top: 20px;
	right: 20px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: none;
	background: #f5f2ea;
	color: #0d1f4d;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}

.hotel-enquiry-modal-close:hover{
	background: #d98a1f;
	color: #ffffff;
}

.hotel-enquiry-modal-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 10px;
}

.hotel-enquiry-modal-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 24px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 8px;
	padding-right: 30px;
}

.hotel-enquiry-modal-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	margin-bottom: 28px;
}

.hotel-enquiry-modal-form .enquiry-field-row{
	row-gap: 18px;
}

.hotel-enquiry-modal-form .enquiry-field label{
	color: #0d1f4d;
}

.hotel-enquiry-modal-form .enquiry-field input.wpcf7-form-control,
.hotel-enquiry-modal-form .enquiry-field select.wpcf7-form-control,
.hotel-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control{
	background: #faf7f0;
	border: 1.5px solid #ece4d3;
	border-radius: 14px;
}

.hotel-enquiry-modal-form .enquiry-field input.wpcf7-form-control:focus,
.hotel-enquiry-modal-form .enquiry-field select.wpcf7-form-control:focus,
.hotel-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control:focus{
	border-color: #d98a1f;
	box-shadow: 0 0 0 4px rgba(217,138,31,.14);
}

.hotel-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit{
	background: #d98a1f;
	box-shadow: 0 10px 24px rgba(217,138,31,.35);
}

.hotel-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit:hover{
	background: #c07a19;
	box-shadow: 0 14px 28px rgba(217,138,31,.45);
}

.hotel-enquiry-modal-form .wpcf7-response-output{
	margin: 18px 0 0 !important;
	border-radius: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
}

body.hotel-enquiry-modal-open{
	overflow: hidden;
}

/* single hotel enquiry modal ends */


/* SINGLE HOLIDAY PACKAGE PAGE */

/* single holiday package header starts (layout mirrors .single-hotel-wrap / .single-hotel-header) */

.single-holiday-package-wrap{
	padding: 150px 0 80px;
}

.single-holiday-package-breadcrumb{
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #6b7280;
	margin-bottom: 32px;
}

.single-holiday-package-breadcrumb a{
	color: #6b7280;
}

.single-holiday-package-breadcrumb a:hover{
	color: #1a56db;
}

.single-holiday-package-header{
	max-width: 780px;
	margin: 0 auto 32px;
	text-align: center;
}

.single-holiday-package-tag-badge{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #d98a1f;
	background: rgba(217,138,31,.1);
	padding: 6px 16px;
	border-radius: 999px;
	margin-bottom: 16px;
}

.single-holiday-package-header h1{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 18px;
}

.single-holiday-package-excerpt{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 0;
}

.single-holiday-package-main-img{
	border-radius: 18px;
	overflow: hidden;
	margin-bottom: 28px;
	background: #f7f9fd;
}

.single-holiday-package-main-img img{
	width: 100%;
	height: 500px;
	object-fit: cover;
	display: block;
}

.single-holiday-package-meta{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 780px;
	margin: 0 auto 40px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e5e9f2;
}

.single-holiday-package-meta-location,
.single-holiday-package-meta-date,
.single-holiday-package-meta-duration{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
}

.single-holiday-package-meta-location i,
.single-holiday-package-meta-date i,
.single-holiday-package-meta-duration i{
	color: #d98a1f;
}

.single-holiday-package-body-row{
	row-gap: 32px;
}

/* single holiday package header ends */


/* single holiday package body starts */

.single-holiday-package-content{
	color: #374151;
	font-size: 16px;
	line-height: 1.8;
}

.single-holiday-package-content p{
	color: #374151;
	margin-bottom: 20px;
}

.single-holiday-package-content ul,
.single-holiday-package-content ol{
	margin-bottom: 20px;
	padding-left: 22px;
}

.single-holiday-package-content li{
	margin-bottom: 10px;
}

.single-holiday-package-content h2,
.single-holiday-package-content h3{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	color: #0d1f4d;
	margin-bottom: 16px;
}

.single-holiday-package-content img{
	max-width: 100%;
	height: auto;
	border-radius: 14px;
	margin-bottom: 20px;
}

.single-holiday-package-sidebar-col{
	position: relative;
}

.single-holiday-package-side-card{
	background: #0d1f4d;
	border-radius: 20px;
	padding: 32px 28px;
	color: #ffffff;
}

.single-holiday-package-side-card.is-pinned{
	position: fixed;
	top: 100px;
	z-index: 5;
}

.single-holiday-package-side-card.is-pinned-bottom{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.single-holiday-package-side-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 19px;
	margin-bottom: 12px;
}

.single-holiday-package-side-card-desc{
	color: rgba(255,255,255,.7);
	font-size: 14px;
	line-height: 1.7;
	margin-bottom: 22px;
}

.single-holiday-package-side-card-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	border: none;
	background: #d98a1f;
	color: #ffffff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14px;
	padding: 14px 20px;
	border-radius: 999px;
	text-decoration: none;
	cursor: pointer;
	transition: background .25s ease, transform .2s ease, gap .2s ease;
}

.single-holiday-package-side-card-btn i{
	font-size: 12px;
	transition: transform .2s ease;
}

.single-holiday-package-side-card-btn:hover{
	background: #c07a19;
	color: #ffffff;
	gap: 11px;
	transform: translateY(-2px);
}

/* single holiday package body ends */


/* shared section heading used by both the itinerary and inclusions/exclusions sections below */

.single-holiday-package-section-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.single-holiday-package-section-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3vw, 36px);
	color: #0d1f4d;
	margin-bottom: 0;
}


/* single holiday package itinerary starts */


.single-holiday-package-itinerary{
	margin-top: 48px;
	padding-top: 40px;
	border-top: 1px solid #e5e9f2;
}

.single-holiday-package-itinerary .single-holiday-package-section-eyebrow,
.single-holiday-package-itinerary .single-holiday-package-section-title{
	text-align: left;
}

.single-holiday-package-itinerary .single-holiday-package-section-title{
	font-size: clamp(22px, 2.4vw, 28px);
}

.single-holiday-package-itinerary-list{
	margin-top: 28px;
}

.single-holiday-package-itinerary-item{
	position: relative;
	display: flex;
	align-items: center;
	gap: 24px;
	padding-bottom: 32px;
}

.single-holiday-package-itinerary-item:last-child{
	padding-bottom: 0;
}

.single-holiday-package-itinerary-day{
	position: relative;
	z-index: 1;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #0d1f4d;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	line-height: 1.2;
	padding: 4px;
}

.single-holiday-package-itinerary-card{
	flex: 1;
	min-width: 0;
	background: #ffffff;
	border-radius: 16px;
	padding: 22px 26px;
	box-shadow: 0 8px 24px rgba(13,31,77,.06);
}

.single-holiday-package-itinerary-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 17px;
	color: #0d1f4d;
	margin-bottom: 8px;
}

.single-holiday-package-itinerary-card-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.7;
}

/* single holiday package itinerary ends */


/* single holiday package inclusions/exclusions starts */

.single-holiday-package-incl-wrap{
	padding: 90px 0;
}

.single-holiday-package-incl-grid{
	margin-top: 44px;
	row-gap: 28px;
}

.single-holiday-package-incl-card{
	height: 100%;
	background: #f7f9fd;
	border-radius: 20px;
	padding: 32px 30px;
}

.single-holiday-package-incl-card-title{
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: #0d1f4d;
	margin-bottom: 20px;
}

.single-holiday-package-incl-card-title i{
	font-size: 16px;
}

.single-holiday-package-incl-list{
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.single-holiday-package-incl-list li{
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	color: #374151;
}

.single-holiday-package-incl-list i{
	margin-top: 3px;
	font-size: 13px;
	flex: 0 0 auto;
}

.single-holiday-package-incl-list.is-included i{
	color: #d98a1f;
}

.single-holiday-package-incl-list.is-excluded li{
	color: #9aa3b2;
}

.single-holiday-package-incl-list.is-excluded i{
	color: #c3c9d4;
}

/* single holiday package inclusions/exclusions ends */




.holiday-enquiry-modal{
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(6,13,32,.78);
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease;
}

.holiday-enquiry-modal.is-open{
	opacity: 1;
	visibility: visible;
}

.holiday-enquiry-modal-card{
	position: relative;
	width: 100%;
	max-width: 620px;
	max-height: 90vh;
	overflow-y: auto;
	background: #ffffff;
	border-radius: 24px;
	padding: 44px 40px 40px;
	box-shadow: 0 30px 80px rgba(0,0,0,.4);
	transform: translateY(24px) scale(.97);
	transition: transform .35s cubic-bezier(.22,1,.36,1);
}

.holiday-enquiry-modal.is-open .holiday-enquiry-modal-card{
	transform: translateY(0) scale(1);
}

.holiday-enquiry-modal-close{
	position: absolute;
	top: 20px;
	right: 20px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: none;
	background: #f5f2ea;
	color: #0d1f4d;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}

.holiday-enquiry-modal-close:hover{
	background: #d98a1f;
	color: #ffffff;
}

.holiday-enquiry-modal-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 10px;
}

.holiday-enquiry-modal-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 24px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 8px;
	padding-right: 30px;
}

.holiday-enquiry-modal-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	margin-bottom: 28px;
}

.holiday-enquiry-modal-form .enquiry-field-row{
	row-gap: 18px;
}

.holiday-enquiry-modal-form .enquiry-field label{
	color: #0d1f4d;
}

.holiday-enquiry-modal-form .enquiry-field input.wpcf7-form-control,
.holiday-enquiry-modal-form .enquiry-field select.wpcf7-form-control,
.holiday-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control{
	background: #faf7f0;
	border: 1.5px solid #ece4d3;
	border-radius: 14px;
}

.holiday-enquiry-modal-form .enquiry-field input.wpcf7-form-control:focus,
.holiday-enquiry-modal-form .enquiry-field select.wpcf7-form-control:focus,
.holiday-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control:focus{
	border-color: #d98a1f;
	box-shadow: 0 0 0 4px rgba(217,138,31,.14);
}

.holiday-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit{
	background: #d98a1f;
	box-shadow: 0 10px 24px rgba(217,138,31,.35);
}

.holiday-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit:hover{
	background: #c07a19;
	box-shadow: 0 14px 28px rgba(217,138,31,.45);
}

.holiday-enquiry-modal-form .wpcf7-response-output{
	margin: 18px 0 0 !important;
	border-radius: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
}

body.holiday-enquiry-modal-open{
	overflow: hidden;
}

/* single holiday package enquiry modal ends */


/* SINGLE VISA SERVICE PAGE */

/* single visa service header starts (layout mirrors .single-holiday-package-wrap / .single-holiday-package-header) */

.single-visa-service-wrap{
	padding: 150px 0 80px;
}

.single-visa-service-breadcrumb{
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #6b7280;
	margin-bottom: 32px;
}

.single-visa-service-breadcrumb a{
	color: #6b7280;
}

.single-visa-service-breadcrumb a:hover{
	color: #1a56db;
}

.single-visa-service-header{
	max-width: 780px;
	margin: 0 auto 32px;
	text-align: center;
}

.single-visa-service-header h1{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 18px;
}

.single-visa-service-excerpt{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 0;
}

.single-visa-service-main-img{
	border-radius: 18px;
	overflow: hidden;
	margin-bottom: 28px;
	background: #f7f9fd;
}

.single-visa-service-main-img img{
	width: 100%;
	height: 500px;
	object-fit: cover;
	display: block;
}

.single-visa-service-meta{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 780px;
	margin: 0 auto 40px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e5e9f2;
}

.single-visa-service-meta-item{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
}

.single-visa-service-meta-item i{
	color: #d98a1f;
}

.single-visa-service-body-row{
	row-gap: 32px;
}

/* single visa service header ends */


/* single visa service body starts */

.single-visa-service-content{
	color: #374151;
	font-size: 16px;
	line-height: 1.8;
}

.single-visa-service-content p{
	color: #374151;
	margin-bottom: 20px;
}

.single-visa-service-content ul,
.single-visa-service-content ol{
	margin-bottom: 20px;
	padding-left: 22px;
}

.single-visa-service-content li{
	margin-bottom: 10px;
}

.single-visa-service-content h2,
.single-visa-service-content h3{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	color: #0d1f4d;
	margin-bottom: 16px;
}

.single-visa-service-content img{
	max-width: 100%;
	height: auto;
	border-radius: 14px;
	margin-bottom: 20px;
}

.single-visa-service-sidebar-col{
	position: relative;
}

.single-visa-service-side-card{
	background: #0d1f4d;
	border-radius: 20px;
	padding: 32px 28px;
	color: #ffffff;
}

.single-visa-service-side-card.is-pinned{
	position: fixed;
	top: 100px;
	z-index: 5;
}

.single-visa-service-side-card.is-pinned-bottom{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.single-visa-service-side-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 19px;
	margin-bottom: 12px;
}

.single-visa-service-side-card-desc{
	color: rgba(255,255,255,.7);
	font-size: 14px;
	line-height: 1.7;
	margin-bottom: 22px;
}

.single-visa-service-side-card-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	border: none;
	background: #d98a1f;
	color: #ffffff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14px;
	padding: 14px 20px;
	border-radius: 999px;
	text-decoration: none;
	cursor: pointer;
	transition: background .25s ease, transform .2s ease, gap .2s ease;
}

.single-visa-service-side-card-btn i{
	font-size: 12px;
	transition: transform .2s ease;
}

.single-visa-service-side-card-btn:hover{
	background: #c07a19;
	color: #ffffff;
	gap: 11px;
	transform: translateY(-2px);
}

/* single visa service body ends */


/* shared section heading used by both the application process and requirements sections below */

.single-visa-service-section-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.single-visa-service-section-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3vw, 36px);
	color: #0d1f4d;
	margin-bottom: 0;
}


.single-visa-service-process{
	margin-top: 48px;
	padding-top: 40px;
	border-top: 1px solid #e5e9f2;
}

.single-visa-service-process .single-visa-service-section-eyebrow,
.single-visa-service-process .single-visa-service-section-title{
	text-align: left;
}

.single-visa-service-process .single-visa-service-section-title{
	font-size: clamp(22px, 2.4vw, 28px);
}

.single-visa-service-process-list{
	margin-top: 28px;
}

.single-visa-service-process-item{
	position: relative;
	display: flex;
	align-items: center;
	gap: 24px;
	padding-bottom: 32px;
}

.single-visa-service-process-item:last-child{
	padding-bottom: 0;
}

.single-visa-service-process-step{
	position: relative;
	z-index: 1;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #0d1f4d;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	line-height: 1.2;
	padding: 4px;
}

.single-visa-service-process-card{
	flex: 1;
	min-width: 0;
	background: #ffffff;
	border-radius: 16px;
	padding: 22px 26px;
	box-shadow: 0 8px 24px rgba(13,31,77,.06);
}

.single-visa-service-process-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 17px;
	color: #0d1f4d;
	margin-bottom: 8px;
}

.single-visa-service-process-card-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.7;
}

/* single visa service application process ends */


/* single visa service requirements (documents/eligibility) starts */

.single-visa-service-req-wrap{
	padding: 90px 0;
	background: #f7f9fd;
}

.single-visa-service-req-grid{
	margin-top: 44px;
	row-gap: 28px;
}

.single-visa-service-req-card{
	height: 100%;
	background: #ffffff;
	border-radius: 20px;
	padding: 32px 30px;
}

.single-visa-service-req-card-title{
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 18px;
	color: #0d1f4d;
	margin-bottom: 20px;
}

.single-visa-service-req-card-title i{
	font-size: 16px;
	color: #d98a1f;
}

.single-visa-service-req-list{
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.single-visa-service-req-list li{
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	color: #374151;
}

.single-visa-service-req-list i{
	margin-top: 3px;
	font-size: 13px;
	flex: 0 0 auto;
	color: #d98a1f;
}

/* single visa service requirements ends */




.visa-enquiry-modal{
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(6,13,32,.78);
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease;
}

.visa-enquiry-modal.is-open{
	opacity: 1;
	visibility: visible;
}

.visa-enquiry-modal-card{
	position: relative;
	width: 100%;
	max-width: 620px;
	max-height: 90vh;
	overflow-y: auto;
	background: #ffffff;
	border-radius: 24px;
	padding: 44px 40px 40px;
	box-shadow: 0 30px 80px rgba(0,0,0,.4);
	transform: translateY(24px) scale(.97);
	transition: transform .35s cubic-bezier(.22,1,.36,1);
}

.visa-enquiry-modal.is-open .visa-enquiry-modal-card{
	transform: translateY(0) scale(1);
}

.visa-enquiry-modal-close{
	position: absolute;
	top: 20px;
	right: 20px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: none;
	background: #f5f2ea;
	color: #0d1f4d;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}

.visa-enquiry-modal-close:hover{
	background: #d98a1f;
	color: #ffffff;
}

.visa-enquiry-modal-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 10px;
}

.visa-enquiry-modal-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 24px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 8px;
	padding-right: 30px;
}

.visa-enquiry-modal-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	margin-bottom: 28px;
}

.visa-enquiry-modal-form .enquiry-field-row{
	row-gap: 18px;
}

.visa-enquiry-modal-form .enquiry-field label{
	color: #0d1f4d;
}

.visa-enquiry-modal-form .enquiry-field input.wpcf7-form-control,
.visa-enquiry-modal-form .enquiry-field select.wpcf7-form-control,
.visa-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control{
	background: #faf7f0;
	border: 1.5px solid #ece4d3;
	border-radius: 14px;
}

.visa-enquiry-modal-form .enquiry-field input.wpcf7-form-control:focus,
.visa-enquiry-modal-form .enquiry-field select.wpcf7-form-control:focus,
.visa-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control:focus{
	border-color: #d98a1f;
	box-shadow: 0 0 0 4px rgba(217,138,31,.14);
}

.visa-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit{
	background: #d98a1f;
	box-shadow: 0 10px 24px rgba(217,138,31,.35);
}

.visa-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit:hover{
	background: #c07a19;
	box-shadow: 0 14px 28px rgba(217,138,31,.45);
}

.visa-enquiry-modal-form .wpcf7-response-output{
	margin: 18px 0 0 !important;
	border-radius: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
}

body.visa-enquiry-modal-open{
	overflow: hidden;
}

/* single visa service enquiry modal ends */


/* SINGLE ACTIVITY PAGE */

/* single activity header starts (layout mirrors .single-visa-service-wrap / .single-visa-service-header) */

.single-activity-wrap{
	padding: 150px 0 80px;
}

.single-activity-breadcrumb{
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #6b7280;
	margin-bottom: 32px;
}

.single-activity-breadcrumb a{
	color: #6b7280;
}

.single-activity-breadcrumb a:hover{
	color: #1a56db;
}

.single-activity-header{
	max-width: 780px;
	margin: 0 auto 32px;
	text-align: center;
}

.single-activity-header h1{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 18px;
}

.single-activity-excerpt{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 0;
}

.single-activity-main-img{
	border-radius: 18px;
	overflow: hidden;
	margin-bottom: 28px;
	background: #f7f9fd;
}

.single-activity-main-img img{
	width: 100%;
	height: 500px;
	object-fit: cover;
	display: block;
}

.single-activity-meta{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 780px;
	margin: 0 auto 40px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e5e9f2;
}

.single-activity-meta-item{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
}

.single-activity-meta-item i{
	color: #d98a1f;
}

.single-activity-body-row{
	row-gap: 32px;
}

/* single activity header ends */


/* single activity body starts */

.single-activity-content{
	color: #374151;
	font-size: 16px;
	line-height: 1.8;
}

.single-activity-content p{
	color: #374151;
	margin-bottom: 20px;
}

.single-activity-content ul,
.single-activity-content ol{
	margin-bottom: 20px;
	padding-left: 22px;
}

.single-activity-content li{
	margin-bottom: 10px;
}

.single-activity-content h2,
.single-activity-content h3{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	color: #0d1f4d;
	margin-bottom: 16px;
}

.single-activity-content img{
	max-width: 100%;
	height: auto;
	border-radius: 14px;
	margin-bottom: 20px;
}

.single-activity-sidebar-col{
	position: relative;
}

.single-activity-side-card{
	background: #0d1f4d;
	border-radius: 20px;
	padding: 32px 28px;
	color: #ffffff;
}

.single-activity-side-card.is-pinned{
	position: fixed;
	top: 100px;
	z-index: 5;
}

.single-activity-side-card.is-pinned-bottom{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.single-activity-side-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 19px;
	margin-bottom: 12px;
}

.single-activity-side-card-desc{
	color: rgba(255,255,255,.7);
	font-size: 14px;
	line-height: 1.7;
	margin-bottom: 22px;
}

.single-activity-side-card-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	border: none;
	background: #d98a1f;
	color: #ffffff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14px;
	padding: 14px 20px;
	border-radius: 999px;
	text-decoration: none;
	cursor: pointer;
	transition: background .25s ease, transform .2s ease, gap .2s ease;
}

.single-activity-side-card-btn i{
	font-size: 12px;
	transition: transform .2s ease;
}

.single-activity-side-card-btn:hover{
	background: #c07a19;
	color: #ffffff;
	gap: 11px;
	transform: translateY(-2px);
}

/* single activity body ends */


/* shared section heading used by the highlights and gallery sections below */

.single-activity-section-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.single-activity-section-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(26px, 3vw, 36px);
	color: #0d1f4d;
	margin-bottom: 0;
}


.single-activity-highlights{
	margin-top: 48px;
	padding-top: 40px;
	border-top: 1px solid #e5e9f2;
}

.single-activity-highlights .single-activity-section-eyebrow,
.single-activity-highlights .single-activity-section-title{
	text-align: left;
}

.single-activity-highlights .single-activity-section-title{
	font-size: clamp(22px, 2.4vw, 28px);
}

.single-activity-highlights-list{
	list-style: none;
	margin: 28px 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.single-activity-highlights-list li{
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	color: #374151;
}

.single-activity-highlights-list i{
	margin-top: 3px;
	font-size: 13px;
	flex: 0 0 auto;
	color: #d98a1f;
}

/* single activity highlights ends */


/* single activity gallery starts (same implementation as .single-hotel-gallery-wrap) */

.single-activity-gallery-wrap{
	background: #f7f9fd;
	padding: 90px 0;
}

.single-activity-gallery-row{
	margin-top: 44px;
	row-gap: 24px;
}

.single-activity-gallery-item{
	position: relative;
	display: block;
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #eef1f6;
}

.single-activity-gallery-item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}

.single-activity-gallery-item-zoom{
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(13,31,77,0);
	color: #ffffff;
	font-size: 18px;
	opacity: 0;
	transition: background .3s ease, opacity .3s ease;
}

.single-activity-gallery-item:hover img{
	transform: scale(1.08);
}

.single-activity-gallery-item:hover .single-activity-gallery-item-zoom{
	background: rgba(13,31,77,.45);
	opacity: 1;
}

/* single activity gallery ends */


/* single activity lightbox starts (same implementation as .single-hotel-lightbox) */

.single-activity-lightbox{
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(6,13,32,.92);
	opacity: 0;
	visibility: hidden;
	transition: opacity .25s ease, visibility .25s ease;
	padding: 40px;
}

.single-activity-lightbox.is-open{
	opacity: 1;
	visibility: visible;
}

.single-activity-lightbox-img{
	max-width: 100%;
	max-height: 100%;
	border-radius: 12px;
	box-shadow: 0 20px 60px rgba(0,0,0,.5);
}

.single-activity-lightbox-close,
.single-activity-lightbox-nav{
	position: absolute;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: none;
	background: rgba(255,255,255,.12);
	color: #ffffff;
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease;
}

.single-activity-lightbox-close:hover,
.single-activity-lightbox-nav:hover{
	background: rgba(255,255,255,.22);
}

.single-activity-lightbox-close{
	top: 24px;
	right: 24px;
}

.single-activity-lightbox-nav{
	top: 50%;
	transform: translateY(-50%);
}

.single-activity-lightbox-prev{ left: 24px; }
.single-activity-lightbox-next{ right: 24px; }

body.single-activity-lightbox-open{
	overflow: hidden;
}

/* single activity lightbox ends */



.activity-enquiry-modal{
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(6,13,32,.78);
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease;
}

.activity-enquiry-modal.is-open{
	opacity: 1;
	visibility: visible;
}

.activity-enquiry-modal-card{
	position: relative;
	width: 100%;
	max-width: 620px;
	max-height: 90vh;
	overflow-y: auto;
	background: #ffffff;
	border-radius: 24px;
	padding: 44px 40px 40px;
	box-shadow: 0 30px 80px rgba(0,0,0,.4);
	transform: translateY(24px) scale(.97);
	transition: transform .35s cubic-bezier(.22,1,.36,1);
}

.activity-enquiry-modal.is-open .activity-enquiry-modal-card{
	transform: translateY(0) scale(1);
}

.activity-enquiry-modal-close{
	position: absolute;
	top: 20px;
	right: 20px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: none;
	background: #f5f2ea;
	color: #0d1f4d;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}

.activity-enquiry-modal-close:hover{
	background: #d98a1f;
	color: #ffffff;
}

.activity-enquiry-modal-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 10px;
}

.activity-enquiry-modal-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 24px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 8px;
	padding-right: 30px;
}

.activity-enquiry-modal-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	margin-bottom: 28px;
}

.activity-enquiry-modal-form .enquiry-field-row{
	row-gap: 18px;
}

.activity-enquiry-modal-form .enquiry-field label{
	color: #0d1f4d;
}

.activity-enquiry-modal-form .enquiry-field input.wpcf7-form-control,
.activity-enquiry-modal-form .enquiry-field select.wpcf7-form-control,
.activity-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control{
	background: #faf7f0;
	border: 1.5px solid #ece4d3;
	border-radius: 14px;
}

.activity-enquiry-modal-form .enquiry-field input.wpcf7-form-control:focus,
.activity-enquiry-modal-form .enquiry-field select.wpcf7-form-control:focus,
.activity-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control:focus{
	border-color: #d98a1f;
	box-shadow: 0 0 0 4px rgba(217,138,31,.14);
}

.activity-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit{
	background: #d98a1f;
	box-shadow: 0 10px 24px rgba(217,138,31,.35);
}

.activity-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit:hover{
	background: #c07a19;
	box-shadow: 0 14px 28px rgba(217,138,31,.45);
}

.activity-enquiry-modal-form .wpcf7-response-output{
	margin: 18px 0 0 !important;
	border-radius: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
}

body.activity-enquiry-modal-open{
	overflow: hidden;
}

/* single activity enquiry modal ends */


/* SINGLE FLIGHT PAGE */

/* single flight header starts (layout mirrors .single-activity-wrap / .single-activity-header) */

.single-flight-wrap{
	padding: 150px 0 80px;
}

.single-flight-breadcrumb{
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: #6b7280;
	margin-bottom: 32px;
}

.single-flight-breadcrumb a{
	color: #6b7280;
}

.single-flight-breadcrumb a:hover{
	color: #1a56db;
}

.single-flight-header{
	max-width: 780px;
	margin: 0 auto 32px;
	text-align: center;
}

.single-flight-header h1{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 18px;
}

.single-flight-excerpt{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 0;
}

.single-flight-route-card{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(16px, 4vw, 48px);
	max-width: 780px;
	margin: 0 auto 28px;
	background: #0d1f4d;
	border-radius: 20px;
	padding: 32px clamp(20px, 5vw, 48px);
}

.single-flight-route-point{
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 0 0 auto;
}

.single-flight-route-code{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(22px, 4vw, 30px);
	color: #ffffff;
	line-height: 1.2;
}

.single-flight-route-city{
	font-family: "Roboto", sans-serif;
	font-size: 13px;
	color: rgba(255,255,255,.6);
	margin-top: 4px;
}

.single-flight-route-line{
	flex: 1 1 auto;
	min-width: 60px;
	max-width: 220px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.single-flight-route-line-label{
	font-family: "Roboto", sans-serif;
	font-size: 12px;
	white-space: nowrap;
	color: rgba(255,255,255,.6);
}

.single-flight-route-line-track{
	position: relative;
	width: 100%;
	height: 1px;
	border-top: 1.5px dashed rgba(255,255,255,.3);
	display: flex;
	align-items: center;
	justify-content: center;
}

.single-flight-route-line-track i{
	position: relative;
	background: #0d1f4d;
	color: #d98a1f;
	font-size: 15px;
	padding: 0 10px;
	transform: rotate(90deg);
}

/* route card ends */

.single-flight-meta{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 780px;
	margin: 0 auto 40px;
	padding-bottom: 24px;
	border-bottom: 1px solid #e5e9f2;
}

.single-flight-meta-item{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14px;
}

.single-flight-meta-item i{
	color: #d98a1f;
}

.single-flight-meta-price{
	font-weight: 700;
	color: #0d1f4d;
}

.single-flight-body-row{
	row-gap: 32px;
}

/* single flight header ends */


/* single flight body starts */

.single-flight-content{
	color: #374151;
	font-size: 16px;
	line-height: 1.8;
}

.single-flight-content p{
	color: #374151;
	margin-bottom: 20px;
}

.single-flight-content ul,
.single-flight-content ol{
	margin-bottom: 20px;
	padding-left: 22px;
}

.single-flight-content li{
	margin-bottom: 10px;
}

.single-flight-content h2,
.single-flight-content h3{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	color: #0d1f4d;
	margin-bottom: 16px;
}

.single-flight-content img{
	max-width: 100%;
	height: auto;
	border-radius: 14px;
	margin-bottom: 20px;
}

.single-flight-sidebar-col{
	position: relative;
}

.single-flight-side-card{
	background: #0d1f4d;
	border-radius: 20px;
	padding: 32px 28px;
	color: #ffffff;
}

.single-flight-side-card.is-pinned{
	position: fixed;
	top: 100px;
	z-index: 5;
}

.single-flight-side-card.is-pinned-bottom{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

.single-flight-side-card-title{
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 19px;
	margin-bottom: 12px;
}

.single-flight-side-card-desc{
	color: rgba(255,255,255,.7);
	font-size: 14px;
	line-height: 1.7;
	margin-bottom: 22px;
}

.single-flight-side-card-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	border: none;
	background: #d98a1f;
	color: #ffffff;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 14px;
	padding: 14px 20px;
	border-radius: 999px;
	text-decoration: none;
	cursor: pointer;
	transition: background .25s ease, transform .2s ease, gap .2s ease;
}

.single-flight-side-card-btn i{
	font-size: 12px;
	transition: transform .2s ease;
}

.single-flight-side-card-btn:hover{
	background: #c07a19;
	color: #ffffff;
	gap: 11px;
	transform: translateY(-2px);
}

/* single flight body ends */

.single-flight-includes{
	margin-top: 48px;
	padding-top: 40px;
	border-top: 1px solid #e5e9f2;
}

.single-flight-section-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 14px;
}

.single-flight-section-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: clamp(22px, 2.4vw, 28px);
	color: #0d1f4d;
	margin-bottom: 0;
}

.single-flight-includes-list{
	list-style: none;
	margin: 28px 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.single-flight-includes-list li{
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	color: #374151;
}

.single-flight-includes-list i{
	margin-top: 3px;
	font-size: 13px;
	flex: 0 0 auto;
	color: #d98a1f;
}

/* single flight fare includes ends */



.flight-enquiry-modal{
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(6,13,32,.78);
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease;
}

.flight-enquiry-modal.is-open{
	opacity: 1;
	visibility: visible;
}

.flight-enquiry-modal-card{
	position: relative;
	width: 100%;
	max-width: 620px;
	max-height: 90vh;
	overflow-y: auto;
	background: #ffffff;
	border-radius: 24px;
	padding: 44px 40px 40px;
	box-shadow: 0 30px 80px rgba(0,0,0,.4);
	transform: translateY(24px) scale(.97);
	transition: transform .35s cubic-bezier(.22,1,.36,1);
}

.flight-enquiry-modal.is-open .flight-enquiry-modal-card{
	transform: translateY(0) scale(1);
}

.flight-enquiry-modal-close{
	position: absolute;
	top: 20px;
	right: 20px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: none;
	background: #f5f2ea;
	color: #0d1f4d;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}

.flight-enquiry-modal-close:hover{
	background: #d98a1f;
	color: #ffffff;
}

.flight-enquiry-modal-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #d98a1f;
	margin-bottom: 10px;
}

.flight-enquiry-modal-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 24px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 8px;
	padding-right: 30px;
}

.flight-enquiry-modal-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	margin-bottom: 28px;
}

.flight-enquiry-modal-form .enquiry-field-row{
	row-gap: 18px;
}

.flight-enquiry-modal-form .enquiry-field label{
	color: #0d1f4d;
}

.flight-enquiry-modal-form .enquiry-field input.wpcf7-form-control,
.flight-enquiry-modal-form .enquiry-field select.wpcf7-form-control,
.flight-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control{
	background: #faf7f0;
	border: 1.5px solid #ece4d3;
	border-radius: 14px;
}

.flight-enquiry-modal-form .enquiry-field input.wpcf7-form-control:focus,
.flight-enquiry-modal-form .enquiry-field select.wpcf7-form-control:focus,
.flight-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control:focus{
	border-color: #d98a1f;
	box-shadow: 0 0 0 4px rgba(217,138,31,.14);
}

.flight-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit{
	background: #d98a1f;
	box-shadow: 0 10px 24px rgba(217,138,31,.35);
}

.flight-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit:hover{
	background: #c07a19;
	box-shadow: 0 14px 28px rgba(217,138,31,.45);
}

.flight-enquiry-modal-form .wpcf7-response-output{
	margin: 18px 0 0 !important;
	border-radius: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
}

body.flight-enquiry-modal-open{
	overflow: hidden;
}

/* single flight enquiry modal ends */


/* SITE ENQUIRY MODAL (sitewide, triggered from the header "Send Enquiry" button) */

.site-enquiry-modal{
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(6,13,32,.78);
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s ease, visibility .3s ease;
}

.site-enquiry-modal.is-open{
	opacity: 1;
	visibility: visible;
}

.site-enquiry-modal-card{
	position: relative;
	width: 100%;
	max-width: 620px;
	max-height: 90vh;
	overflow-y: auto;
	background: #ffffff;
	border-radius: 24px;
	padding: 44px 40px 40px;
	box-shadow: 0 30px 80px rgba(0,0,0,.4);
	transform: translateY(24px) scale(.97);
	transition: transform .35s cubic-bezier(.22,1,.36,1);
}

.site-enquiry-modal.is-open .site-enquiry-modal-card{
	transform: translateY(0) scale(1);
}

.site-enquiry-modal-close{
	position: absolute;
	top: 20px;
	right: 20px;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: none;
	background: #eef1f6;
	color: #0d1f4d;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .2s ease, color .2s ease;
}

.site-enquiry-modal-close:hover{
	background: #0f2967;
	color: #ffffff;
}

.site-enquiry-modal-eyebrow{
	display: inline-block;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 12px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #2a5fe0;
	margin-bottom: 10px;
}

.site-enquiry-modal-title{
	font-family: "Poppins", sans-serif;
	font-weight: 800;
	font-size: 24px;
	line-height: 1.3;
	color: #0d1f4d;
	margin-bottom: 8px;
	padding-right: 30px;
}

.site-enquiry-modal-desc{
	color: #6b7280;
	font-family: "Roboto", sans-serif;
	font-size: 14.5px;
	line-height: 1.6;
	margin-bottom: 28px;
}

.site-enquiry-modal-form .enquiry-field-row{
	row-gap: 18px;
}

.site-enquiry-modal-form .enquiry-field label{
	color: #0d1f4d;
}

.site-enquiry-modal-form .enquiry-field input.wpcf7-form-control,
.site-enquiry-modal-form .enquiry-field select.wpcf7-form-control,
.site-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control{
	background: #f5f7fc;
	border: 1.5px solid #e2e6ee;
	border-radius: 14px;
}

.site-enquiry-modal-form .enquiry-field input.wpcf7-form-control:focus,
.site-enquiry-modal-form .enquiry-field select.wpcf7-form-control:focus,
.site-enquiry-modal-form .enquiry-field textarea.wpcf7-form-control:focus{
	border-color: #0f2967;
	box-shadow: 0 0 0 4px rgba(15,41,103,.12);
}

.site-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit{
	background: #0f2967;
	box-shadow: 0 10px 24px rgba(15,41,103,.35);
}

.site-enquiry-modal-form .enquiry-field-submit input.wpcf7-submit:hover{
	background: #2a5fe0;
	box-shadow: 0 14px 28px rgba(15,41,103,.45);
}

.site-enquiry-modal-form .wpcf7-response-output{
	margin: 18px 0 0 !important;
	border-radius: 12px;
	font-family: "Roboto", sans-serif;
	font-size: 13.5px;
}

body.site-enquiry-modal-open{
	overflow: hidden;
}

/* site enquiry modal ends */



/* inner service section start  */

.inner-service-section {
    background: #f5f2ea;
    padding: 80px 0;
}

.inner-service-section .col-lg-4,
.inner-service-section .col-md-6 {
    margin-bottom: 32px;
}

.inner-service-section-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    border-radius: 20px;
    border-bottom-left-radius: 0;
    padding: 20px 0 0;
    height: 100%;
    overflow: visible;
}

.inner-service-section-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    margin: 0 15px 0;
    flex-shrink: 0;
}

.inner-service-section-card-icon img {
    width: 50px;
    height: 50px;
    object-fit: cover;
}

.inner-service-section-card-title {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    margin: 15px;
    flex-shrink: 0;
}

.inner-service-section-card-desc {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 15px 20px;
    flex: 1;
}

.inner-service-section-card-btn {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 700;
    width: fit-content;
    padding: 10px 18px;
    border-radius: 50px;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease, transform .3s ease, box-shadow .3s ease, gap .3s ease;
}

.inner-service-section-card-btn:hover {
    gap: 9px;
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, .18);
}

.inner-service-section-card-btn i {
    transition: transform .3s ease, opacity .3s ease;
}

.inner-service-section-card-btn i:nth-of-type(2) {
    margin-left: -9px;
    opacity: .55;
}

.inner-service-section-card-btn:hover i:nth-of-type(1) {
    transform: translateX(3px);
}

.inner-service-section-card-btn:hover i:nth-of-type(2) {
    transform: translateX(5px);
    opacity: 1;
    transition-delay: .06s;
}

.inner-service-section-card-notch {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 160px;
    height: 50px;
    background: #f5f2ea;
    border-top-right-radius: 24px;
    z-index: 1;
    pointer-events: none;
    margin-top: 20px;
}

/* --- COLOR CYCLE (white / light green / dark green, repeating) --- */
.col-lg-4:nth-child(3n+1) .inner-service-section-card {
    background: #004aff47;
}

.col-lg-4:nth-child(3n+1) .inner-service-section-card-icon, 
.col-lg-4:nth-child(3n+1) .inner-service-section-card-title {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-service-section-card-desc {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-service-section-card-btn {
    background: #004aff47;
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-service-section-card-btn:hover {
    background: #0d1f4d;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-service-section-card {
    background: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-service-section-card-icon {
    filter: invert(1);
}

.col-lg-4:nth-child(3n+2) .inner-service-section-card-title {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-service-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n+2) .inner-service-section-card-btn {
    background: #2a5fe0;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-service-section-card-btn:hover {
    background: #ffffff;
    color: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-service-section-card-notch {
    background: #f5f2ea;
}

.col-lg-4:nth-child(3n) .inner-service-section-card {
    background: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-service-section-card-icon {
    filter: invert(1);
}

.col-lg-4:nth-child(3n) .inner-service-section-card-title {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-service-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-service-section-card-btn {
    background: #0f2967;
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-service-section-card-btn:hover {
    background: #ffffff;
    color: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-service-section-card-notch {
    background: #f5f2ea;
}

/* services cards: corner-hinge swing-in + inner cascade + magnetic button (.svc-anim-ready gate = JS) */
.inner-service-section.svc-anim-ready .inner-service-section-card {
	opacity: 0;
	transform-origin: bottom left;
	transform: translateY(30px) rotate(-4deg) scale(.94);
	transition: opacity .55s ease, transform .75s cubic-bezier(.19, 1, .22, 1);
	will-change: transform, opacity;
}

.inner-service-section.svc-anim-ready .inner-service-section-card.is-in {
	opacity: 1;
	transform: none;
	will-change: auto;
}

.inner-service-section.svc-anim-ready .inner-service-section-card-icon,
.inner-service-section.svc-anim-ready .inner-service-section-card-title,
.inner-service-section.svc-anim-ready .inner-service-section-card-desc {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .45s ease, transform .5s cubic-bezier(.19, 1, .22, 1);
}

.inner-service-section.svc-anim-ready .inner-service-section-card-notch {
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .5s cubic-bezier(.19, 1, .22, 1);
}

.inner-service-section.svc-anim-ready .inner-service-section-card.is-in .inner-service-section-card-notch {
	transform: scaleX(1);
}

.inner-service-section.svc-anim-ready .inner-service-section-card.is-in .inner-service-section-card-icon {
	opacity: 1;
	transform: none;
	transition-delay: .14s;
}

.inner-service-section.svc-anim-ready .inner-service-section-card.is-in .inner-service-section-card-title {
	opacity: 1;
	transform: none;
	transition-delay: .2s;
}

.inner-service-section.svc-anim-ready .inner-service-section-card.is-in .inner-service-section-card-desc {
	opacity: 1;
	transform: none;
	transition-delay: .26s;
}

/* magnetic button: base transitions re-listed + translate spring (desktop) */
.inner-service-section.svc-magnetic .inner-service-section-card-btn {
	transition: background-color .3s ease, color .3s ease, transform .3s ease,
	            box-shadow .3s ease, gap .3s ease, translate .25s ease-out;
}

@media (prefers-reduced-motion: reduce) {
	.inner-service-section.svc-anim-ready .inner-service-section-card,
	.inner-service-section.svc-anim-ready .inner-service-section-card-icon,
	.inner-service-section.svc-anim-ready .inner-service-section-card-title,
	.inner-service-section.svc-anim-ready .inner-service-section-card-desc,
	.inner-service-section.svc-anim-ready .inner-service-section-card-notch {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}


/* inner service section end  */


/* ---------------------------------------------------------------------------
   Shared listing-grid reveal — the exact same animation as the services grid
   above (corner-hinge swing-in + inner cascade + magnetic button), reused on
   the activities, holiday-package, hotel, visa-service and flight listing
   pages. assets/js/listing-reveal.js adds the .svc-anim-ready / .svc-magnetic
   gate classes and the per-card .is-in, just like page-services.php does.
   The inner banner animation is already generic (.inner-about-banner-wrap),
   so it needs no extra rules here.
--------------------------------------------------------------------------- */

/* card: hinge from the bottom-left corner and swing up into place */
.inner-activities-section.svc-anim-ready .inner-activities-section-card,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card,
.inner-flight-section.svc-anim-ready .inner-flight-section-card {
	opacity: 0;
	transform-origin: bottom left;
	transform: translateY(30px) rotate(-4deg) scale(.94);
	transition: opacity .55s ease, transform .75s cubic-bezier(.19, 1, .22, 1);
	will-change: transform, opacity;
}

.inner-activities-section.svc-anim-ready .inner-activities-section-card.is-in,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card.is-in,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card.is-in,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card.is-in,
.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in {
	opacity: 1;
	transform: none;
	will-change: auto;
}

/* inner elements: start offset, then cascade once the card lands */
.inner-activities-section.svc-anim-ready .inner-activities-section-card-icon,
.inner-activities-section.svc-anim-ready .inner-activities-section-card-meta,
.inner-activities-section.svc-anim-ready .inner-activities-section-card-title,
.inner-activities-section.svc-anim-ready .inner-activities-section-card-desc,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-icon,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-meta,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-title,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-desc,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-icon,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-meta,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-title,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-desc,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-icon,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-meta,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-title,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-desc,
.inner-flight-section.svc-anim-ready .inner-flight-section-card-icon,
.inner-flight-section.svc-anim-ready .inner-flight-section-card-route,
.inner-flight-section.svc-anim-ready .inner-flight-section-card-meta,
.inner-flight-section.svc-anim-ready .inner-flight-section-card-title,
.inner-flight-section.svc-anim-ready .inner-flight-section-card-desc,
.inner-flight-section.svc-anim-ready .inner-flight-section-card-price {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .45s ease, transform .5s cubic-bezier(.19, 1, .22, 1);
}

.inner-activities-section.svc-anim-ready .inner-activities-section-card-notch,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-notch,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-notch,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-notch,
.inner-flight-section.svc-anim-ready .inner-flight-section-card-notch {
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .5s cubic-bezier(.19, 1, .22, 1);
}

.inner-activities-section.svc-anim-ready .inner-activities-section-card.is-in .inner-activities-section-card-notch,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card.is-in .inner-holiday-package-section-card-notch,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card.is-in .inner-hotel-section-card-notch,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card.is-in .inner-visa-service-section-card-notch,
.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in .inner-flight-section-card-notch {
	transform: scaleX(1);
}

/* cascade order: icon -> meta / route -> title -> desc -> price */
.inner-activities-section.svc-anim-ready .inner-activities-section-card.is-in .inner-activities-section-card-icon,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card.is-in .inner-holiday-package-section-card-icon,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card.is-in .inner-hotel-section-card-icon,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card.is-in .inner-visa-service-section-card-icon,
.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in .inner-flight-section-card-icon {
	opacity: 1;
	transform: none;
	transition-delay: .14s;
}

.inner-activities-section.svc-anim-ready .inner-activities-section-card.is-in .inner-activities-section-card-meta,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card.is-in .inner-holiday-package-section-card-meta,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card.is-in .inner-hotel-section-card-meta,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card.is-in .inner-visa-service-section-card-meta,
.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in .inner-flight-section-card-route,
.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in .inner-flight-section-card-meta {
	opacity: 1;
	transform: none;
	transition-delay: .2s;
}

.inner-activities-section.svc-anim-ready .inner-activities-section-card.is-in .inner-activities-section-card-title,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card.is-in .inner-holiday-package-section-card-title,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card.is-in .inner-hotel-section-card-title,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card.is-in .inner-visa-service-section-card-title,
.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in .inner-flight-section-card-title {
	opacity: 1;
	transform: none;
	transition-delay: .26s;
}

.inner-activities-section.svc-anim-ready .inner-activities-section-card.is-in .inner-activities-section-card-desc,
.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card.is-in .inner-holiday-package-section-card-desc,
.inner-hotel-section.svc-anim-ready .inner-hotel-section-card.is-in .inner-hotel-section-card-desc,
.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card.is-in .inner-visa-service-section-card-desc,
.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in .inner-flight-section-card-desc {
	opacity: 1;
	transform: none;
	transition-delay: .32s;
}

.inner-flight-section.svc-anim-ready .inner-flight-section-card.is-in .inner-flight-section-card-price {
	opacity: 1;
	transform: none;
	transition-delay: .38s;
}

/* magnetic button: base transitions re-listed + translate spring (desktop) */
.inner-activities-section.svc-magnetic .inner-activities-section-card-btn,
.inner-holiday-package-section.svc-magnetic .inner-holiday-package-section-card-btn,
.inner-hotel-section.svc-magnetic .inner-hotel-section-card-btn,
.inner-visa-service-section.svc-magnetic .inner-visa-service-section-card-btn,
.inner-flight-section.svc-magnetic .inner-flight-section-card-btn {
	transition: background-color .3s ease, color .3s ease, transform .3s ease,
	            box-shadow .3s ease, gap .3s ease, translate .25s ease-out;
}

@media (prefers-reduced-motion: reduce) {
	.inner-activities-section.svc-anim-ready .inner-activities-section-card,
	.inner-activities-section.svc-anim-ready .inner-activities-section-card-icon,
	.inner-activities-section.svc-anim-ready .inner-activities-section-card-meta,
	.inner-activities-section.svc-anim-ready .inner-activities-section-card-title,
	.inner-activities-section.svc-anim-ready .inner-activities-section-card-desc,
	.inner-activities-section.svc-anim-ready .inner-activities-section-card-notch,
	.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card,
	.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-icon,
	.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-meta,
	.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-title,
	.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-desc,
	.inner-holiday-package-section.svc-anim-ready .inner-holiday-package-section-card-notch,
	.inner-hotel-section.svc-anim-ready .inner-hotel-section-card,
	.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-icon,
	.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-meta,
	.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-title,
	.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-desc,
	.inner-hotel-section.svc-anim-ready .inner-hotel-section-card-notch,
	.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card,
	.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-icon,
	.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-meta,
	.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-title,
	.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-desc,
	.inner-visa-service-section.svc-anim-ready .inner-visa-service-section-card-notch,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card-icon,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card-route,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card-meta,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card-title,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card-desc,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card-price,
	.inner-flight-section.svc-anim-ready .inner-flight-section-card-notch {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}


/* inner holiday package section start  */

.inner-holiday-package-section {
    background: #f5f2ea;
    padding: 80px 0;
}

.inner-holiday-package-section-filters {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 45px;
}

.inner-holiday-package-section-filter-btn {
    display: inline-flex;
    align-items: center;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.15);
    color: #333;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 24px;
    border-radius: 50px;
    cursor: pointer;
    transition: all 0.25s ease;
}

.inner-holiday-package-section-filter-btn:hover {
    border-color: #2a5fe0;
    color: #2a5fe0;
}

.inner-holiday-package-section-filter-btn.active {
    background: #2a5fe0;
    border-color: #2a5fe0;
    color: #fff;
}

.inner-holiday-package-section .col-lg-4,
.inner-holiday-package-section .col-md-6 {
    margin-bottom: 32px;
}

.inner-holiday-package-section-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    border-radius: 20px;
    border-bottom-left-radius: 0;
    padding: 20px 0 0;
    height: 100%;
    overflow: visible;
}

.inner-holiday-package-section-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 15px 15px;
    flex-shrink: 0;
}

.inner-holiday-package-section-card-icon img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 20px;
}

.inner-holiday-package-section-card-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0 15px 8px;
}

.inner-holiday-package-section-card-location {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    opacity: 0.85;
}

.inner-holiday-package-section-card-location i {
    font-size: 12px;
}

.inner-holiday-package-section-card-date {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    opacity: 0.85;
}

.inner-holiday-package-section-card-date i {
    font-size: 12px;
}

.inner-holiday-package-section-card-title {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    margin: 15px;
    flex-shrink: 0;
}

.inner-holiday-package-section-card-desc {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 15px 20px;
    flex: 1;
}

.inner-holiday-package-section-card-btn {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 700;
    width: fit-content;
    padding: 10px 18px;
    border-radius: 50px;
    text-decoration: none;
    transition: background-color .3s ease, color .3s ease, transform .3s ease, box-shadow .3s ease, gap .3s ease;
}

.inner-holiday-package-section-card-btn:hover {
    gap: 9px;
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, .18);
}

.inner-holiday-package-section-card-btn i {
    transition: transform .3s ease, opacity .3s ease;
}

.inner-holiday-package-section-card-btn i:nth-of-type(2) {
    margin-left: -9px;
    opacity: .55;
}

.inner-holiday-package-section-card-btn:hover i:nth-of-type(1) {
    transform: translateX(3px);
}

.inner-holiday-package-section-card-btn:hover i:nth-of-type(2) {
    transform: translateX(5px);
    opacity: 1;
    transition-delay: .06s;
}

.inner-holiday-package-section-card-notch {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 160px;
    height: 50px;
    background: #f5f2ea;
    border-top-right-radius: 24px;
    z-index: 1;
    pointer-events: none;
    margin-top: 20px;
}

.col-lg-4:nth-child(3n+1) .inner-holiday-package-section-card {
    background: #004aff47;
}

.col-lg-4:nth-child(3n+1) .inner-holiday-package-section-card-icon,
.col-lg-4:nth-child(3n+1) .inner-holiday-package-section-card-title {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-holiday-package-section-card-desc {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-holiday-package-section-card-btn {
    background: #004aff47;
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-holiday-package-section-card-btn:hover {
    background: #0d1f4d;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card {
    background: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card-location {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card-date {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card-title {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card-btn {
    background: #2a5fe0;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card-btn:hover {
    background: #ffffff;
    color: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-holiday-package-section-card-notch {
    background: #f5f2ea;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card {
    background: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card-location {
    color: #ffffff;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card-date {
    color: #ffffff;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card-title {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card-btn {
    background: #0f2967;
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card-btn:hover {
    background: #ffffff;
    color: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-holiday-package-section-card-notch {
    background: #f5f2ea;
}

/* inner holiday package section end  */



/* inner visa service section start  */

.inner-visa-service-section {
    background: #f5f2ea;
    padding: 80px 0;
}

.inner-visa-service-section .col-lg-4,
.inner-visa-service-section .col-md-6 {
    margin-bottom: 32px;
}

.inner-visa-service-section-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    border-radius: 20px;
    border-bottom-left-radius: 0;
    padding: 20px 0 0;
    height: 100%;
    overflow: visible;
}

.inner-visa-service-section-card-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 15px 15px;
    flex-shrink: 0;
}

.inner-visa-service-section-card-icon img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: 20px;
}

.inner-visa-service-section-card-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin: 0 15px 8px;
}

.inner-visa-service-section-card-processing {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    opacity: 0.85;
}

.inner-visa-service-section-card-processing i {
    font-size: 12px;
}

.inner-visa-service-section-card-tag {
    display: inline-flex;
    align-items: center;
    font-size: 12px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 50px;
    background: rgba(0, 0, 0, 0.08);
}

.inner-visa-service-section-card-title {
    font-size: 20px;
    font-weight: 800;
    line-height: 1.3;
    margin: 15px;
    flex-shrink: 0;
}

.inner-visa-service-section-card-desc {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 15px 20px;
    flex: 1;
}

.inner-visa-service-section-card-btn {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    font-weight: 700;
    width: fit-content;
    padding: 10px 18px;
    border-radius: 50px;
    text-decoration: none;
}

.inner-visa-service-section-card-notch {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 160px;
    height: 50px;
    background: #f5f2ea;
    border-top-right-radius: 24px;
    z-index: 1;
    pointer-events: none;
    margin-top: 20px;
}

.col-lg-4:nth-child(3n+1) .inner-visa-service-section-card {
    background: #004aff47;
}

.col-lg-4:nth-child(3n+1) .inner-visa-service-section-card-icon,
.col-lg-4:nth-child(3n+1) .inner-visa-service-section-card-title {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-visa-service-section-card-desc {
    color: #000;
}

.col-lg-4:nth-child(3n+1) .inner-visa-service-section-card-btn {
    background: #004aff47;
    color: #000;
}

.col-lg-4:nth-child(3n+2) .inner-visa-service-section-card {
    background: #2a5fe0;
}

.col-lg-4:nth-child(3n+2) .inner-visa-service-section-card-processing {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-visa-service-section-card-tag {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-visa-service-section-card-title {
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-visa-service-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n+2) .inner-visa-service-section-card-btn {
    background: #2a5fe0;
    color: #ffffff;
}

.col-lg-4:nth-child(3n+2) .inner-visa-service-section-card-notch {
    background: #f5f2ea;
}

.col-lg-4:nth-child(3n) .inner-visa-service-section-card {
    background: #0f2967;
}

.col-lg-4:nth-child(3n) .inner-visa-service-section-card-processing {
    color: #ffffff;
}

.col-lg-4:nth-child(3n)  .inner-visa-service-section-card-tag {
    color: #ffffff;	
}

.col-lg-4:nth-child(3n) .inner-visa-service-section-card-title {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-visa-service-section-card-desc {
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-visa-service-section-card-btn {
    background: #0f2967;
    color: #fff;
}

.col-lg-4:nth-child(3n) .inner-visa-service-section-card-notch {
    background: #f5f2ea;
}

/* inner visa service section end  */




/* Contact Page Banner */
/* CONTACT SECTION */

.contact-section {
    padding: 80px 0;
    background: #fff;
}

.contact-section .row {
    --bs-gutter-x: 60px;
}


/* COMMON HEADING */

.contact-heading {
    margin-bottom: 30px;
}

.contact-heading h2 {
    margin: 0 0 10px;
    font-size: 25px;
    line-height: 1.3;
    font-weight: 700;
    color: #14213d;
}

.contact-heading span {
    display: block;
    width: 25px;
    height: 3px;
    background: #f5b800;
    margin-bottom: 12px;
}

.contact-heading p {
    max-width: 350px;
    margin: 0;
    color: #6f7785;
    font-size: 13px;
    line-height: 1.7;
}


/* FORM BOX */

.contact-form-wrapper {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    border: 1px solid #edf0f5;
    box-shadow: 0 8px 30px rgba(20, 33, 61, 0.07);
}


/* CONTACT FORM 7 */

.contact-form-wrapper form {
    margin-top: 5px;
}

.contact-form-wrapper form p {
    margin: 0;
}

.contact-form-wrapper .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.contact-form-wrapper .wpcf7-form-control {
    width: 100%;
}


/* Two-column fields */

.contact-form-wrapper .form-row {
    display: flex;
    gap: 15px;
}

.contact-form-wrapper .form-group {
    width: 50%;
    margin-bottom: 18px;
}

.contact-form-wrapper label {
    display: block;
    margin-bottom: 7px;
    font-size: 11px;
    font-weight: 600;
    color: #25344d;
}

.contact-form-wrapper input[type="text"],
.contact-form-wrapper input[type="email"],
.contact-form-wrapper input[type="tel"],
.contact-form-wrapper select,
.contact-form-wrapper textarea {
    width: 100%;
    border: 1px solid #e1e6ed;
    background: #fff;
    border-radius: 10px;
    padding: 27px 13px;
    font-size: 12px;
    color: #29364c;
    outline: none;
    transition: all 0.3s ease;
}

.contact-form-wrapper input[type="text"],
.contact-form-wrapper input[type="email"],
.contact-form-wrapper input[type="tel"],
.contact-form-wrapper select {
    height: 43px;
}

.contact-form-wrapper textarea {
    min-height: 105px;
    resize: vertical;
}

.contact-form-wrapper input:focus,
.contact-form-wrapper select:focus,
.contact-form-wrapper textarea:focus {
    border-color: #f5b800;
    box-shadow: 0 0 0 3px rgba(245, 184, 0, 0.08);
}


/* Submit */

.contact-form-wrapper input[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 158px;
    height: 42px;
    padding: 0 22px;
    border: 0;
    border-radius: 4px;
    background: #102544;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.contact-form-wrapper input[type="submit"]:hover {
    background: #f5b800;
    color: #102544;
    transform: translateY(-2px);
}


/* CONTACT DETAILS */

.contact-details {
    padding: 15px 0 0 15px;
}

.contact-details .contact-heading {
    margin-bottom: 28px;
}


/* Detail item */

.contact-detail-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 25px;
}


/* Icon circle */

.contact-icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #f0f3fc;
    color: #18366a;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

.contact-detail-content {
    padding-top: 1px;
}

.contact-detail-content h4 {
    margin: 0 0 5px;
    font-size: 18px;
    font-weight: 700;
    color: #263650;
}

.contact-detail-content p {
    margin: 0;
    max-width: 280px;
    color: #687386;
    font-size: 15px;
    line-height: 1.55;
}

.contact-detail-content a {
    display: block;
    width: fit-content;
    color: #687386;
    font-size: 15px;
    line-height: 1.6;
    text-decoration: none;
    transition: color 0.3s ease;
}

.contact-detail-content a:hover {
    color: #18366a;
}


/* SOCIAL */

.contact-social-item {
    margin-top: 5px;
}

.contact-socials {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 8px;
}

.contact-socials a {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #18366a;
    color: #fff;
    font-size: 11px;
    transition: all 0.3s ease;
}

.contact-socials a:hover {
    background: #f5b800;
    color: #18366a;
    transform: translateY(-2px);
}

/* CONTACT LOCATION SECTION */

.contact-location-section {
    padding: 0 0 70px;
    background: #fff;
}

/* MAP */

.contact-map-wrapper {
    position: relative;
    margin-bottom: 0;
    padding: 7px;
    border-radius: 8px;
    background: #f1f4f8;
    box-shadow: 0 5px 20px rgba(20, 40, 70, 0.06);
}

.contact-map {
    height: 150px;
    width: 100%;
    overflow: hidden;
    border-radius: 5px;
}

.contact-map iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
    /* Gives the map a softer appearance */
    filter: grayscale(10%) saturate(70%) contrast(90%);
}

.contact-map-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    margin: 0;
    color: #8a93a6;
    font-family: "Roboto", sans-serif;
    font-size: 13px;
}


/* FEATURES */

.contact-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid #f0f1f4;
    margin-top: 0;
    padding-top: 25px;
}


.contact-feature {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-height: 95px;
    padding: 0 25px;
}


/* vertical separator */

.contact-feature:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 5px;
    width: 1px;
    height: 85px;
    background: #e8ebef;
}


/* FEATURE ICON */

.feature-icon {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
    border-radius: 50%;
    background: #f1f3f7;
    color: #1c2d49;
    font-size: 19px;
    transition: all 0.3s ease;
}

.contact-feature:hover .feature-icon {
    background: #09203d;
    color: #f4c51c;
    transform: translateY(-3px);
}


/* FEATURE CONTENT */

.feature-content h4 {
    margin: 0 0 4px;
    color: #17263d;
    font-size: 11px;
    font-weight: 700;
}

.feature-content p {
    margin: 0;
    color: #7d8490;
    font-size: 10px;
    line-height: 1.6;
}

/* CONTACT PAGE motion (.ctc-anim-ready gate = JS) */

/* 1. banner: iris circle image reveal, skew-correct title slide, <em> settles to gold */
.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-media img{
	clip-path: circle(0% at 22% 28%);
	transition: clip-path 1.1s cubic-bezier(.16, .84, .44, 1);
	will-change: clip-path;
}
.inner-about-banner-wrap.ctc-anim-ready.ctc-in .inner-about-banner-media img{
	clip-path: circle(150% at 22% 28%);
	will-change: auto;
}

.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-title{
	opacity: 0;
	transform: skewX(-8deg) translateX(-30px);
	transition: opacity .7s ease, transform .9s cubic-bezier(.16, .84, .44, 1);
	will-change: transform;
}
.inner-about-banner-wrap.ctc-anim-ready.ctc-in .inner-about-banner-title{
	opacity: 1;
	transform: none;
	will-change: auto;
}

.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-title em{
	color: #fff;
	transition: color .8s ease .5s;
}
.inner-about-banner-wrap.ctc-anim-ready.ctc-in .inner-about-banner-title em{
	color: #e3b565;
}

.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-desc p{
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .7s ease .35s, transform .8s cubic-bezier(.16, .84, .44, 1) .35s;
}
.inner-about-banner-wrap.ctc-anim-ready.ctc-in .inner-about-banner-desc p{
	opacity: 1;
	transform: none;
}

/* 2. contact section: form card swings open, fields stagger; detail rows slide in
   from the right with stamp-pop icons; social icons bounce in */
.contact-section.ctc-anim-ready .contact-form-wrapper{
	position: relative;
	opacity: 0;
	transform: perspective(1400px) rotateY(12deg) translateX(-24px);
	transform-origin: left center;
	transition: opacity .6s ease, transform .9s cubic-bezier(.19, 1, .22, 1);
	will-change: transform, opacity;
}
.contact-section.ctc-anim-ready.ctc-in .contact-form-wrapper{
	opacity: 1;
	transform: none;
	will-change: auto;
}

.contact-section.ctc-anim-ready .contact-form-wrapper form p,
.contact-section.ctc-anim-ready .contact-form-wrapper .form-group{
	opacity: 0;
	transform: translateY(12px);
	transition: opacity .4s ease, transform .5s cubic-bezier(.19, 1, .22, 1);
}
.contact-section.ctc-anim-ready.ctc-in .contact-form-wrapper form p,
.contact-section.ctc-anim-ready.ctc-in .contact-form-wrapper .form-group{
	opacity: 1;
	transform: none;
}

.contact-section.ctc-anim-ready .contact-detail-item{
	opacity: 0;
	transform: translateX(34px);
	transition: opacity .5s ease, transform .6s cubic-bezier(.19, 1, .22, 1);
}
.contact-section.ctc-anim-ready.ctc-in .contact-detail-item{
	opacity: 1;
	transform: none;
}

.contact-section.ctc-anim-ready .contact-detail-item .contact-icon{
	opacity: 0;
	transform: scale(1.6);
	transition: opacity .3s ease, transform .5s cubic-bezier(.34, 1.56, .64, 1);
}
.contact-section.ctc-anim-ready.ctc-in .contact-detail-item .contact-icon{
	opacity: 1;
	transform: scale(1);
}

.contact-section.ctc-anim-ready .contact-socials a{
	opacity: 0;
	translate: 0 10px;
	transition: all .3s ease, opacity .4s ease, translate .5s cubic-bezier(.34, 1.56, .64, 1);
}
.contact-section.ctc-anim-ready.ctc-in .contact-socials a{
	opacity: 1;
	translate: 0 0;
}
.contact-section.ctc-anim-ready.ctc-in .contact-socials a:nth-child(2){ transition-delay: .08s; }
.contact-section.ctc-anim-ready.ctc-in .contact-socials a:nth-child(3){ transition-delay: .16s; }

/* interactive: gold rail glides to the focused form field (JS-created marker) */
.ctc-field-marker{
	position: absolute;
	left: 0;
	width: 3px;
	border-radius: 3px;
	background: #f5b800;
	opacity: 0;
	pointer-events: none;
	transition: top .35s cubic-bezier(.65, 0, .35, 1),
	            height .35s cubic-bezier(.65, 0, .35, 1),
	            opacity .25s ease;
}
.ctc-field-marker.is-visible{ opacity: 1; }

/* 3. location: map unrolls from the top, features rise, separators draw down */
.contact-location-section.ctc-anim-ready .contact-map-wrapper{
	clip-path: inset(0 0 100% 0 round 8px);
	transition: clip-path .9s cubic-bezier(.19, 1, .22, 1);
	will-change: clip-path;
}
.contact-location-section.ctc-anim-ready.ctc-in .contact-map-wrapper{
	clip-path: inset(0 0 0 0 round 8px);
	will-change: auto;
}

.contact-location-section.ctc-anim-ready .contact-feature{
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .5s ease, transform .6s cubic-bezier(.19, 1, .22, 1);
}
.contact-location-section.ctc-anim-ready.ctc-in .contact-feature{
	opacity: 1;
	transform: none;
}

.contact-location-section.ctc-anim-ready .contact-feature:not(:last-child)::after{
	transform: scaleY(0);
	transform-origin: top;
	transition: transform .6s cubic-bezier(.16, .84, .44, 1) .2s;
}
.contact-location-section.ctc-anim-ready.ctc-in .contact-feature:not(:last-child)::after{
	transform: scaleY(1);
}

@media (prefers-reduced-motion: reduce){
	.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-media img,
	.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-title,
	.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-title em,
	.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-desc p,
	.contact-section.ctc-anim-ready .contact-form-wrapper,
	.contact-section.ctc-anim-ready .contact-form-wrapper form p,
	.contact-section.ctc-anim-ready .contact-form-wrapper .form-group,
	.contact-section.ctc-anim-ready .contact-detail-item,
	.contact-section.ctc-anim-ready .contact-detail-item .contact-icon,
	.contact-section.ctc-anim-ready .contact-socials a,
	.contact-location-section.ctc-anim-ready .contact-map-wrapper,
	.contact-location-section.ctc-anim-ready .contact-feature{
		opacity: 1 !important;
		transform: none !important;
		translate: 0 0 !important;
		clip-path: none !important;
		transition: none !important;
	}
	.inner-about-banner-wrap.ctc-anim-ready .inner-about-banner-title em{ color: #e3b565; }
	.contact-location-section.ctc-anim-ready .contact-feature:not(:last-child)::after{ transform: none !important; }
	.ctc-field-marker{ display: none !important; }
}


@media only screen and (min-width: 300px) and (max-width: 576.98px) {

	/* --- header fixes --- */

	.site-header{
		position: fixed;
		padding: 14px 0;
		background: rgba(3,9,24,0.72);
	}

	body.f-nav .site-header{
		padding: 10px 0;
	}

	.site-header .container{
		padding-left: 6%;
		padding-right: 6%;
	}

	.site-header .row{
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
		row-gap: 0;
	}

	.site-header .row > .col-auto,
	.site-header .row > .col{
		flex: 0 0 auto;
		max-width: none;
		width: auto;
	}

	.site-header .row > .col{
		text-align: right;
	}

	.site-logo{
		max-height: 38px;
	}

	.glass-nav{
		display: inline-block;
		border: none;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		padding: 0;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	body.f-nav .site-header{
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle,
	.mega-menu-toggle,
	body.f-nav #mega-menu-wrap-primary .mega-menu-toggle,
	body.f-nav .mega-menu-toggle{
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
	}

	.site-header .col-auto:last-child{
		display: none;
	}

	#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary{
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 320px !important;
		max-width: 75% !important;
		height: 100vh !important;
		max-height: 100vh !important;
		margin: 0 !important;
		display: block !important;
		transform: translateX(100%) !important;
		transition: transform .35s ease !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		z-index: 9999999999 !important;
		background: #0d1f4d !important;
		box-shadow: -16px 0 40px rgba(0,0,0,.35);
		padding: 0 0 24px !important;
		text-align: left !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary{
		transform: translateX(0) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary,
	#mega-menu-wrap-primary #mega-menu-primary a.mega-menu-link{
		color: #eef2fa !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
		display: block !important;
		width: 100% !important;
		padding: 14px 24px !important;
		font-family: "Poppins", sans-serif !important;
		font-weight: 500 !important;
		font-size: 15px !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link{
		color: #d98a1f !important;
		background: rgba(255,255,255,.06) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{
		color: #d98a1f !important;
	}

	#mega-menu-wrap-primary.mega-keyboard-navigation > li.mega-menu-item > a.mega-menu-link:focus{
		color: #0d1f4d !important;
		background: #d98a1f !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu{
		background: rgba(255,255,255,.05) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link{
		color: #cdd6ea !important;
		font-size: 14px !important;
		padding-left: 40px !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::before,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::after{
		background-color: #d98a1f !important;
	}


	/* --- hero banner fixes --- */
	.hero-banner{
		padding: 110px 0 50px;
	}

	.hero-banner-media::after{
		height: 200px;
	}

	.hero-eyebrow{
		font-size: 13px;
		margin-bottom: 10px;
	}

	.hero-title{
		font-size: clamp(26px, 8vw, 34px);
		line-height: 1.22;
		margin-bottom: 14px;
	}

	.hero-desc{
		font-size: 14px;
		line-height: 1.6;
	}

	.hero-search-wrap{
		margin-top: 28px;
		margin-bottom: -24px;
	}

	.hero-search-card{
		border-radius: 18px;
		padding: 10px 16px 20px;
	}

	.hero-search-tabs{
		margin-bottom: 14px !important;
	}

	.hero-search-tabs .nav-link{
		gap: 6px;
		font-size: 13px;
		padding: 10px 12px;
	}

	.hero-field-row{
		row-gap: 10px;
	}

	.hero-field{
		padding: 8px 12px 9px;
	}

	.hero-field label{
		font-size: 10px;
	}

	.hero-field-swap-group{
		flex-direction: column;
		gap: 10px;
	}

	.hero-swap-btn{
		top: 50%;
		transform: translate(-50%, -50%);
	}

	.hero-swap-btn i{
		transform: rotate(90deg);
	}

	.hero-swap-btn.is-swapped i{
		transform: rotate(270deg);
	}

	.hero-field-combo .hero-field-control{
		flex-wrap: wrap;
		row-gap: 10px;
	}

	.hero-field-combo-part{
		flex: 1 1 100%;
	}

	.hero-field-combo-divider{
		width: 100%;
		height: 1px;
		align-self: auto;
		margin: 0;
	}

	.hero-field-submit input.wpcf7-submit{
		font-size: 14px;
		padding: 14px 20px;
	}

	/* --- "inside every listing" section fixes --- */
	.listing-features{
		padding: 40px 0;
	}

	.listing-features-title{
		margin-bottom: 10px;
	}

	.listing-features-desc{
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 30px;
	}

	.listing-features .row{
		row-gap: 20px;
	}

	.listing-feature-card{
		padding: 26px 20px 22px;
		border-radius: 18px;
	}

	.listing-feature-icon{
		width: 64px;
		height: 64px;
		margin-bottom: 18px;
	}

	.listing-feature-icon img{
		width: 34px;
		height: 34px;
	}

	.listing-feature-title{
		font-size: 14px;
		margin-bottom: 12px;
	}

	.listing-feature-list p,
	.listing-feature-list li{
		font-size: 13.5px;
		padding: 10px 0;
	}

	.listing-feature-btn{
		margin-top: 20px;
		font-size: 11px;
		padding: 13px 18px;
	}

	/* --- visa services slider section fixes --- */
	.visa-slider-section{
		padding: 40px 0;
	}

	/* phones: shorter travel + quicker transition; JS also drops the stagger to 45ms here */
	.visa-slider-section .js-visa-reveal{
		transform: translateY(16px);
		transition-duration: .45s, .5s;
	}

	.visa-slider-desc{
		font-size: 14px;
		line-height: 1.6;
	}

	.visa-slider-wrap{
		margin-top: 28px;
	}

	.visa-slider-track{
		gap: 14px;
	}

	.visa-slide{
		flex: 0 0 86%;
		max-width: 86%;
	}

	.visa-card-media{
		height: 160px;
	}

	.visa-card-body{
		padding: 18px 18px 16px;
	}

	.visa-card-title{
		font-size: 17px;
	}

	.visa-card-desc{
		font-size: 13.5px;
	}

	.visa-slider-arrow{
		display: none;
	}

	.visa-slider-progress{
		margin: 24px auto 0;
	}

	/* --- activities section fixes --- */
	.activities-section{
		padding: 50px 0 40px;
	}

	/* phones: shorter travel + quicker transition; JS also drops the stagger to 55ms here */
	.activities-section .js-activities-reveal{
		transform: translateY(16px);
		transition-duration: .45s, .55s;
	}
	.activities-section .activities-slide.js-activities-reveal{
		transform: translateY(26px);
	}
	.activities-section .activities-slide.js-activities-reveal .activity-card-media{
		transform: scale(1.08);
		transition-duration: .6s;
	}

	.activities-desc{
		font-size: 14px;
		line-height: 1.6;
	}

	.activities-head-row{
		margin-bottom: 24px;
	}

	.activities-head-row .col-12:last-child{
		margin-top: 16px;
	}

	.activities-track-wrap{
		padding: 4px 6% 30px;
	}

	.activities-slide{
		width: 86%;
	}

	.activity-card{
		height: 380px;
		border-radius: 18px;
	}

	.activity-card-duration{
		top: 14px;
		right: 14px;
		font-size: 12px;
		padding: 6px 12px;
	}

	.activity-card-body{
		padding: 18px 18px 16px;
	}

	.activity-card-title{
		margin-bottom: 10px;
	}

	.activity-card-desc{
		font-size: 13.5px;
	}

	/* --- holiday packages section fixes --- */
	.holiday-section{
		padding: 40px 0;
	}

	.holiday-section .js-holiday-reveal{
		transition-duration: .45s, .5s, .55s;
	}
	.holiday-section .holiday-intro-card.js-holiday-reveal:not(.is-revealed){
		transform: scale(1.02);
	}
	.holiday-section .holiday-intro-logo.js-holiday-reveal:not(.is-revealed),
	.holiday-section .holiday-intro-title.js-holiday-reveal:not(.is-revealed),
	.holiday-section .holiday-intro-desc.js-holiday-reveal:not(.is-revealed),
	.holiday-section .holiday-intro-more.js-holiday-reveal:not(.is-revealed){
		transform: translateX(-16px);
	}
	.holiday-section .holiday-package-slide.js-holiday-reveal:not(.is-revealed){
		transform: perspective(800px) rotateX(-26deg) translateY(28px);
	}

	.holiday-section .row{
		row-gap: 30px;
	}

	.holiday-intro-card{
		height: 380px;
		border-radius: 18px;
	}

	.holiday-intro-body{
		padding: 24px 20px 26px;
	}

	.holiday-intro-logo{
		height: 28px;
		margin-bottom: 16px;
	}

	.holiday-intro-title{
		font-size: 24px;
		margin-bottom: 10px;
	}

	.holiday-intro-desc{
		font-size: 13.5px;
		max-width: 100%;
		margin-bottom: 14px;
	}

	.holiday-packages-title{
		margin-bottom: 20px;
	}

	.holiday-marquee{
		-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 20px, #000 calc(100% - 20px), transparent 100%);
		mask-image: linear-gradient(90deg, transparent 0, #000 20px, #000 calc(100% - 20px), transparent 100%);
	}

	.holiday-marquee-track{
		gap: 14px;
	}

	.holiday-package-slide{
		width: 190px;
	}

	.holiday-package-card{
		height: 300px;
		border-radius: 16px;
	}

	.holiday-package-body{
		padding: 16px 16px 18px;
	}

	.holiday-package-title{
		font-size: 17px;
	}

	.holiday-package-desc{
		font-size: 13px;
	}

	/* --- hotel listing section fixes --- */
	.hotel-section{
		padding: 40px 0;
	}

	.hotel-section .js-hotel-reveal{
		transition-duration: .4s, .55s;
	}
	.hotel-section .js-hotel-reveal:not(.is-revealed){
		transform: translateY(16px);
	}
	.hotel-section .hotel-card.js-hotel-reveal:not(.is-revealed){
		transform: translateY(26px) scale(.94);
	}

	.hotel-section-desc{
		font-size: 14px;
		line-height: 1.6;
	}

	.hotel-card-row{
		margin-top: 24px;
		row-gap: 18px;
	}

	.hotel-card{
		min-height: 0;
		height: auto;
	}

	.hotel-card .row.no-gutters{
		flex-direction: column;
		height: auto;
	}

	.hotel-card .hotel-card-media-col,
	.hotel-card .hotel-card-body-col{
		flex: 0 0 auto;
		max-width: 100%;
		width: 100%;
	}

	.hotel-card-media{
		height: 190px;
		min-height: 190px;
	}

	.hotel-card-body{
		height: auto;
		justify-content: flex-start;
		padding: 20px 22px 22px;
	}

	.hotel-card-title{
		font-size: 18px;
		margin-bottom: 4px;
	}

	.hotel-card-location{
		font-size: 14px;
		margin-bottom: 10px;
	}

	.hotel-card-rating{
		margin-bottom: 18px;
	}

	.hotel-card-btn{
		font-size: 14px;
		padding: 11px 20px;
	}

	/* --- about section fixes --- */
	.about-section{
		padding: 40px 0;
	}

	.about-section .js-about-reveal{
		transition-duration: .5s, .6s;
	}
	.about-section .js-about-reveal:not(.is-revealed){
		transform: translateY(16px);
	}
	.about-section .about-image.js-about-reveal:not(.is-revealed){
		transform: translateY(24px) scale(.97);
	}

	.about-section .row{
		row-gap: 24px;
	}

	.about-image{
		height: 220px;
		border-radius: 12px;
	}

	.about-content p{
		font-size: 14.5px;
		line-height: 1.65;
		margin-bottom: 22px;
	}

	.about-btn{
		font-size: 14px;
		padding: 13px 22px;
	}

	/* --- travel steps section fixes --- */
	.travel-steps-section{
		padding: 50px 0 30px;
	}

	.travel-steps-section .js-steps-reveal{
		transform: translateY(16px);
		transition-duration: .45s;
	}

	.travel-steps-desc{
		font-size: 14px;
		line-height: 1.6;
	}

	.travel-steps-inner .row{
		row-gap: 24px;
	}

	.travel-steps-strip{
		margin-top: 0;
	}

	.travel-steps-strip .travel-step{
		flex: 0 0 100%;
		max-width: 100%;
		padding: 20px 22px;
		border-right: 0;
		border-bottom: 1px solid rgba(255,255,255,.25);
	}

	.travel-steps-strip .travel-step:last-child{
		border-bottom: 0;
	}

	.travel-step-number{
		font-size: 28px;
	}

	.travel-step-text{
		margin-top: 14px;
		max-width: 100%;
	}

	/* --- travel notes section fixes --- */
	.travel-notes-section{
		padding: 40px 0;
	}

	.travel-notes-section .travel-notes-head.js-notes-reveal{
		transition-duration: .5s, .6s;
	}
	.travel-notes-section .travel-notes-head.js-notes-reveal:not(.is-revealed){
		transform: translateY(18px);
	}
	.travel-notes-section .travel-notes-arrows.js-notes-reveal:not(.is-revealed){
		transform: scale(.7) rotate(-8deg);
	}
	.travel-notes-section .travel-notes-track-wrap.js-notes-reveal:not(.is-revealed){
		transform: translateX(34px);
	}

	.travel-notes-head-row{
		margin-bottom: 24px;
	}

	.travel-notes-desc{
		font-size: 14px;
		line-height: 1.6;
		max-width: 100%;
	}

	.travel-notes-track-wrap{
		padding-bottom: 24px;
	}

	.travel-notes-slide,
	.travel-notes-slide.swiper-slide-active{
		width: 82vw;
		height: 360px;
	}

	.travel-notes-icon-placeholder{
		top: 20px;
		left: 20px;
	}

	.travel-notes-card-body{
		padding: 22px;
	}

	.travel-notes-slide.no-image .travel-notes-card-body{
		padding-top: 30px;
	}

	.travel-notes-card-title{
		font-size: 18px;
	}

	.travel-notes-more-link{
		margin-top: 20px;
		font-size: 14px;
	}

	/* --- enquiry form section fixes --- */
	.enquiry-section{
		padding: 40px 0;
	}

	.enquiry-card{
		border-radius: 20px;
	}

	.enquiry-media,
	.enquiry-media-overlay{
		border-radius: 0;
	}

	.enquiry-media{
		min-height: 280px;
		padding: 26px 22px;
	}

	.enquiry-media-title{
		font-size: 22px;
		max-width: 100%;
	}

	.enquiry-media-desc{
		max-width: 100%;
		margin-bottom: 22px;
	}

	.enquiry-media-contacts{
		column-gap: 20px;
		row-gap: 14px;
	}

	.enquiry-form-wrap{
		padding: 24px 20px;
	}

	.enquiry-field-row{
		row-gap: 16px;
	}

	.enquiry-field input.wpcf7-form-control,
	.enquiry-field select.wpcf7-form-control,
	.enquiry-field textarea.wpcf7-form-control{
		height: 52px;
		font-size: 14px;
	}

	.enquiry-field-submit input.wpcf7-submit{
		font-size: 14.5px;
		padding: 15px 20px;
	}

	/* --- footer fixes --- */
	.footer{
		padding-top: 36px;
	}

	.footer-main{
		padding: 36px 0 24px;
	}

	.footer-main .row{
		row-gap: 32px;
	}

	.footer-logo{
		max-height: 44px;
		margin-bottom: 14px;
	}

	.footer-desc{
		font-size: 14px;
		margin-bottom: 20px;
	}

	.footer-social{
		margin-bottom: 0;
	}

	.footer-col-title{
		margin-bottom: 16px;
	}

	.footer-nav li + li,
	.footer-col .menu li + li,
	.footer-col ul:not(.footer-nav) li + li{
		margin-top: 12px;
	}

	.footer-contact-item + .footer-contact-item{
		margin-top: 16px;
	}

	.footer-contact {
		margin-bottom: 15px;
	}

	.footer-bottom-inner{
		flex-direction: column;
		align-items: center;
		text-align: center;
		gap: 8px;
		padding: 18px 0;
	}


	/* --- services page fixes --- */
	.inner-about-banner-wrap{
		min-height: 0;
		height: auto;
		max-height: none;
	}

	.inner-about-banner-content{
		padding: 120px 0 48px;
	}

	.inner-about-banner-title{
		font-size: clamp(26px, 8vw, 34px);
		line-height: 1.22;
		margin-bottom: 16px;
	}

	.inner-about-banner-desc p{
		font-size: 14px;
		line-height: 1.6;
		padding-left: 16px;
	}

	.inner-service-section{
		padding: 44px 0;
	}

	.inner-service-section .col-lg-4,
	.inner-service-section .col-md-6{
		margin-bottom: 20px;
	}

	.inner-service-section-card-title{
		font-size: 18px;
		margin: 12px 15px;
	}

	/* --- about page fixes --- */

	.inner-why-choose-wrap{
		padding: 48px 0;
	}
	.inner-why-choose-wrap .row{
		row-gap: 20px;
	}

	.inner-why-choose-title{
		font-size: 26px;
		margin-bottom: 14px;
	}

	.inner-why-choose-intro{
		font-size: 15px;
		line-height: 1.7;
		margin-bottom: 32px;
	}

	.inner-why-choose-card{
		padding: 32px 22px 26px;
	}

	.inner-about-us-wrap{
		padding: 48px 0;
	}

	.inner-about-us-wrap .row{
		row-gap: 28px;
	}

	.inner-about-us-collage{
		flex-wrap: wrap;
		padding: 20px 4px;
	}

	.inner-about-us-collage-main{
		flex: 1 1 100%;
		aspect-ratio: 4 / 3;
		transform: none;
		order: -1;
	}

	.inner-about-us-collage-side{
		flex: 1 1 calc(50% - 7px);
	}

	.inner-about-us-content{
		font-size: 15px;
		line-height: 1.75;
	}

	.inner-testimonials-wrap{
		padding: 48px 0;
	}

	.inner-testimonials-title{
		font-size: 26px;
		margin-bottom: 28px;
	}

	.inner-testimonials-slider-wrap{
		flex-wrap: wrap;
		justify-content: center;
		gap: 14px;
	}

	.inner-testimonials-slider{
		flex: 1 1 100%;
		order: -1;
	}

	.inner-testimonials-arrow{
		width: 44px;
		height: 44px;
	}

	.inner-testimonials-quote p{
		min-height: 0;
		line-height: 1.6;
	}

	/* --- blog listing page fixes --- */

	.inner-blog-wrap{
		padding: 44px 0 40px;
	}

	.blog-page-header{
		gap: 20px;
		padding-bottom: 24px;
	}

	.blog-page-header-text{
		max-width: 100%;
	}

	.blog-page-header-text h1{
		font-size: 26px;
		margin-bottom: 12px;
	}

	.blog-page-header-text p{
		font-size: 14px;
	}

	.blog-category-filter{
		min-width: 100%;
	}

	/* --- single blog post fixes --- */

	.single-blog-wrap{
		padding: 110px 0 48px;
	}

	.single-blog-breadcrumb{
		flex-wrap: wrap;
		font-size: 13px;
		margin-bottom: 20px;
	}

	.single-blog-header{
		margin-bottom: 28px;
	}

	.single-blog-header h1{
		font-size: 26px;
		margin-bottom: 12px;
	}

	.single-blog-excerpt{
		font-size: 15px;
	}

	.single-blog-main-img img{
		height: 220px;
	}

	.single-blog-meta{
		gap: 14px;
		margin-bottom: 28px;
	}

	.single-blog-content{
		font-size: 15px;
		line-height: 1.75;
	}

	.related-post-wrap{
		padding-bottom: 56px;
	}

	.related-post-wrap h2{
		font-size: 24px;
		margin-bottom: 28px;
	}

	.related-post-wrap .row{
		row-gap: 28px;
	}

	/* --- contact page fixes --- */

	.contact-section{
		padding: 44px 0;
	}

	.contact-section .row{
		--bs-gutter-x: 24px;
		row-gap: 28px;
	}

	.contact-form-wrapper{
		padding: 20px;
	}

	.contact-form-wrapper .form-row{
		flex-direction: column;
		gap: 0;
	}

	.contact-form-wrapper .form-group{
		width: 100%;
	}

	.contact-form-wrapper input[type="text"],
	.contact-form-wrapper input[type="email"],
	.contact-form-wrapper input[type="tel"],
	.contact-form-wrapper select,
	.contact-form-wrapper textarea{
		padding: 10px 13px;
		font-size: 16px;
	}

	.contact-form-wrapper input[type="submit"]{
		width: 100%;
	}

	.contact-details{
		padding: 0;
	}

	.contact-location-section{
		padding-bottom: 48px;
	}

	.contact-features{
		grid-template-columns: 1fr 1fr;
		gap: 24px 12px;
	}

	.contact-feature{
		padding: 0 8px;
	}

	.contact-feature:not(:last-child)::after{
		display: none;
	}

	.contact-map{
		height: 150px;
	}

	/* --- single visa service fixes --- */

	.single-visa-service-wrap{
		padding: 110px 0 48px;
	}

	.single-visa-service-breadcrumb{
		flex-wrap: wrap;
		font-size: 13px;
		margin-bottom: 20px;
	}

	.single-visa-service-header{
		margin-bottom: 24px;
	}

	.single-visa-service-header h1{
		font-size: 26px;
		margin-bottom: 12px;
	}

	.single-visa-service-excerpt{
		font-size: 15px;
	}

	.single-visa-service-main-img img{
		height: 220px;
	}

	.single-visa-service-meta{
		gap: 12px;
		margin-bottom: 28px;
	}

	.single-visa-service-content{
		font-size: 15px;
		line-height: 1.75;
	}

	.single-visa-service-process{
		margin-top: 32px;
		padding-top: 28px;
	}

	.single-visa-service-process-item{
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		padding-bottom: 24px;
	}

	.single-visa-service-process-card{
		padding: 18px 18px;
	}

	.single-visa-service-req-wrap{
		padding: 44px 0;
	}

	.single-visa-service-req-grid{
		margin-top: 28px;
	}

	.single-visa-service-req-card{
		padding: 24px 20px;
	}

	.visa-enquiry-modal{
		padding: 14px;
	}

	.visa-enquiry-modal-card{
		padding: 32px 20px 24px;
	}

	.visa-enquiry-modal-title{
		font-size: 20px;
	}

	/* --- single holiday package fixes --- */

	.single-holiday-package-wrap{
		padding: 110px 0 48px;
	}

	.single-holiday-package-breadcrumb{
		flex-wrap: wrap;
		font-size: 13px;
		margin-bottom: 20px;
	}

	.single-holiday-package-header{
		margin-bottom: 24px;
	}

	.single-holiday-package-header h1{
		font-size: 26px;
		margin-bottom: 12px;
	}

	.single-holiday-package-excerpt{
		font-size: 15px;
	}

	.single-holiday-package-main-img img{
		height: 220px;
	}

	.single-holiday-package-meta{
		gap: 12px;
		margin-bottom: 28px;
	}

	.single-holiday-package-content{
		font-size: 15px;
		line-height: 1.75;
	}

	.single-holiday-package-itinerary{
		margin-top: 32px;
		padding-top: 28px;
	}

	.single-holiday-package-itinerary-item{
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		padding-bottom: 24px;
	}

	.single-holiday-package-itinerary-card{
		padding: 18px 18px;
	}

	.single-holiday-package-incl-wrap{
		padding: 44px 0;
	}

	.single-holiday-package-incl-grid{
		margin-top: 28px;
	}

	.single-holiday-package-incl-card{
		padding: 24px 20px;
	}

	.holiday-enquiry-modal{
		padding: 14px;
	}

	.holiday-enquiry-modal-card{
		padding: 32px 20px 24px;
	}

	.holiday-enquiry-modal-title{
		font-size: 20px;
	}

	/* --- single hotel fixes --- */

	.single-hotel-wrap{
		padding: 110px 0 48px;
	}

	.single-hotel-breadcrumb{
		flex-wrap: wrap;
		font-size: 13px;
		margin-bottom: 20px;
	}

	.single-hotel-header{
		margin-bottom: 24px;
	}

	.single-hotel-header h1{
		font-size: 26px;
		margin-bottom: 12px;
	}

	.single-hotel-excerpt{
		font-size: 15px;
	}

	.single-hotel-main-img img{
		height: 220px;
	}

	.single-hotel-meta{
		gap: 12px;
		margin-bottom: 28px;
	}

	.single-hotel-content{
		font-size: 15px;
		line-height: 1.75;
	}

	.single-hotel-gallery-wrap{
		padding: 44px 0;
	}

	.single-hotel-gallery-row{
		margin-top: 28px;
	}

	.single-hotel-lightbox{
		padding: 16px;
	}

	.single-hotel-lightbox-close,
	.single-hotel-lightbox-nav{
		width: 38px;
		height: 38px;
		font-size: 14px;
	}

	.single-hotel-lightbox-close{
		top: 12px;
		right: 12px;
	}

	.single-hotel-lightbox-nav{
		top: auto;
		bottom: 14px;
		transform: none;
	}

	.single-hotel-lightbox-prev{ left: calc(50% - 46px); }
	.single-hotel-lightbox-next{ right: calc(50% - 46px); }

	.hotel-enquiry-modal{
		padding: 14px;
	}

	.hotel-enquiry-modal-card{
		padding: 32px 20px 24px;
	}

	.hotel-enquiry-modal-title{
		font-size: 20px;
	}

	/* --- activities listing page fixes --- */

	.inner-activities-section{
		padding: 44px 0;
	}

	.inner-activities-section .col-lg-4,
	.inner-activities-section .col-md-6{
		margin-bottom: 20px;
	}

	.inner-activities-section-card-title{
		font-size: 18px;
		margin: 12px 15px;
	}

	/* --- single activity fixes --- */

	.single-activity-wrap{
		padding: 110px 0 48px;
	}

	.single-activity-breadcrumb{
		flex-wrap: wrap;
		font-size: 13px;
		margin-bottom: 20px;
	}

	.single-activity-header{
		margin-bottom: 24px;
	}

	.single-activity-header h1{
		font-size: 26px;
		margin-bottom: 12px;
	}

	.single-activity-excerpt{
		font-size: 15px;
	}

	.single-activity-main-img img{
		height: 220px;
	}

	.single-activity-meta{
		gap: 12px;
		margin-bottom: 28px;
	}

	.single-activity-content{
		font-size: 15px;
		line-height: 1.75;
	}

	.single-activity-highlights{
		margin-top: 32px;
		padding-top: 28px;
	}

	.single-activity-gallery-wrap{
		padding: 44px 0;
	}

	.single-activity-gallery-row{
		margin-top: 28px;
	}

	.single-activity-lightbox{
		padding: 16px;
	}

	.single-activity-lightbox-close,
	.single-activity-lightbox-nav{
		width: 38px;
		height: 38px;
		font-size: 14px;
	}

	.single-activity-lightbox-close{
		top: 12px;
		right: 12px;
	}

	.single-activity-lightbox-nav{
		top: auto;
		bottom: 14px;
		transform: none;
	}

	.single-activity-lightbox-prev{ left: calc(50% - 46px); }
	.single-activity-lightbox-next{ right: calc(50% - 46px); }

	.activity-enquiry-modal{
		padding: 14px;
	}

	.activity-enquiry-modal-card{
		padding: 32px 20px 24px;
	}

	.activity-enquiry-modal-title{
		font-size: 20px;
	}

}


@media only screen and (min-width: 576px) and (max-width: 768.98px) {

	/* --- header fixes --- */

	.site-header{
		position: fixed;
		padding: 14px 0;
		background: rgba(3,9,24,0.72);
	}

	body.f-nav .site-header{
		padding: 10px 0;
	}

	.site-header .container{
		padding-left: 6%;
		padding-right: 6%;
	}

	.site-header .row{
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
		row-gap: 0;
	}

	.site-header .row > .col-auto,
	.site-header .row > .col{
		flex: 0 0 auto;
		max-width: none;
		width: auto;
	}

	.site-header .row > .col{
		text-align: right;
	}

	.site-logo{
		max-height: 38px;
	}

	.glass-nav{
		display: inline-block;
		border: none;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		padding: 0;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}
	body.f-nav .site-header{
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle,
	.mega-menu-toggle,
	body.f-nav #mega-menu-wrap-primary .mega-menu-toggle,
	body.f-nav .mega-menu-toggle{
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
	}

	.site-header .col-auto:last-child{
		display: none;
	}

	
	#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary{
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 320px !important;
		max-width: 75% !important;
		height: 100vh !important;
		max-height: 100vh !important;
		margin: 0 !important;
		display: block !important;
		transform: translateX(100%) !important;
		transition: transform .35s ease !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		z-index: 9999999999 !important;
		background: #0d1f4d !important;
		box-shadow: -16px 0 40px rgba(0,0,0,.35);
		padding: 0 0 24px !important;
		text-align: left !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary{
		transform: translateX(0) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary,
	#mega-menu-wrap-primary #mega-menu-primary a.mega-menu-link{
		color: #eef2fa !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
		display: block !important;
		width: 100% !important;
		padding: 14px 24px !important;
		font-family: "Poppins", sans-serif !important;
		font-weight: 500 !important;
		font-size: 15px !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link{
		color: #d98a1f !important;
		background: rgba(255,255,255,.06) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{
		color: #d98a1f !important;
	}

	#mega-menu-wrap-primary.mega-keyboard-navigation > li.mega-menu-item > a.mega-menu-link:focus{
		color: #0d1f4d !important;
		background: #d98a1f !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu{
		background: rgba(255,255,255,.05) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link{
		color: #cdd6ea !important;
		font-size: 14px !important;
		padding-left: 40px !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::before,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::after{
		background-color: #d98a1f !important;
	}

	/* --- hero banner fixes --- */
	.hero-banner{
		padding: 130px 0 60px;
	}

	.hero-banner-media::after{
		height: 260px;
	}

	.hero-eyebrow{
		font-size: 14px;
		margin-bottom: 12px;
	}

	.hero-title{
		margin-bottom: 18px;
	}

	.hero-desc{
		font-size: 15px;
		line-height: 1.65;
	}

	.hero-search-wrap{
		margin-top: 40px;
		margin-bottom: -32px;
	}

	.hero-search-card{
		border-radius: 22px;
		padding: 12px 24px 26px;
	}

	.hero-search-tabs{
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		margin-bottom: 16px !important;
	}

	.hero-search-tabs .nav-link{
		gap: 7px;
		font-size: 14.5px;
		padding: 11px 16px;
	}

	.hero-field-submit input.wpcf7-submit{
		font-size: 14.5px;
		padding: 15px 20px;
	}

	/* --- "inside every listing" section fixes --- */
	.listing-features .row{
		row-gap: 24px;
	}

	/* --- visa services slider section fixes --- */
	.visa-slider-section{
		padding: 48px 0;
	}

	/* small tablets: slightly reduced travel/duration (stagger is 45ms via JS below lg) */
	.visa-slider-section .js-visa-reveal{
		transform: translateY(22px);
		transition-duration: .5s, .58s;
	}

	.visa-slider-desc{
		font-size: 15px;
		line-height: 1.65;
	}

	.visa-slider-wrap{
		margin-top: 32px;
	}

	.visa-slider-track{
		gap: 18px;
	}

	.visa-slide{
		flex: 0 0 calc((100% - 18px) / 2 - 26px);
		max-width: calc((100% - 18px) / 2 - 26px);
	}

	.visa-card-media{
		height: 170px;
	}

	.visa-slider-arrow{
		display: none;
	}

	.visa-slider-progress{
		margin: 28px auto 0;
	}

	/* --- activities section fixes --- */
	.activities-section{
		padding: 60px 0 44px;
	}

	/* small tablets: reduced travel/duration (stagger is 55ms via JS below lg) */
	.activities-section .js-activities-reveal{
		transform: translateY(22px);
		transition-duration: .5s, .62s;
	}
	.activities-section .activities-slide.js-activities-reveal{
		transform: translateY(34px);
	}
	.activities-section .activities-slide.js-activities-reveal .activity-card-media{
		transform: scale(1.1);
	}

	.activities-desc{
		font-size: 15px;
		line-height: 1.65;
	}

	.activities-head-row{
		margin-bottom: 28px;
	}

	.activities-head-row .col-12:last-child{
		margin-top: 18px;
	}

	.activities-track-wrap{
		padding: 4px 6% 34px;
	}

	
	.activities-slide{
		width: 66%;
	}

	.activity-card{
		height: 400px;
		border-radius: 20px;
	}

	.activity-card-duration{
		top: 16px;
		right: 16px;
		font-size: 12.5px;
		padding: 7px 14px;
	}

	.activity-card-body{
		padding: 22px 24px 22px;
	}

	.activity-card-title{
		margin-bottom: 12px;
	}

	.activity-card-desc{
		font-size: 14px;
	}

	/* --- holiday packages section fixes --- */
	.holiday-section{
		padding: 48px 0;
	}

	.holiday-section .js-holiday-reveal{
		transition-duration: .5s, .58s, .62s;
	}
	.holiday-section .holiday-intro-card.js-holiday-reveal:not(.is-revealed){
		transform: scale(1.03);
	}
	.holiday-section .holiday-package-slide.js-holiday-reveal:not(.is-revealed){
		transform: perspective(900px) rotateX(-32deg) translateY(36px);
	}

	.holiday-section .row{
		row-gap: 30px;
	}

	.holiday-intro-card{
		height: 420px;
		border-radius: 20px;
	}

	.holiday-intro-body{
		padding: 28px 26px 30px;
	}

	.holiday-intro-logo{
		height: 30px;
		margin-bottom: 18px;
	}

	.holiday-intro-title{
		font-size: 26px;
		margin-bottom: 12px;
	}

	.holiday-intro-desc{
		font-size: 14px;
		max-width: 420px;
		margin-bottom: 16px;
	}

	.holiday-packages-title{
		margin-bottom: 24px;
	}

	.holiday-marquee{
		-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
		mask-image: linear-gradient(90deg, transparent 0, #000 24px, #000 calc(100% - 24px), transparent 100%);
	}

	.holiday-marquee-track{
		gap: 18px;
	}

	.holiday-package-slide{
		width: 210px;
	}

	.holiday-package-card{
		height: 340px;
		border-radius: 18px;
	}

	.holiday-package-body{
		padding: 18px 18px 20px;
	}

	.holiday-package-title{
		font-size: 18px;
	}

	.holiday-package-desc{
		font-size: 13.5px;
	}

	/* --- about section fixes --- */
	.about-section{
		padding: 52px 0;
	}

	.about-section .js-about-reveal:not(.is-revealed){
		transform: translateX(20px);
	}
	.about-section .about-image.js-about-reveal:not(.is-revealed){
		transform: perspective(1000px) rotateY(8deg);
		transform-origin: left center;
	}

	.about-section .row{
		row-gap: 28px;
	}

	.about-image{
		height: 320px;
		border-radius: 14px;
	}

	.about-content h2{
		margin-bottom: 16px;
	}

	.about-content p{
		font-size: 15px;
		line-height: 1.7;
		max-width: 100%;
		margin-bottom: 24px;
	}

	.about-btn{
		font-size: 14px;
		padding: 13px 24px;
	}

	/* --- travel steps section fixes --- */
	.travel-steps-section{
		padding: 70px 0 30px;
	}

	/* mid-tablet: slightly reduced travel/duration (stagger is 45ms via JS below lg) */
	.travel-steps-section .js-steps-reveal{
		transform: translateY(22px);
		transition-duration: .5s;
	}

	.travel-steps-title{
		margin-bottom: 14px;
	}

	.travel-steps-desc{
		font-size: 15px;
		line-height: 1.65;
		max-width: 480px;
	}

	.travel-steps-inner .row{
		row-gap: 28px;
	}

	.travel-steps-strip{
		margin-top: 0;
	}

	.travel-steps-strip .travel-step{
		flex: 0 0 50%;
		max-width: 50%;
		padding: 24px 22px;
		border-right: 1px solid rgba(255,255,255,.25);
		border-bottom: 1px solid rgba(255,255,255,.25);
	}

	.travel-steps-strip .travel-step:nth-child(even){
		border-right: 0;
	}

	.travel-steps-strip .travel-step:last-child{
		border-right: 0;
	}

	.travel-steps-strip .travel-step:nth-last-child(-n+2){
		border-bottom: 0;
	}

	.travel-step-number{
		font-size: 30px;
	}

	.travel-step-text{
		margin-top: 16px;
		max-width: 100%;
	}

	/* --- travel notes section fixes --- */
	.travel-notes-section{
		padding: 52px 0;
	}

	.travel-notes-section .travel-notes-head.js-notes-reveal:not(.is-revealed){
		transform: perspective(1000px) rotateX(-12deg);
	}
	.travel-notes-section .travel-notes-track-wrap.js-notes-reveal:not(.is-revealed){
		transform: translateX(48px);
	}

	.travel-notes-head-row{
		margin-bottom: 28px;
	}

	.travel-notes-title{
		margin-bottom: 12px;
	}

	.travel-notes-desc{
		font-size: 15px;
		line-height: 1.6;
		max-width: 100%;
	}

	.travel-notes-track-wrap{
		padding: 4px 6% 30px;
	}

	.travel-notes-slide{
		width: 58vw;
		height: 400px;
	}

	.travel-notes-slide.swiper-slide-active{
		width: 76vw;
	}

	.travel-notes-icon-placeholder{
		top: 24px;
		left: 24px;
	}

	.travel-notes-card-body{
		padding: 26px;
	}

	.travel-notes-slide.no-image .travel-notes-card-body{
		padding-top: 40px;
	}

	.travel-notes-card-title{
		font-size: 20px;
	}

	.travel-notes-more-link{
		margin-top: 24px;
		font-size: 14.5px;
	}

	/* --- enquiry form section fixes --- */
	.enquiry-section{
		padding: 52px 0;
	}

	.enquiry-card{
		border-radius: 24px;
	}

	.enquiry-media,
	.enquiry-media-overlay{
		border-radius: 0;
	}

	.enquiry-media{
		min-height: 360px;
		padding: 36px 34px;
	}

	.enquiry-media-title{
		font-size: 25px;
		max-width: 100%;
	}

	.enquiry-media-desc{
		max-width: 100%;
		margin-bottom: 26px;
	}

	.enquiry-media-contacts{
		column-gap: 24px;
		row-gap: 16px;
	}

	.enquiry-form-wrap{
		padding: 32px 30px;
	}

	.enquiry-field-row{
		row-gap: 18px;
	}

	.enquiry-field input.wpcf7-form-control,
	.enquiry-field select.wpcf7-form-control,
	.enquiry-field textarea.wpcf7-form-control{
		height: 54px;
		font-size: 14.5px;
	}

	.enquiry-field-submit input.wpcf7-submit{
		font-size: 14.5px;
		padding: 15px 22px;
	}

	/* --- footer fixes --- */
	.footer{
		padding-top: 44px;
	}

	.footer-main{
		padding: 48px 0 32px;
	}

	.footer-main .row{
		row-gap: 36px;
	}

	.footer-main .row > .col-12{
		flex: 0 0 50%;
		max-width: 50%;
	}

	.footer-brand{
		max-width: 100%;
	}

	.footer-col {
		margin-bottom: 15px;
	}

	.footer-logo{
		max-height: 48px;
		margin-bottom: 16px;
	}

	.footer-desc{
		font-size: 14.5px;
		margin-bottom: 22px;
	}

	.footer-social{
		margin-bottom: 0;
	}

	.footer-col-title{
		margin-bottom: 18px;
	}

	.footer-nav li + li,
	.footer-col .menu li + li,
	.footer-col ul:not(.footer-nav) li + li{
		margin-top: 14px;
	}

	.footer-contact-item + .footer-contact-item{
		margin-top: 18px;
	}

	/* --- services page fixes --- */
	.inner-about-banner-wrap{
		min-height: 0;
		height: auto;
		max-height: none;
	}

	.inner-about-banner-content{
		padding: 130px 0 56px;
	}

	.inner-about-banner-title{
		font-size: clamp(34px, 6vw, 46px);
		line-height: 1.18;
		margin-bottom: 18px;
	}

	.inner-about-banner-desc p{
		font-size: 15px;
		line-height: 1.55;
		max-width: 460px;
		padding-left: 20px;
	}

	.inner-service-section{
		padding: 56px 0;
	}

	.inner-service-section .row > .col-12{
		flex: 0 0 50%;
		max-width: 50%;
	}

	.inner-service-section .col-lg-4,
	.inner-service-section .col-md-6{
		margin-bottom: 24px;
	}

	.inner-service-section-card-title{
		font-size: 18px;
		margin: 14px 15px;
	}

	.inner-service-section-card-desc{
		margin-bottom: 18px;
	}

	/* --- flight booking page fixes --- */
	.inner-flight-section{
		padding: 56px 0;
	}

	.inner-flight-section .row > .col-12{
		flex: 0 0 50%;
		max-width: 50%;
	}

	.inner-flight-section .col-lg-4,
	.inner-flight-section .col-md-6{
		margin-bottom: 24px;
	}

	.inner-flight-section-card-icon,
	.inner-flight-section-card-icon img{
		width: 80px;
		height: 80px;
	}

	.inner-flight-section-card-title{
		font-size: 18px;
		margin: 12px 15px;
	}

	.inner-flight-section-card-desc{
		margin-bottom: 14px;
	}

	/* --- blog listing page fixes --- */
	.inner-blog-wrap{
		padding: 52px 0 44px;
	}

	.blog-page-header{
		gap: 24px;
		padding-bottom: 28px;
	}

	.blog-page-header-text{
		max-width: 100%;
	}

	.blog-page-header-text h1{
		font-size: 30px;
		margin-bottom: 14px;
	}

	.blog-page-header-text p{
		font-size: 15px;
	}

	.blog-category-filter{
		min-width: 100%;
	}

	.blog-listing-wrapper .row > .col-12{
		flex: 0 0 50%;
		max-width: 50%;
	}

	.blog-detail-wrapper h5{
		font-size: 17px;
	}

	/* --- single blog post fixes --- */
	.single-blog-wrap{
		padding: 120px 0 56px;
	}

	.single-blog-breadcrumb{
		flex-wrap: wrap;
		margin-bottom: 24px;
	}

	.single-blog-header{
		margin-bottom: 32px;
	}

	.single-blog-header h1{
		font-size: 30px;
		margin-bottom: 14px;
	}

	.single-blog-excerpt{
		font-size: 15px;
	}

	.single-blog-main-img img{
		height: 320px;
	}

	.single-blog-meta{
		gap: 16px;
		margin-bottom: 32px;
	}

	.single-blog-content{
		font-size: 15.5px;
		line-height: 1.78;
	}

	.related-post-wrap{
		padding-bottom: 64px;
	}

	.related-post-wrap h2{
		font-size: 26px;
		margin-bottom: 32px;
	}

	.related-post-wrap .row{
		row-gap: 32px;
	}

	.related-post-wrap .row > .col-12{
		flex: 0 0 50%;
		max-width: 50%;
	}

	/* --- contact page fixes --- */
	.contact-section{
		padding: 56px 0;
	}

	.contact-section .row{
		--bs-gutter-x: 30px;
		row-gap: 36px;
	}

	.contact-form-wrapper{
		padding: 26px;
	}

	.contact-form-wrapper input[type="text"],
	.contact-form-wrapper input[type="email"],
	.contact-form-wrapper input[type="tel"],
	.contact-form-wrapper select,
	.contact-form-wrapper textarea{
		font-size: 15px;
	}

	.contact-details{
		padding: 0;
	}

	.contact-detail-content p,
	.contact-detail-content a{
		font-size: 12px;
	}

	.contact-location-section{
		padding-bottom: 52px;
	}

	.contact-map{
		height: 150px;
	}

	.contact-features{
		grid-template-columns: 1fr 1fr;
		gap: 28px 16px;
	}

	.contact-feature{
		padding: 0 12px;
	}

	.contact-feature:not(:last-child)::after{
		display: none;
	}

}


@media only screen and (min-width: 768px) and (max-width: 991.98px) {

	/* --- header fixes --- */

	.site-header{
		position: fixed;
		padding: 14px 0;
		background: rgba(3,9,24,0.72);
	}

	body.f-nav .site-header{
		padding: 10px 0;
	}

	.site-header .container{
		padding-left: 6%;
		padding-right: 6%;
	}

	.site-header .row{
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
		row-gap: 0;
	}

	.site-header .row > .col-auto,
	.site-header .row > .col{
		flex: 0 0 auto;
		max-width: none;
		width: auto;
	}

	.site-header .row > .col{
		text-align: right;
	}

	.site-logo{
		max-height: 40px;
	}

	.glass-nav{
		display: inline-block;
		border: none;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		padding: 0;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}
	body.f-nav .site-header{
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle,
	.mega-menu-toggle,
	body.f-nav #mega-menu-wrap-primary .mega-menu-toggle,
	body.f-nav .mega-menu-toggle{
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
	}

	.site-header .col-auto:last-child{
		display: none;
	}


	#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary{
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 360px !important;
		max-width: 70% !important;
		height: 100vh !important;
		max-height: 100vh !important;
		margin: 0 !important;
		display: block !important;
		transform: translateX(100%) !important;
		transition: transform .35s ease !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		z-index: 9999999999 !important;
		background: #0d1f4d !important;
		box-shadow: -16px 0 40px rgba(0,0,0,.35);
		padding: 0 0 24px !important;
		text-align: left !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary{
		transform: translateX(0) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary,
	#mega-menu-wrap-primary #mega-menu-primary a.mega-menu-link{
		color: #eef2fa !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
		display: block !important;
		width: 100% !important;
		padding: 14px 24px !important;
		font-family: "Poppins", sans-serif !important;
		font-weight: 500 !important;
		font-size: 15px !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link{
		color: #d98a1f !important;
		background: rgba(255,255,255,.06) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{
		color: #d98a1f !important;
	}

	#mega-menu-wrap-primary.mega-keyboard-navigation > li.mega-menu-item > a.mega-menu-link:focus{
		color: #0d1f4d !important;
		background: #d98a1f !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu{
		background: rgba(255,255,255,.05) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link{
		color: #cdd6ea !important;
		font-size: 14px !important;
		padding-left: 40px !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::before,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::after{
		background-color: #d98a1f !important;
	}

	/* --- hero banner fixes --- */
	.hero-banner{
		padding: 160px 0 160px;
	}

	/* --- "inside every listing" section fixes --- */
	.listing-features{
		padding: 52px 0;
	}

	.listing-features-title{
		margin-bottom: 12px;
	}

	.listing-features-desc{
		font-size: 15px;
		line-height: 1.65;
		margin-bottom: 36px;
	}

	.listing-features .row{
		row-gap: 24px;
	}

	.listing-feature-card{
		padding: 30px 26px 26px;
		border-radius: 20px;
	}

	.listing-feature-icon{
		width: 72px;
		height: 72px;
		margin-bottom: 20px;
	}

	.listing-feature-icon img{
		width: 38px;
		height: 38px;
	}

	.listing-feature-title{
		font-size: 15px;
		margin-bottom: 14px;
	}

	.listing-feature-list p,
	.listing-feature-list li{
		font-size: 14px;
		padding: 11px 0;
	}

	.listing-feature-btn{
		margin-top: 22px;
		padding: 14px 18px;
	}

	/* --- visa services slider section fixes --- */
	.visa-slider-section{
		padding: 52px 0;
	}

	/* mid tablets: trim the travel distance a touch (stagger is 45ms via JS below lg) */
	.visa-slider-section .js-visa-reveal{
		transform: translateY(24px);
	}

	.visa-slider-desc{
		font-size: 15px;
		line-height: 1.65;
	}

	.visa-slider-wrap{
		margin-top: 36px;
	}

	.visa-slider-track{
		gap: 20px;
	}

	.visa-slide{
		flex: 0 0 calc((100% - 40px) / 2.4);
		max-width: calc((100% - 40px) / 2.4);
	}

	.visa-card-media{
		height: 180px;
	}

	.visa-slider-arrow{
		display: none;
	}

	.visa-slider-progress{
		margin: 30px auto 0;
	}

	/* --- holiday packages section fixes --- */
	.holiday-section{
		padding: 56px 0;
	}

	.holiday-section .row{
		row-gap: 32px;
	}

	.holiday-intro-card{
		height: 460px;
		border-radius: 22px;
	}

	.holiday-intro-body{
		padding: 32px 30px 34px;
	}

	.holiday-intro-logo{
		height: 32px;
		margin-bottom: 20px;
	}

	.holiday-intro-title{
		font-size: 28px;
		margin-bottom: 12px;
	}

	.holiday-intro-desc{
		font-size: 14.5px;
		max-width: 480px;
		margin-bottom: 18px;
	}

	.holiday-packages-title{
		margin-bottom: 28px;
	}

	.holiday-marquee{
		-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 32px, #000 calc(100% - 32px), transparent 100%);
		mask-image: linear-gradient(90deg, transparent 0, #000 32px, #000 calc(100% - 32px), transparent 100%);
	}

	.holiday-marquee-track{
		gap: 20px;
	}

	.holiday-package-slide{
		width: 220px;
	}

	.holiday-package-card{
		height: 360px;
		border-radius: 18px;
	}

	.holiday-package-body{
		padding: 18px 18px 20px;
	}

	.holiday-package-title{
		font-size: 19px;
	}

	.holiday-package-desc{
		font-size: 13.5px;
	}

	/* --- about section fixes --- */
	.about-section{
		padding: 56px 0;
	}

	.about-section .row{
		row-gap: 32px;
	}

	.about-image{
		height: 380px;
		border-radius: 15px;
	}

	.about-content h2{
		margin-bottom: 18px;
	}

	.about-content p{
		font-size: 15.5px;
		line-height: 1.72;
		max-width: 100%;
		margin-bottom: 26px;
	}

	.about-btn{
		font-size: 14px;
		padding: 13px 24px;
	}

	/* --- travel notes section fixes --- */
	.travel-notes-section{
		padding: 56px 0;
	}

	.travel-notes-head-row{
		margin-bottom: 32px;
	}

	.travel-notes-title{
		margin-bottom: 14px;
	}

	.travel-notes-desc{
		font-size: 15px;
		line-height: 1.62;
		max-width: 520px;
	}

	.travel-notes-track-wrap{
		padding: 4px 6% 34px;
	}

	.travel-notes-slide{
		width: 44vw;
		height: 420px;
	}

	.travel-notes-slide.swiper-slide-active{
		width: 60vw;
	}

	.travel-notes-icon-placeholder{
		top: 28px;
		left: 28px;
	}

	.travel-notes-card-body{
		padding: 28px;
	}

	.travel-notes-slide.no-image .travel-notes-card-body{
		padding-top: 44px;
	}

	.travel-notes-card-title{
		font-size: 21px;
	}

	.travel-notes-more-link{
		margin-top: 26px;
		font-size: 15px;
	}

	/* --- enquiry form section fixes --- */
	.enquiry-section{
		padding: 56px 0;
	}

	.enquiry-card{
		border-radius: 28px;
	}

	.enquiry-media,
	.enquiry-media-overlay{
		border-radius: 0;
	}

	.enquiry-media{
		min-height: 420px;
		padding: 40px;
	}

	.enquiry-media-title{
		font-size: 27px;
		max-width: 100%;
	}

	.enquiry-media-desc{
		max-width: 100%;
		margin-bottom: 28px;
	}

	.enquiry-media-contacts{
		column-gap: 26px;
		row-gap: 18px;
	}

	.enquiry-form-wrap{
		padding: 36px;
	}

	.enquiry-field-row{
		row-gap: 20px;
	}

	.enquiry-field input.wpcf7-form-control,
	.enquiry-field select.wpcf7-form-control,
	.enquiry-field textarea.wpcf7-form-control{
		height: 54px;
		font-size: 14.5px;
	}

	.enquiry-field-submit input.wpcf7-submit{
		font-size: 14.5px;
		padding: 15px 22px;
	}

	/* --- services page fixes --- */
	.inner-about-banner-wrap{
		min-height: 520px;
		height: auto;
		max-height: none;
	}

	.inner-about-banner-content{
		padding: 150px 0 72px;
	}

	.inner-about-banner-title{
		font-size: clamp(40px, 6vw, 52px);
		line-height: 1.15;
		margin-bottom: 22px;
	}

	.inner-about-banner-desc p{
		font-size: 16px;
		line-height: 1.55;
		max-width: 480px;
		padding-left: 24px;
	}

	.inner-service-section{
		padding: 64px 0;
	}

	.inner-service-section .col-lg-4,
	.inner-service-section .col-md-6{
		margin-bottom: 28px;
	}

	.inner-service-section-card-title{
		font-size: 19px;
		margin: 14px 15px;
	}

	.inner-service-section-card-desc{
		margin-bottom: 20px;
	}

	/* --- flight booking page fixes --- */
	.inner-flight-section{
		padding: 64px 0;
	}

	.inner-flight-section .col-lg-4,
	.inner-flight-section .col-md-6{
		margin-bottom: 28px;
	}

	.inner-flight-section-card-icon,
	.inner-flight-section-card-icon img{
		width: 90px;
		height: 90px;
	}

	.inner-flight-section-card-title{
		font-size: 19px;
		margin: 14px 15px;
	}

	.inner-flight-section-card-desc{
		margin-bottom: 16px;
	}

	/* --- about page fixes --- */
	.inner-why-choose-wrap{
		padding: 72px 0;
	}

	.inner-why-choose-wrap .row{
		row-gap: 28px;
	}

	.inner-why-choose-title{
		font-size: 32px;
		margin-bottom: 16px;
	}

	.inner-why-choose-intro{
		font-size: 15.5px;
		line-height: 1.75;
		margin-bottom: 44px;
	}

	.inner-why-choose-card{
		padding: 38px 24px 30px;
	}

	.inner-about-us-wrap{
		padding: 64px 0;
	}

	.inner-about-us-wrap .row{
		row-gap: 36px;
	}

	.inner-about-us-collage{
		padding: 24px 6px;
	}

	.inner-about-us-content{
		font-size: 15.5px;
		line-height: 1.85;
	}

	.inner-testimonials-wrap{
		padding: 72px 0;
	}

	.inner-testimonials-title{
		font-size: 30px;
		margin-bottom: 40px;
	}

	.inner-testimonials-slider-wrap{
		gap: 16px;
	}

	.inner-testimonials-arrow{
		width: 44px;
		height: 44px;
	}

	/* --- contact page fixes --- */
	.contact-section{
		padding: 64px 0;
	}

	.contact-section .row{
		--bs-gutter-x: 40px;
		row-gap: 40px;
	}

	.contact-form-wrapper{
		padding: 30px;
	}

	.contact-form-wrapper input[type="text"],
	.contact-form-wrapper input[type="email"],
	.contact-form-wrapper input[type="tel"],
	.contact-form-wrapper select,
	.contact-form-wrapper textarea{
		font-size: 14px;
	}

	.contact-details{
		padding: 0;
	}

	.contact-detail-content p,
	.contact-detail-content a{
		font-size: 12px;
	}

	.contact-location-section{
		padding-bottom: 56px;
	}

	.contact-map{
		height: 150px;
	}

	.contact-feature{
		padding: 0 14px;
	}

}


@media only screen and (min-width: 991px) and (max-width: 1200.98px) {

	/* --- header fixes --- */

	.site-header{
		position: fixed;
		padding: 14px 0;
		background: rgba(3,9,24,0.72);
	}

	body.f-nav .site-header{
		padding: 10px 0;
	}

	.site-header .container{
		padding-left: 5%;
		padding-right: 5%;
	}

	.site-header .row{
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
		row-gap: 0;
	}

	.site-header .row > .col-auto,
	.site-header .row > .col{
		flex: 0 0 auto;
		max-width: none;
		width: auto;
	}

	.site-header .row > .col{
		text-align: right;
	}

	.site-logo{
		max-height: 44px;
	}

	.glass-nav{
		display: inline-block;
		border: none;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		padding: 0;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}
	body.f-nav .site-header{
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle,
	.mega-menu-toggle,
	body.f-nav #mega-menu-wrap-primary .mega-menu-toggle,
	body.f-nav .mega-menu-toggle{
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
	}

	.site-header .col-auto:last-child{
		display: none;
	}


	#mega-menu-wrap-primary .mega-menu-toggle + #mega-menu-primary{
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		width: 380px !important;
		max-width: 60% !important;
		height: 100vh !important;
		max-height: 100vh !important;
		margin: 0 !important;
		display: block !important;
		transform: translateX(100%) !important;
		transition: transform .35s ease !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		z-index: 9999999999 !important;
		background: #0d1f4d !important;
		box-shadow: -16px 0 40px rgba(0,0,0,.35);
		padding: 0 0 24px !important;
		text-align: left !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open + #mega-menu-primary{
		transform: translateX(0) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary,
	#mega-menu-wrap-primary #mega-menu-primary a.mega-menu-link{
		color: #eef2fa !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
		display: block !important;
		width: 100% !important;
		padding: 14px 24px !important;
		font-family: "Poppins", sans-serif !important;
		font-weight: 500 !important;
		font-size: 15px !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-toggle-on > a.mega-menu-link{
		color: #d98a1f !important;
		background: rgba(255,255,255,.06) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
	#mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{
		color: #d98a1f !important;
	}

	#mega-menu-wrap-primary.mega-keyboard-navigation > li.mega-menu-item > a.mega-menu-link:focus{
		color: #0d1f4d !important;
		background: #d98a1f !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu{
		background: rgba(255,255,255,.05) !important;
	}

	#mega-menu-wrap-primary #mega-menu-primary ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link{
		color: #cdd6ea !important;
		font-size: 14px !important;
		padding-left: 40px !important;
	}

	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::before,
	#mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::after{
		background-color: #d98a1f !important;
	}

	/* --- hero banner fixes --- */
	.hero-banner{
		padding: 170px 0 120px;
	}

	.hero-banner-media::after{
		height: 360px;
	}

	.hero-eyebrow{
		font-size: 16px;
		margin-bottom: 14px;
	}

	.hero-title{
		margin-bottom: 20px;
	}

	.hero-desc{
		font-size: 16px;
		line-height: 1.68;
	}

	.hero-search-wrap{
		margin-top: 46px;
		margin-bottom: -36px;
	}

	.hero-search-card{
		border-radius: 24px;
		padding: 12px 28px 28px;
	}

	.hero-search-tabs .nav-link{
		gap: 8px;
		font-size: 15px;
		padding: 12px 18px;
	}

	.hero-field-submit input.wpcf7-submit{
		font-size: 15px;
		padding: 16px 22px;
	}

	.hero-field-row{
		row-gap: 14px;
	}

	.hero-field-row > [class*="col-"]{
		flex: 0 0 33.333%;
		max-width: 33.333%;
	}

	.hero-field-row > [class*="col-"].hero-field-submit,
	.hero-field-row > .hero-field-submit{
		flex: 0 0 100%;
		max-width: 100%;
		margin-top: 2px;
	}

	.hero-field-row .hero-field-submit{
		width: 100%;
	}

	.hero-field-row .hero-field-submit input.wpcf7-submit{
		width: 100%;
	}

	/* --- "inside every listing" section fixes --- */
	.listing-features{
		padding: 56px 0;
	}

	.listing-features-desc{
		font-size: 16px;
		line-height: 1.68;
		margin-bottom: 42px;
	}

	.listing-features .row{
		row-gap: 24px;
	}

	.listing-feature-card{
		padding: 30px 24px 26px;
		border-radius: 20px;
	}

	.listing-feature-icon{
		width: 78px;
		height: 78px;
		margin-bottom: 22px;
	}

	.listing-feature-icon img{
		width: 40px;
		height: 40px;
	}

	.listing-feature-title{
		font-size: 15px;
		margin-bottom: 14px;
	}

	.listing-feature-list p,
	.listing-feature-list li{
		font-size: 14px;
		padding: 11px 0;
	}

	.listing-feature-btn{
		margin-top: 22px;
		padding: 15px 16px;
	}

	/* --- travel notes section fixes --- */
	.travel-notes-section{
		padding: 56px 0;
	}

	.travel-notes-head-row{
		margin-bottom: 32px;
	}

	.travel-notes-title{
		margin-bottom: 14px;
	}

	.travel-notes-desc{
		font-size: 15px;
		line-height: 1.62;
	}

	.travel-notes-track-wrap{
		padding: 4px 6% 34px;
	}

	.travel-notes-slide{
		width: 300px;
		height: 400px;
	}

	.travel-notes-slide.swiper-slide-active{
		width: 460px;
	}

	.travel-notes-card-body{
		padding: 28px;
	}

	.travel-notes-slide.no-image .travel-notes-card-body{
		padding-top: 44px;
	}

	.travel-notes-card-title{
		font-size: 22px;
	}

	.travel-notes-more-link{
		margin-top: 26px;
	}

	/* --- enquiry form section fixes --- */
	.enquiry-section{
		padding: 52px 0;
	}

	.enquiry-media,
	.enquiry-media-overlay{
		border-radius: 24px 110px 0 24px;
	}

	.enquiry-media{
		min-height: 480px;
		padding: 40px;
	}

	.enquiry-media-title{
		max-width: 340px;
	}

	.enquiry-media-desc{
		max-width: 320px;
		margin-bottom: 26px;
	}

	.enquiry-media-contacts{
		column-gap: 24px;
		row-gap: 16px;
	}

	.enquiry-form-wrap{
		padding: 32px;
	}

	.enquiry-field-row{
		row-gap: 18px;
	}

	.enquiry-field input.wpcf7-form-control,
	.enquiry-field select.wpcf7-form-control,
	.enquiry-field textarea.wpcf7-form-control{
		height: 52px;
	}

	/* --- inner page banner fixes --- */
	.inner-about-banner-wrap{
		min-height: 600px;
		height: auto;
		max-height: none;
	}

	.inner-about-banner-content{
		padding: 160px 0 80px;
	}

	.inner-about-banner-title{
		font-size: clamp(46px, 5.4vw, 56px);
		line-height: 1.12;
		margin-bottom: 24px;
	}

	.inner-about-banner-desc p{
		font-size: 16px;
		line-height: 1.55;
		max-width: 460px;
		padding-left: 26px;
	}

	/* --- about page fixes --- */
	.inner-why-choose-wrap{
		padding: 80px 0;
	}

	.inner-why-choose-wrap .row{
		row-gap: 28px;
	}

	.inner-why-choose-title{
		font-size: 34px;
		margin-bottom: 18px;
	}

	.inner-why-choose-intro{
		font-size: 16px;
		line-height: 1.8;
		margin-bottom: 48px;
	}

	.inner-why-choose-card{
		padding: 36px 22px 30px;
	}

	.inner-why-choose-icon{
		width: 72px;
		height: 72px;
		margin-bottom: 22px;
	}

	.inner-about-us-wrap{
		padding: 72px 0;
	}

	.inner-about-us-content{
		font-size: 15.5px;
		line-height: 1.85;
	}

	.inner-testimonials-wrap{
		padding: 80px 0;
	}

	.inner-testimonials-title{
		font-size: 32px;
		margin-bottom: 44px;
	}

	.inner-testimonials-slider-wrap{
		gap: 16px;
	}

	.inner-testimonials-arrow{
		width: 44px;
		height: 44px;
	}

	.inner-testimonials-card{
		padding: 26px 22px;
	}

	.inner-testimonials-quote{
		font-size: 14.5px;
		min-height: 72px;
	}

	/* --- blog listing page fixes --- */
	.inner-blog-wrap{
		padding: 64px 0 52px;
	}

	.inner-blog-wrap .row{
		row-gap: 28px;
	}

	.blog-page-header{
		padding-bottom: 32px;
	}

	.blog-page-header-text{
		max-width: 60%;
	}

	.blog-page-header-text h1{
		font-size: 34px;
		margin-bottom: 16px;
	}

	.blog-page-header-text p{
		font-size: 15.5px;
	}

	.blog-category-filter{
		min-width: 260px;
	}

	.blog-detail-wrapper h5{
		font-size: 17px;
	}

	/* --- single blog post fixes --- */
	.single-blog-wrap{
		padding: 150px 0 64px;
	}

	.single-blog-header h1{
		font-size: 32px;
		margin-bottom: 16px;
	}

	.single-blog-excerpt{
		font-size: 15.5px;
	}

	.single-blog-main-img img{
		height: 420px;
	}

	.single-blog-meta{
		margin-bottom: 32px;
	}

	.single-blog-content{
		font-size: 15.5px;
		line-height: 1.8;
	}

	.related-post-wrap{
		padding-bottom: 72px;
	}

	.related-post-wrap h2{
		font-size: 28px;
		margin-bottom: 36px;
	}

	.related-post-wrap .row{
		row-gap: 36px;
	}

	/* --- contact page fixes --- */
	.contact-map {
		height: 150px;
	}

}

/*umrah page*/
.page-banner-section {
    padding-top: 20px; /* Space below header */
    padding-bottom: 30px;
    margin-top:90px;
}

.page-banner {
    position: relative;
    width: 100%;
    min-height: 500px;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    border-radius: 20px;
    overflow: hidden;

    display: flex;
    align-items: center;
    justify-content: center;
}

.page-banner-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background: rgba(0, 0, 0, 0.25);
}

.page-banner-content {
    position: relative;
    z-index: 1;

    text-align: center;
    padding: 30px;

    color: #fff;
}

.page-banner-content h1 {
    margin: 0 0 15px;
    font-size: 52px;
    color: #fff;
}

.page-banner-content p {
    max-width: 800px;
    margin: 0 auto;

    font-size: 20px;
    line-height: 1.6;
    color: #fff;
}

@media (max-width: 767px) {

    .page-banner-section {
        padding-top: 15px;
    }

    .page-banner {
        min-height: 350px;
        border-radius: 15px;
    }

    .page-banner-content h1 {
        font-size: 32px;
    }

    .page-banner-content p {
        font-size: 16px;
    }
}


.umrah-package-card {
    height: 100%;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
}

.umrah-package-image img {
    width: 100%;
    height: 230px;
    object-fit: cover;
    display: block;
}

.umrah-package-content {
    padding: 20px;
    text-align: center;
}

.umrah-package-title {
    font-size: 20px;
    line-height: 1.4;
    margin: 0 0 15px;
}

.enquiry-btn {
    display: inline-block;
    padding: 10px 22px;
    border-radius: 4px;
    text-decoration: none;
    background-color: #d98a1f !important;
    border:1px solid #d98a1f !important;
}
.umarah-package-wraapper {
    padding-top:60px !important;
    padding-bottom:60px !important;
}
.umarah-package-wraapper h2 {
    font-family: "Poppins", sans-serif;
    font-weight: 800;
    color: #0d1f4d;
    margin-bottom: 16px;
    text-align: center;
    padding-bottom: 30px;
}





















