@charset "utf-8";

/*=========== PREMIUM THEME: NAVY & GOLD (loaded after vivekananda-all.css) ============*/

:root {
	--vt-navy: #1b2333;
	--vt-navy-deep: #121826;
	--vt-navy-grad: linear-gradient(135deg, #222b3d 0%, #1b2333 50%, #121826 100%);
	--vt-gold: #e3a83b;
	--vt-gold-dark: #c98d1f;
	--vt-gold-light: #f6cf6e;
	--vt-gold-grad: linear-gradient(135deg, #f8d57a 0%, #eab24c 50%, #d4952a 100%);
	--vt-gold-text: #2a1d0a;
	--vt-cream: #faf6ee;
	--vt-ink: #1f2633;
	--vt-muted: #6d6a63;
	--vt-line: #ece5d8;
	--vt-serif: 'Playfair Display', Georgia, serif;
	--vt-radius: 16px;
	--vt-shadow: 0 18px 45px -20px rgba(27, 35, 51, .35), 0 2px 8px rgba(27, 35, 51, .06);
	--vt-shadow-hover: 0 26px 55px -20px rgba(27, 35, 51, .45), 0 4px 12px rgba(27, 35, 51, .08);
	--vt-bullet: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'><defs><linearGradient id='g' x1='0' y1='0' x2='1' y2='1'><stop offset='0' stop-color='%23f8d57a'/><stop offset='1' stop-color='%23d4952a'/></linearGradient></defs><circle cx='20' cy='20' r='20' fill='url(%23g)'/><path transform='translate(9 9) scale(.92)' fill='%23fff' d='M18 11v2h4v-2h-4zm-2 6.61c.96.71 2.21 1.65 3.2 2.39.4-.53.8-1.07 1.2-1.6-.99-.74-2.24-1.68-3.2-2.4-.4.54-.8 1.08-1.2 1.61zM20.4 5.6c-.4-.53-.8-1.07-1.2-1.6-.99.74-2.24 1.68-3.2 2.4.4.53.8 1.07 1.2 1.6.96-.72 2.21-1.65 3.2-2.4zM4 9c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h1v4h2v-4h1l5 3V6L8 9H4zm11.5 3c0-1.33-.58-2.53-1.5-3.35v6.69c.92-.81 1.5-2.01 1.5-3.34z'/></svg>");
	--vt-leaf: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 260'><g fill='none' stroke='%23c9a46a' stroke-width='1.4' stroke-opacity='.5'><path d='M96 260C98 180 110 100 150 20'/><path d='M100 222c-30-6-48-24-52-50 28 4 46 22 52 50z'/><path d='M103 186c26-10 40-30 40-56-26 8-40 28-40 56z'/><path d='M108 146c-28-8-44-28-46-54 26 6 42 26 46 54z'/><path d='M120 106c24-12 36-32 34-58-24 10-36 30-34 58z'/><path d='M133 70c-24-10-36-28-36-52 22 8 34 26 36 52z'/></g></svg>");
}

html body {
	font-family: 'Poppins', sans-serif;
	font-size: 15px;
	line-height: normal;
	color: var(--vt-ink);
	background-color: var(--vt-cream);
}
::selection { background: var(--vt-navy); color: #fff; }
::-moz-selection { background: var(--vt-navy); color: #fff; }
html body a:hover, html body a:focus { text-decoration: none; }

/*************** BUTTONS ***************/
.sendbutton,
.link a {
	background: var(--vt-gold-grad);
	color: var(--vt-gold-text);
	border-radius: 10px;
	letter-spacing: .6px;
	box-shadow: 0 10px 22px -10px rgba(201, 141, 31, .7);
	transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.sendbutton:hover,
.link a:hover {
	background: var(--vt-gold-grad);
	color: var(--vt-gold-text);
	filter: brightness(1.05);
	transform: translateY(-2px);
	box-shadow: 0 16px 28px -12px rgba(201, 141, 31, .8);
}
.sendbutton:active, .link a:active { transform: translateY(0); }

/*************** HEADER ***************/
header,
header.smaller {
	background: #fff;
	padding: 14px 0;
	border-bottom: 1px solid var(--vt-line);
	box-shadow: 0 10px 30px -18px rgba(27, 35, 51, .35);
}
header.smaller {
	padding: 10px 0;
	background: rgba(255, 255, 255, .97);
	-webkit-backdrop-filter: saturate(160%) blur(10px);
	backdrop-filter: saturate(160%) blur(10px);
}
header .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
header .container:before,
header .container:after { display: none; }
header .logo,
header.smaller .logo {
	position: static;
	order: 1;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	background: none;
	box-shadow: none;
}
header .logo img { display: block; height: 52px; width: auto; }
header .header-left { order: 2; float: none; }
header .header-right { order: 3; float: none; }

.pnr-box .sendbutton {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 6px;
	padding: 11px 22px 11px 18px;
	border-radius: 50px;
	font-size: 14px;
	font-weight: 600;
	text-transform: none;
	letter-spacing: .3px;
	background: var(--vt-gold-grad);
	color: var(--vt-gold-text);
	box-shadow: 0 10px 22px -10px rgba(201, 141, 31, .75);
}
.pnr-box .sendbutton:before {
	content: '';
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	background: no-repeat center / contain;
}
.pnr-box .sendbutton:first-of-type:before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a1d0a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 7a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v3a2 2 0 0 0 0 4v3a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-3a2 2 0 0 0 0-4z'/><path d='M14 5v2M14 11v2M14 17v2'/></svg>");
}
.pnr-box .sendbutton:last-of-type {
	background: var(--vt-navy-grad);
	color: #fff;
	box-shadow: 0 10px 22px -10px rgba(18, 24, 38, .75);
}
.pnr-box .sendbutton:last-of-type:before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f6cf6e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 21s-7-6.2-7-12a7 7 0 0 1 14 0c0 5.8-7 12-7 12z'/><circle cx='12' cy='9' r='2.5'/></svg>");
}
.pnr-box .sendbutton:hover {
	background: var(--vt-gold-grad);
	color: var(--vt-gold-text);
	transform: translateY(-2px);
	filter: brightness(1.05);
	box-shadow: 0 14px 26px -10px rgba(201, 141, 31, .85);
}
.pnr-box .sendbutton:last-of-type:hover {
	background: var(--vt-navy-grad);
	color: var(--vt-gold-light);
	box-shadow: 0 14px 26px -10px rgba(18, 24, 38, .85);
}

.whtsp-chat {
	text-align: left;
	padding: 2px 0 2px 46px;
	background-position: left center;
	color: var(--vt-muted);
	font-size: 11px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: .3px;
	line-height: 18px;
}
.whtsp-chat a { color: var(--vt-navy); font-size: 15px; font-weight: 700; letter-spacing: .3px; }
.whtsp-chat a:hover { color: #128c4b; }

/*************** BANNER SLIDER ***************/
@media screen and (min-width: 981px) {
	.q_slide { height: clamp(400px, 27vw, 540px); }
}
.q_slide .slide { background: var(--vt-navy); }
.q_slide .slide .image { object-position: center 55%; }
.slider-wrap--home .q_slide { height: clamp(220px, 33.4vw, 520px); }
.slider-wrap--home .pagination,
.slider-wrap--home .arrows { display: none; }
.slider-wrap--home .slide--home-photo .image-container,
.slider-wrap--home .slide--home-photo .image-wrapper { image-rendering: auto; }
.slider-wrap--home .slide--home-photo .image { object-position: center center; image-rendering: auto; }
.q_slide .slide .grad-btm {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(90deg, rgba(12, 9, 6, .1) 0%, rgba(12, 9, 6, .2) 16%, rgba(12, 9, 6, .6) 26%, rgba(12, 9, 6, .45) 52%, rgba(12, 9, 6, 0) 74%),
		linear-gradient(180deg, rgba(18, 24, 38, .15) 0%, rgba(18, 24, 38, 0) 30%, rgba(18, 24, 38, 0) 65%, rgba(18, 24, 38, .5) 100%);
}
.q_slide .slide .caption,
.q_slide .slide .caption.right {
	position: absolute;
	left: 23%;
	right: auto;
	top: calc(50% - 30px);
	bottom: auto;
	width: 54%;
	padding: 0;
	text-align: left;
	transform: translateY(-50%);
}
.q_slide .slide .caption h1 {
	font-family: var(--vt-serif);
	font-size: clamp(16px, 3.2vw, 48px);
	font-weight: 700;
	letter-spacing: .5px;
	line-height: 1.1;
	color: #fff;
	text-shadow: 0 4px 22px rgba(0, 0, 0, .55);
	margin-bottom: .3em;
}
.q_slide .slide .caption p {
	font-family: var(--vt-serif);
	font-size: clamp(10px, 1.55vw, 24px);
	font-weight: 600;
	letter-spacing: 1px;
	line-height: 1.3;
	color: #fff;
	text-shadow: 0 2px 14px rgba(0, 0, 0, .55);
	padding-bottom: 1.1em;
	margin-bottom: 0;
}
.q_slide .slide .caption p:after {
	left: 0;
	width: 56px;
	height: 3px;
	margin-left: 0;
	border-radius: 3px;
	background: var(--vt-gold-grad);
}
.q_slide .arrows .arrow {
	width: 48px;
	height: 48px;
	padding: 0;
	margin-top: -24px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(18, 24, 38, .35);
	border: 1px solid rgba(255, 255, 255, .35);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	transition: background .25s ease, transform .25s ease;
}
.q_slide .arrows .arrow:hover { background: rgba(18, 24, 38, .6); transform: scale(1.06); }
.q_slide .arrows .arrow:before { display: none; }
.q_slide .arrows .prev { margin-right: 0; }
.q_slide .arrows .svg { fill: #fff; width: 10px; height: 22px; display: flex; }
.q_slide .pagination .item:hover::before,
.q_slide .pagination .item.q_current::before { background-color: var(--vt-gold); }

/*************** SEARCH BOX ***************/
.search-box {
	padding: 20px 22px;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(236, 229, 216, .9);
	box-shadow: 0 30px 60px -25px rgba(27, 35, 51, .45), 0 2px 10px rgba(27, 35, 51, .06);
}
.search-box .fieldset-select,
.search-box .fieldset1 {
	border: none;
	border-right: 1px solid var(--vt-line);
	background-color: #fff;
	border-radius: 0;
	transition: background-color .2s ease;
}
.search-box .fieldset-select:focus-within,
.search-box .fieldset1:focus { background-color: #fdf8ee; box-shadow: none; }
.search-box .fieldset-select .fieldset:focus { box-shadow: none; }
.search-box .sendbutton {
	width: calc(20% - 14px);
	margin-left: 14px;
	border: 0;
	cursor: pointer;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 1px;
	box-shadow: 0 10px 22px -12px rgba(201, 141, 31, .8);
}
.search-box .sendbutton:hover { transform: none; }
.search-box .sendbutton.is-loading { opacity: .8; pointer-events: none; }
.search-loader {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(18, 24, 38, .48);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}
.search-loader[hidden] { display: none; }
.search-loader__card {
	min-width: 230px;
	padding: 28px 32px 22px;
	text-align: center;
	background: #fff;
	border-radius: 18px;
	border-top: 4px solid var(--vt-gold);
	box-shadow: 0 24px 50px -18px rgba(0, 0, 0, .5);
}
.search-loader__spin {
	display: block;
	width: 46px;
	height: 46px;
	margin: 0 auto 14px;
	border-radius: 50%;
	border: 3px solid #f3e6c8;
	border-top-color: var(--vt-gold-dark);
	animation: searchSpin .7s linear infinite;
}
.search-loader__card p {
	margin: 0 0 4px;
	font-family: var(--vt-serif);
	font-size: 18px;
	font-weight: 700;
	color: var(--vt-navy);
}
.search-loader__card span { font-size: 13px; color: var(--vt-muted); }
@keyframes searchSpin { to { transform: rotate(360deg); } }

/*************** PACKAGE RESULTS ***************/
.package-wrap {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 24px;
	padding: 30px 24px 30px 36px;
	background: #fff;
	border-radius: var(--vt-radius);
	border: 1px solid var(--vt-line);
	box-shadow: var(--vt-shadow);
	overflow: hidden;
	transition: transform .3s ease, box-shadow .3s ease;
}
.package-wrap:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	background: var(--vt-gold-grad);
}
.package-wrap:hover { transform: translateY(-3px); box-shadow: var(--vt-shadow-hover); }
.packg-box h3 { color: var(--vt-navy); font-size: 16px; font-weight: 700; line-height: 1.35; }
.packg-box1 h3, .packg-box2 h3, .packg-box3 h3, .packg-box4 h3 { color: var(--vt-muted); font-weight: 500; }
.packg-box1 h3 strong { color: var(--vt-ink); font-weight: 700; }
.packg-box i { color: var(--vt-gold); font-size: 20px; }
.packg-box5 h3 {
	font-size: 24px;
	font-weight: 800;
	color: var(--vt-navy);
	margin-bottom: 10px;
}
.packg-box5 .link a { padding: 12px 22px; font-size: 13px; }
.packg-box4 h3.seats-ok { color: #178a3a; }
.packg-box4 h3.seats-low { color: #e07a14; }
.packg-box5 .link a.is-full,
.packg-box5 .link a.is-full:hover,
.packg-box5 .link a.is-full:focus {
	background: #d32020;
	color: #fff;
	box-shadow: none;
	filter: none;
	transform: none;
}
.viewpop a {
	border: 1px solid var(--vt-line);
	color: var(--vt-navy);
	background: #fff;
	font-size: 12px;
	padding: 5px 14px;
}
.viewpop a:hover { background: var(--vt-navy); border-color: var(--vt-navy); color: #fff; }
.notify-link a { background: var(--vt-navy); color: #fff; border-radius: 50px; padding: 4px 12px; }
.notify-link a:hover { background: var(--vt-gold-dark); }

/*************** PACKAGES CARD + LATEST UPDATES ***************/
.latest-updates {
	background:
		var(--vt-leaf) right -30px bottom 10px / 180px 234px no-repeat,
		var(--vt-leaf) left -60px top 40px / 150px 195px no-repeat;
}
.view-pack-box { padding: 0; }
.view-pack-box:after { display: none; }
.pack-img {
	position: relative;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: var(--vt-shadow);
}
.view-pack-box img { display: block; transition: transform 1.2s ease; }
.view-pack-box:hover img { transform: scale(1.05); }
.pack-img:after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(18, 24, 38, .78) 0%, rgba(18, 24, 38, .35) 65%, rgba(18, 24, 38, .1) 100%);
}
.pack-cnt {
	z-index: 2;
	left: 0;
	top: 50%;
	width: 100%;
	padding: 0 30px;
	text-align: left;
	transform: translateY(-50%);
}
.pack-cnt h4 { color: var(--vt-gold-light); font-size: 14px; font-weight: 600; letter-spacing: 4px; margin-bottom: 4px; }
.pack-cnt h3 {
	font-family: var(--vt-serif);
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 1px;
	color: #fff;
	text-shadow: 0 3px 16px rgba(0, 0, 0, .45);
	margin-bottom: 22px;
}
.pack-cnt .link a {
	padding: 11px 24px;
	border-radius: 50px;
	text-transform: none;
	font-size: 14px;
	font-weight: 600;
}
.pack-cnt .link a:after { content: '\2192'; margin-left: 10px; }

.latest-updates-right h2,
.heading {
	position: relative;
	font-family: var(--vt-serif);
	font-weight: 700;
	color: var(--vt-navy);
	padding-left: 16px;
	letter-spacing: .2px;
}
.latest-updates-right h2 { font-size: 30px; }
.latest-updates-right h2:before,
.heading:before {
	content: '';
	position: absolute;
	left: 0;
	top: 10%;
	bottom: 10%;
	width: 4px;
	border-radius: 4px;
	background: var(--vt-gold-grad);
}
.list li {
	padding-left: 58px;
	min-height: 40px;
	background-image: var(--vt-bullet);
	background-size: 38px 38px;
	background-position: left top;
	border-bottom-color: var(--vt-line);
	color: #3b4150;
	font-size: 15px;
}
.list li:last-child { border-bottom: none; }
.list li a { color: #1e4fa3; }
.list li a:hover { color: var(--vt-gold-dark); }

/*************** FOOTER ***************/
footer {
	position: relative;
	padding: 54px 0 40px;
	background: var(--vt-navy-grad);
}
footer:before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 3px;
	background: var(--vt-gold-grad);
}
.call-mail { font-weight: 300; border-bottom-color: rgba(255, 255, 255, .12); }
.call-mail span { color: var(--vt-gold-light); font-weight: 500; }
.call-mail a { margin-left: 4px; }
.copy-link, .copy-link a { color: rgba(255, 255, 255, .75); }
footer a:hover, .copy-link a:hover { color: var(--vt-gold-light); }

/*************** INNER PAGES ***************/
@media only screen and (max-width: 767px) {
	#booking-sec.booking-layout > .container {
		display: flex;
		flex-direction: column;
	}
	#booking-sec.booking-layout .booking-left { order: 1; }
	#booking-sec.booking-layout .booking-right { order: 2; }
}
.booking-right,
.booking-detail-left,
.booking-detail-right,
.travel-detail,
.countown-wrp {
	border-radius: var(--vt-radius);
	border: 1px solid var(--vt-line);
	box-shadow: var(--vt-shadow);
}
.sea-wrap {
	border-radius: var(--vt-radius);
	border: 1px solid var(--vt-line);
	border-top: 4px solid var(--vt-gold);
	box-shadow: var(--vt-shadow);
}
.sleeper-seat-booking-out-wrap .sea-wrap { box-shadow: var(--vt-shadow); }
.seat-statusbar {
	border-radius: 14px;
	border: 1px solid var(--vt-line);
	box-shadow: var(--vt-shadow);
}
.driving-seat { border-bottom-color: var(--vt-line); }
.driving-seat h5 { color: var(--vt-navy); letter-spacing: 1px; }

.book-dtl-list li { border-bottom-color: var(--vt-line); }
.book-dtl-list li .fld-left { color: var(--vt-muted); font-weight: 600; }
.book-dtl-list-pls {
	background: #fdf8ee;
	border: 1px solid #f1e3c4;
	border-left: 4px solid var(--vt-gold);
	border-radius: 12px;
}
.book-dtl-list-pls li { border-bottom-color: #f1e3c4; }
.book-dtl-list-pls li .fld-right { color: var(--vt-navy); }
#seatDetails .btnCheckout { width: 100%; margin-top: 8px; padding: 16px 30px; font-size: 15px; letter-spacing: 1.5px; }

.total-list li { border-bottom-color: var(--vt-line); }
.tot-right { font-weight: 600; color: var(--vt-navy); }

.countown-box span {
	background: var(--vt-navy-grad);
	border-radius: 10px;
	box-shadow: 0 8px 16px -8px rgba(18, 24, 38, .6);
}

/*************** FORMS ***************/
.fieldset {
	border-color: #e2dccf;
	border-radius: 10px;
	background-color: #fff;
	color: var(--vt-ink);
	transition: border-color .2s ease, box-shadow .2s ease;
}
.fieldset:focus {
	border-color: var(--vt-gold);
	box-shadow: 0 0 0 4px rgba(227, 168, 59, .18);
}
.fieldset[readonly] { background-color: #faf7f1; }
.search-box .fieldset1[readonly] { background-color: #fff; }
.cntry-code-wrap .cntry-code { border-right-color: #e2dccf; color: var(--vt-navy); font-weight: 600; }
.radio-buton input:checked ~ .checkmark { background-color: var(--vt-gold-dark); }

.table-style { border-collapse: separate; border-spacing: 0; border: 1px solid var(--vt-line); border-radius: 12px; overflow: hidden; background: #fff; }
.table-style td, .table-style th { border: none; border-bottom: 1px solid var(--vt-line); padding: 10px 8px; }
.table-style tr:last-child td { border-bottom: none; }
.table-style th { background-color: #f6f1e7; color: var(--vt-navy); font-weight: 600; font-size: 13px; letter-spacing: .3px; }

/*************** STATUS / RESULT CARDS ***************/
.thank-u { border-radius: 24px; box-shadow: var(--vt-shadow); }
.thank-u h3 { color: var(--vt-navy); }
.search-fail-inn,
.booking-fail-inn {
	background: #fff;
	border: 1px solid #f3d3cd;
	border-radius: 20px;
	box-shadow: 0 18px 45px -20px rgba(180, 30, 20, .3);
}
.search-fail-inn p i, .booking-fail-inn h5 { color: #c0392b; }
div#booking-cancelled-div { border-radius: 20px; box-shadow: var(--vt-shadow); }

/*************** POPUPS (bootstrap modal) ***************/
.modal .modal-content {
	border: none;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 30px 70px -20px rgba(0, 0, 0, .5);
}
.modal .modal-header { background: var(--vt-navy-grad); border-bottom: 3px solid var(--vt-gold); padding: 16px 22px; }
.modal .modal-header .modal-title { color: #fff; font-family: var(--vt-serif); font-weight: 700; }
.modal .modal-header .close { color: #fff; opacity: .85; text-shadow: none; }
.modal .modal-body { padding: 24px; line-height: 1.7; }
.modal .modal-footer { border-top: 1px solid var(--vt-line); padding: 14px 22px; }
.modal .btn { border-radius: 10px; padding: 8px 22px; font-weight: 600; border: none; }
.modal .btn-primary { background: var(--vt-gold-grad); color: var(--vt-gold-text); }
.modal .btn-primary:hover, .modal .btn-primary:focus { background: var(--vt-gold-grad); color: var(--vt-gold-text); filter: brightness(1.05); }
.modal .btn-danger { background: var(--vt-navy); }
.modal .btn-danger:hover, .modal .btn-danger:focus { background: var(--vt-navy-deep); }

/*************** DATEPICKER / SELECT2 ***************/
.datepicker.dropdown-menu {
	border: 1px solid var(--vt-line);
	border-radius: 14px;
	padding: 10px;
	box-shadow: 0 20px 45px -15px rgba(27, 35, 51, .45);
}
.datepicker td, .datepicker th { border-radius: 8px; }
.select2-dropdown { border-color: var(--vt-line); border-radius: 12px; overflow: hidden; box-shadow: 0 20px 45px -15px rgba(27, 35, 51, .4); }
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable { background-color: var(--vt-navy); }
.select2-container--default .select2-search--dropdown .select2-search__field { border-radius: 8px; border-color: var(--vt-line); }

/*************** RESPONSIVE ***************/
@media only screen and (max-width: 980px) {
	header .container { flex-wrap: wrap; }
	header .logo, header.smaller .logo { margin: 0; }
	header .header-right { margin-left: auto; }
	header .header-left { order: 4; width: 100%; text-align: center; margin-top: 8px; }
}

@media only screen and (max-width: 800px) {
	.latest-updates-right { padding-left: 0; }
	.package-wrap { padding: 24px 20px 12px 28px; }
	.pack-cnt h3 { font-size: 32px; }
}

@media only screen and (max-width: 640px) {
	.q_slide .slide .caption, .q_slide .slide .caption.right { top: 50%; }
	.q_slide .slide .caption p:after { width: 36px; height: 2px; }
	.search-box { padding: 20px; }
	.search-box .fieldset-select,
	.search-box .fieldset1 {
		border: 1px solid var(--vt-line);
		border-radius: 12px;
	}
	.search-box .sendbutton { width: 100%; margin-left: 0; }
	.booking-right { padding: 22px; }
}

@media only screen and (max-width: 480px) {
	header .logo, header.smaller .logo { margin: 0 auto 8px; }
	header .header-right { width: 100%; margin-left: 0; text-align: center; }
	.whtsp-chat { display: inline-block; }
	.pnr-box .sendbutton { padding: 8px 16px 8px 13px; font-size: 13px; gap: 6px; margin: 0 4px; }
	.pnr-box .sendbutton:before { width: 15px; height: 15px; flex-basis: 15px; }
}

.header-wa { display: none; }
@media only screen and (max-width: 767px) {
	body:not(.app-home-page):not(.app-seat-page) > header,
	body:not(.app-home-page):not(.app-seat-page) > header.time-header,
	body:not(.app-home-page):not(.app-seat-page) > header.smaller {
		position: sticky;
		top: 0;
		z-index: 1000;
		padding: 0;
		background: var(--vt-navy-grad);
		box-shadow: 0 8px 20px -12px rgba(18, 24, 38, .7);
	}
	body:not(.app-home-page):not(.app-seat-page) > header .container {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: nowrap;
		gap: 12px;
		width: 100%;
		max-width: none;
		padding: calc(10px + env(safe-area-inset-top)) 14px 10px;
		box-sizing: border-box;
	}
	body:not(.app-home-page):not(.app-seat-page) > header .logo,
	body:not(.app-home-page):not(.app-seat-page) > header.smaller .logo {
		float: none;
		margin: 0;
		padding: 5px 10px;
		background: #fff;
		border-radius: 12px;
		line-height: 0;
	}
	body:not(.app-home-page):not(.app-seat-page) > header .logo img {
		display: block;
		height: 34px;
		width: auto;
	}
	body:not(.app-home-page):not(.app-seat-page) > header .header-left,
	body:not(.app-home-page):not(.app-seat-page) > header .header-right { display: none; }
	body:not(.app-home-page):not(.app-seat-page) > header .header-wa {
		display: flex;
		flex: 0 0 40px;
		width: 40px;
		height: 40px;
		margin-left: auto;
		border-radius: 12px;
		align-items: center;
		justify-content: center;
		background: #25d366;
		color: #fff;
	}
	body:not(.app-home-page):not(.app-seat-page) > header .header-wa svg {
		width: 20px;
		height: 20px;
		fill: currentColor;
	}
}

/*************** APP STYLE (MOBILE) - pages with body.app-home-page / body.app-seat-page ***************/
.app-home-bar,
.app-home-hero,
.app-results-head,
.app-bar,
.app-bottom-bar,
.app-tabbar { display: none; }

@media only screen and (max-width: 767px) {
	.app-home-page > header,
	.app-home-page .progress-wrap,
	.app-home-page .slider-wrap,
	.app-home-page > footer,
	.app-seat-page > header,
	.app-seat-page > footer,
	.app-seat-page .progress-wrap { display: none !important; }
	.app-home-page > main { display: flow-root; padding-bottom: 92px; }
	.app-seat-page > main {
		display: flow-root;
		padding-bottom: 24px;
	}

	/* ----- Home / search ----- */
	.app-home-bar {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		position: sticky;
		top: 0;
		z-index: 1000;
		padding: calc(10px + env(safe-area-inset-top)) 14px 10px;
		background: var(--vt-navy-grad);
		box-shadow: 0 8px 20px -12px rgba(18, 24, 38, .7);
	}
	.app-home-bar__logo {
		display: flex;
		align-items: center;
		padding: 5px 10px;
		background: #fff;
		border-radius: 12px;
	}
	.app-home-bar__logo img { display: block; height: 34px; width: auto; }
	.app-icon {
		flex: 0 0 40px;
		width: 40px;
		height: 40px;
		border-radius: 12px;
		display: flex;
		align-items: center;
		justify-content: center;
		color: #fff;
		background: #25d366;
	}
	.app-icon svg { width: 20px; height: 20px; fill: currentColor; }

	.app-home-hero {
		position: relative;
		display: block;
		box-sizing: border-box;
		aspect-ratio: 1920 / 640;
		padding: 0;
		background: url('../images/sabarimala-home-banner.jpg?v=4') center center / cover no-repeat;
		border-radius: 0;
		border-bottom: 3px solid var(--vt-gold);
		color: #fff;
	}
	.app-tabbar {
		display: block;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1100;
		background: #1c1c1c;
	}
	.app-tabbar__nav {
		display: flex;
		align-items: stretch;
		background: #fff;
		border-top: 1px solid #ececec;
		padding: 8px 2px 6px;
	}
	.app-tabbar__nav a {
		flex: 1;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-width: 0;
		color: var(--vt-gold-dark);
		font-size: 11px;
		font-weight: 500;
		line-height: 1.15;
		text-align: center;
	}
	.app-tabbar__nav a.is-active { font-weight: 700; }
	.app-tabbar__nav svg { width: 22px; height: 22px; fill: currentColor; }
	.app-tabbar__host {
		margin: 0;
		padding: 7px 10px 8px;
		color: #fff;
		font-size: 12px;
		line-height: 1;
		text-align: center;
		background: #1c1c1c;
	}

	.app-home-page .booking-hm { padding-bottom: 10px; }
	.app-home-page .booking-hm > .container { width: 100%; padding: 0 12px; box-sizing: border-box; }
	.app-home-page .search-wrap {
		position: relative;
		z-index: 2;
		margin: 14px 0 20px;
	}
	.app-home-page .search-box { padding: 16px; border-radius: 20px; }
	.app-home-page .search-box .fieldset-select,
	.app-home-page .search-box .fieldset1 { margin-bottom: 10px; }
	.app-home-page .search-box .fieldset-select { overflow: hidden; }
	.app-home-page .search-box .sendbutton {
		height: 50px;
		margin-top: 4px;
		border-radius: 14px;
		font-size: 15px;
	}

	.app-results-head {
		display: flex;
		flex-direction: column;
		gap: 2px;
		float: left;
		width: 100%;
		margin: 0 0 12px;
		padding: 0 4px;
	}
	.app-results-head strong { font-size: 17px; font-weight: 700; color: var(--vt-navy); }
	.app-results-head span { font-size: 12px; color: var(--vt-muted); }

	.app-home-page .package-wrap {
		gap: 8px;
		align-items: center;
		margin-bottom: 14px;
		padding: 16px 16px 14px 20px;
		border-radius: 18px;
	}
	.app-home-page .package-wrap:hover { transform: none; }
	.app-home-page .package-wrap > .packg-box {
		float: none;
		width: auto !important;
		margin: 0;
		text-align: left;
	}
	.app-home-page .package-wrap > .packg-box:first-child { width: 100% !important; margin-bottom: 4px; }
	.app-home-page .package-wrap > .packg-box:first-child h3 { margin: 0; font-size: 15px; line-height: 1.4; }
	.app-home-page .package-wrap > .packg-box:first-child .viewpop a { margin-top: 8px; }
	.app-home-page .package-wrap > .packg-box1,
	.app-home-page .package-wrap > .packg-box2,
	.app-home-page .package-wrap > .packg-box3,
	.app-home-page .package-wrap > .packg-box4 {
		display: inline-flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 6px;
		padding: 6px 12px;
		background: #f6f1e7;
		border-radius: 50px;
	}
	.app-home-page .package-wrap > .packg-box1 { order: 1; }
	.app-home-page .package-wrap > .packg-box3 { order: 2; }
	.app-home-page .package-wrap > .packg-box4 { order: 3; }
	.app-home-page .package-wrap > .packg-box2 { order: 4; border-radius: 12px; }
	.app-home-page .package-wrap > .packg-box5 { order: 5; }
	.app-home-page .package-wrap .packg-box1 h3,
	.app-home-page .package-wrap .packg-box2 h3,
	.app-home-page .package-wrap .packg-box3 h3,
	.app-home-page .package-wrap .packg-box4 h3 {
		margin: 0;
		font-size: 12px;
		font-weight: 600;
		line-height: 1.3;
		color: var(--vt-ink);
	}
	.app-home-page .package-wrap .packg-box4 h3.seats-ok { color: #178a3a; }
	.app-home-page .package-wrap .packg-box4 h3.seats-low { color: #e07a14; }
	.app-home-page .package-wrap .packg-box1 i { margin-right: 6px; font-size: 14px; }
	.app-home-page .package-wrap .notify-link a { display: inline-block; padding: 2px 10px; font-size: 11px; }
	.app-home-page .package-wrap > .packg-box5 {
		width: 100% !important;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-top: 6px;
		padding-top: 12px;
		border-top: 1px dashed var(--vt-line);
	}
	.app-home-page .package-wrap .packg-box5 h3 { margin: 0; font-size: 22px; }
	.app-home-page .package-wrap .packg-box5 .link a { padding: 12px 18px; border-radius: 12px; white-space: nowrap; }

	.app-home-page .search-fail-inn { padding: 22px 18px; border-radius: 18px; }
	.app-home-page .search-fail-inn p i { font-size: 40px; }

	.app-home-page .latest-updates { padding-bottom: 24px; }
	.app-home-page .latest-updates > .container { width: 100%; padding: 0 12px; box-sizing: border-box; }
	.app-home-page .pack-cnt h3 { font-size: 28px; margin-bottom: 14px; }
	.app-home-page .latest-updates-right h2 { font-size: 22px; margin-bottom: 18px; }

	/* ----- Select seats ----- */
	.app-bar {
		display: flex;
		align-items: center;
		gap: 12px;
		position: sticky;
		top: 0;
		z-index: 1000;
		padding: calc(12px + env(safe-area-inset-top)) 14px 12px;
		background: var(--vt-navy-grad);
		border-bottom: 3px solid var(--vt-gold);
		box-shadow: 0 8px 20px -10px rgba(18, 24, 38, .7);
	}
	.app-bar__icon {
		flex: 0 0 40px;
		width: 40px;
		height: 40px;
		border-radius: 12px;
		display: flex;
		align-items: center;
		justify-content: center;
		background: rgba(255, 255, 255, .12);
		color: #fff;
	}
	.app-bar__icon svg { width: 20px; height: 20px; fill: currentColor; }
	.app-bar__icon--whatsapp { background: #25d366; }
	.app-bar__title { flex: 1; min-width: 0; }
	.app-bar__title h1 {
		margin: 0;
		font-family: 'Poppins', sans-serif;
		font-size: 17px;
		font-weight: 600;
		line-height: 1.2;
		color: #fff;
	}
	.app-bar__title p {
		margin: 3px 0 0;
		font-size: 12px;
		color: var(--vt-gold-light);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.app-seat-page main .pad { padding: 14px 0 24px; }
	.app-seat-page main .pad .container.show-seat-price {
		width: 100%;
		padding: 0 12px;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
	}
	.app-seat-page .show-seat-price > .alert { order: -2; }
	.app-seat-page .show-seat-price .booking-right {
		order: 2;
		width: 100%;
		margin: 16px 0 8px;
		padding: 22px 16px 16px;
		background: #fff;
		border: 1px solid var(--vt-line);
		border-radius: 16px;
		box-shadow: var(--vt-shadow);
	}
	.app-seat-page .show-seat-price .booking-right .heading {
		display: block;
		margin-bottom: 16px;
		font-size: 22px;
	}
	.app-seat-page .show-seat-price #seatDetails { display: block; }
	.app-seat-page .show-seat-price .book-dtl-list,
	.app-seat-page .show-seat-price .book-dtl-list-pls {
		float: none;
		width: 100%;
	}
	.app-seat-page .show-seat-price .book-dtl-list-pls {
		margin: 0 0 4px;
		padding: 4px 14px;
		background: #fdf8ee;
		border: 1px solid #f1e3c4;
		border-left: 4px solid var(--vt-gold);
		border-radius: 12px;
		box-shadow: none;
	}
	.app-seat-page .show-seat-price .book-dtl-list li,
	.app-seat-page .show-seat-price .book-dtl-list-pls li,
	.app-seat-page .show-seat-price .book-dtl-list-pls li.app-hide {
		display: flex;
		align-items: flex-start;
		float: none;
		width: 100%;
		gap: 8px;
		padding: 12px 0;
	}
	.app-seat-page .show-seat-price .book-dtl-list li .fld-left,
	.app-seat-page .show-seat-price .book-dtl-list-pls li .fld-left {
		flex: 0 0 38%;
		width: 38%;
		margin: 0;
		font-size: 14px;
		font-weight: 600;
	}
	.app-seat-page .show-seat-price .book-dtl-list li .space,
	.app-seat-page .show-seat-price .book-dtl-list-pls li .space,
	.app-seat-page .show-seat-price .book-dtl-list-pls li.pkg-name-row .space {
		display: block;
		flex: 0 0 14px;
		width: 14px;
		text-align: center;
	}
	.app-seat-page .show-seat-price .book-dtl-list li .fld-right,
	.app-seat-page .show-seat-price .book-dtl-list-pls li .fld-right,
	.app-seat-page .show-seat-price .book-dtl-list-pls li.pkg-name-row .fld-right {
		flex: 1;
		width: auto;
		margin: 0;
		font-size: 14px;
		font-weight: 600;
		text-align: left;
	}
	.app-seat-page .show-seat-price #seatDetails li {
		display: block;
		float: left;
		width: 100%;
	}
	.app-seat-page .show-seat-price #seatDetails li .fld-left {
		float: left;
		flex: none;
		width: 36%;
	}
	.app-seat-page .show-seat-price #seatDetails li .space {
		float: left;
		flex: none;
		width: 6%;
	}
	.app-seat-page .show-seat-price #seatDetails li .fld-right {
		float: left;
		flex: none;
		width: 58%;
	}
	.app-seat-page .show-seat-price #seatDetails .btnCheckout {
		width: 100%;
		margin-top: 12px;
		border: 0;
		border-radius: 12px;
	}
	.app-seat-page .app-bottom-bar,
	.app-seat-page .app-seat-proceed { display: none !important; }
	.app-seat-page .show-seat-price .booking-left {
		width: 100%;
		margin-bottom: 0;
	}
	.app-seat-page .seat-avlbl-normal { margin-bottom: 12px; }
	.app-seat-page .seat-avlbl-normal .seat-statusbar {
		display: flex;
		justify-content: space-between;
		float: none;
		width: 100%;
		min-width: 0;
		max-width: none;
		padding: 12px 14px;
		box-sizing: border-box;
	}
	.app-seat-page .seat-avlbl-normal .seat-statusbar li { float: none; width: auto; }
	.app-seat-page .seat-avlbl-normal .seat-statusbar li span {
		float: none;
		width: auto;
		margin: 0;
		padding-left: 16px;
		font-size: 11px;
		line-height: 12px;
		white-space: nowrap;
	}
	.app-seat-page .seat-avlbl-normal .seat-statusbar li span:after { width: 11px; height: 11px; }
	.app-seat-page .sea-wrap {
		display: inline-block;
		float: none;
		width: auto;
		max-width: 100%;
		box-sizing: border-box;
	}
	.app-seat-page .seat4 li a { -webkit-tap-highlight-color: transparent; }

	.app-bottom-bar {
		display: flex;
		align-items: center;
		gap: 12px;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1000;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
		background: #fff;
		border-top: 1px solid var(--vt-line);
		border-radius: 18px 18px 0 0;
		box-shadow: 0 -12px 30px -14px rgba(27, 35, 51, .4);
	}
	.app-bottom-bar__info { flex: 1; min-width: 0; }
	.app-bottom-bar__seats {
		display: block;
		font-size: 12px;
		color: var(--vt-muted);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.app-bottom-bar__total {
		display: block;
		margin-top: 2px;
		font-size: 20px;
		font-weight: 700;
		color: var(--vt-navy);
	}
	.app-bottom-bar:not(.has-seats) .app-bottom-bar__total { font-size: 14px; font-weight: 600; }
	.app-bottom-bar__btn {
		flex: 0 0 auto;
		border: none;
		border-radius: 12px;
		padding: 14px 22px;
		background: var(--vt-gold-grad);
		color: var(--vt-gold-text);
		font-family: inherit;
		font-size: 14px;
		font-weight: 700;
		letter-spacing: .5px;
		text-transform: uppercase;
		box-shadow: 0 8px 18px -8px rgba(201, 141, 31, .8);
	}
	.app-bottom-bar__btn:disabled {
		background: #ebe6dc;
		color: #9d978b;
		box-shadow: none;
	}
}
