/* Theme layer — typography, colors, and formatting from appearance settings */

/* Brand: green primary (nav), black text, blue accents */



body {

	font-family: var(--body-font, 'Open Sans', sans-serif);

	font-size: var(--base-font-size, 16px);

	line-height: var(--line-height-body, 1.6);

	color: var(--text-color, #222222);

}



h1, h2, h3, h4, h5, h6,

.title h1, .title h2, .new-page h1 {

	font-family: var(--heading-font, 'Poppins', sans-serif);

	color: var(--heading-color, #111111);

	line-height: var(--line-height-heading, 1.35);

	font-weight: 700;

}



h1 { font-size: var(--h1-size, 2.5rem); }

h2 { font-size: var(--h2-size, 1.75rem); color: var(--heading-color, #111111); }

h3 { font-size: var(--h3-size, 1.35rem); color: var(--heading-color, #111111); }

h4 { font-size: var(--h4-size, 1.2rem); color: var(--heading-color, #111111); }

h5 { font-size: var(--h5-size, 1.1rem); color: var(--heading-color, #111111); }

h6 { font-size: var(--h6-size, 1rem); color: var(--heading-color, #111111); }



p, li, label, .form-control, .form-select {

	font-family: var(--body-font, 'Open Sans', sans-serif);

	font-size: var(--base-font-size, 16px);

	line-height: var(--line-height-body, 1.6);

	color: var(--text-color, #222222);

}



p a {

	color: var(--nav-green, #2351a4);

	font-weight: 700;

}



p a:hover {

	color: var(--link-color, #0b71b8);

}



a:not(.btn):not(.nav-link):not(.dropdown-item):not(.package-hover__btn):not(.btn-booking):not(.region-card):not(.blg-title):not(.blog-read-more):not(.blog-list-card__title):not(.footer-link) {

	color: var(--link-color, #0b71b8);

	font-weight: 600;

}



a:not(.btn):not(.nav-link):not(.dropdown-item):not(.package-hover__btn):not(.btn-booking):not(.region-card):not(.blg-title):not(.blog-read-more):not(.blog-list-card__title):not(.footer-link):hover {

	color: var(--accent-blue-dark, #085a92);

}



.btn-primary,

.my-slider-ban .my-ban .ban-overlay .ban-link a:last-child {

	background-color: var(--primary-color, #2351a4) !important;

	border-color: var(--primary-color, #2351a4) !important;

	border-radius: var(--btn-radius, 4px);

	color: #fff !important;

}



.btn-primary:hover,

.welcome .lilnk .welcome-link-btn:hover {

	background-color: var(--brand-green-dark, #153877) !important;

	border-color: var(--brand-green-dark, #153877) !important;

}



.btn-outline-primary {

	color: var(--primary-color, #2351a4) !important;

	border-color: var(--primary-color, #2351a4) !important;

}



.btn-outline-primary:hover {

	background-color: var(--primary-color, #2351a4) !important;

	border-color: var(--primary-color, #2351a4) !important;

	color: #fff !important;

}



/* Section titles — unified across trip, blog, and content pages */

.trip-section-title,

.trip-cost-section .trip-section-title,

.departure-heading .trip-section-title,

.icon-all-top h2,

.packages .title h2,

.top-regions .title h2,

.blog .title h2,

.new-page h1 {

	display: flex;

	align-items: center;

	gap: 10px;

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: var(--section-title-size, 1.75rem);

	font-weight: 700;

	color: var(--heading-color, #111111);

	line-height: var(--line-height-heading, 1.35);

	margin-bottom: 0.75rem;

}



.trip-section-title i,

.trip-cost-section .trip-section-title i,

.departure-heading .trip-section-title i {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 34px;

	height: 34px;

	border-radius: 50%;

	background: color-mix(in srgb, var(--primary-color) 12%, white);

	color: var(--primary-color);

	font-size: 17px;

	flex-shrink: 0;

}



/* Trip cost — package tabs and includes/excludes lists */

.trip-cost-section .package-tabs {

	display: flex;

	flex-wrap: wrap;

	gap: 8px;

	margin-bottom: 0;

	border-bottom: 1px solid #dbe7df;

	padding-bottom: 0;

}



.trip-cost-section .package-tabs .nav-link {

	display: inline-flex;

	align-items: center;

	gap: 6px;

	padding: 12px 20px;

	border: 1px solid transparent;

	border-radius: 10px 10px 0 0;

	background: #f4f8f1;

	color: var(--text-muted, #444444);

	font-size: 15px;

	font-weight: 600;

}



.trip-cost-section .package-tabs .nav-link span {

	font-weight: 500;

	opacity: 0.85;

}



.trip-cost-section .package-tabs .nav-link:hover {

	border-color: #d5e5d0;

	background: #eef6ea;

	color: var(--nav-green, #2351a4);

}



.trip-cost-section .package-tabs .nav-link.active {

	border-color: #dbe7df #dbe7df #fff;

	background: #fff;

	color: var(--nav-green, #2351a4);

}



.trip-cost-section .package-panels {

	padding-top: 20px;

}



.trip-cost-section .cost-list-card {

	margin-bottom: 18px;

	padding: 20px 22px;

	border: 1px solid #e3e9ee;

	border-radius: 12px;

	background: #fff;

	box-shadow: 0 4px 14px rgba(17, 24, 39, 0.05);

}



.trip-cost-section .cost-list-card h3 {

	margin: 0 0 16px;

	color: var(--heading-color, #111111);

	font-size: 1.25rem;

	font-weight: 700;

	line-height: 1.35;

}



.trip-cost-section .cost-rich-content,

.trip-cost-section .cost-rich-content * {

	font-family: inherit !important;

}



.trip-cost-section .cost-rich-content h4 {

	margin: 18px 0 10px;

	color: var(--heading-color, #111111);

	font-size: 1.05rem;

	font-weight: 700;

	line-height: 1.4;

}



.trip-cost-section .cost-rich-content h4:first-child {

	margin-top: 0;

}



.trip-cost-section .cost-rich-content p {

	margin: 0 0 12px;

	color: var(--text-muted, #444444);

	font-size: 15px;

	line-height: 1.65;

}



.trip-cost-section .cost-rich-content ul {

	display: grid;

	gap: 8px;

	margin: 12px 0 0;

	padding: 0;

	list-style: none !important;

}



.trip-cost-section .cost-rich-content ul li {

	position: relative;

	margin: 0;

	padding: 11px 14px 11px 46px;

	border-radius: 8px;

	background: transparent;

	color: var(--text-color, #222222);

	font-size: 15px;

	line-height: 1.5;

	list-style: none !important;

}



.trip-cost-section .included .cost-rich-content ul li::before,

.trip-cost-section .excluded .cost-rich-content ul li::before {

	position: absolute;

	left: 14px;

	top: 12px;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 22px;

	height: 22px;

	border-radius: 50%;

	color: #fff;

	font-family: "Font Awesome 6 Free" !important;

	font-size: 11px;

	font-weight: 900;

	line-height: 1;

}



.trip-cost-section .included .cost-rich-content ul li::before {

	content: "\f00c";

	background: var(--nav-green, #2351a4);

}



.trip-cost-section .excluded .cost-rich-content ul li::before {

	content: "\f00d";

	background: #c62828;

}



.trip-cost-section .included .cost-rich-content ul li {

	background: transparent;

}



.trip-cost-section .excluded .cost-rich-content ul li {

	background: transparent;

}



/* Trip page title */

.trippage h1,

.pack-details .col-md-12 > h1 {

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: var(--h2-size, 1.75rem);

	font-weight: 800;

	color: var(--heading-color, #111111);

	line-height: var(--line-height-heading, 1.35);

}



.trippage h1::before,

.title h1::before,

.new-page h1::before {

	background-color: var(--primary-color);

}



.trippage h2,

.pack-details .content h2 {

	color: var(--heading-color, #111111);

}



/* Package / trip cards */

.package {

	display: flex;

	flex-direction: column;

	height: 100%;

	overflow: hidden;

	border: 1px solid #e3e9ee;

	border-radius: 14px;

	background: #fff;

	box-shadow: 0 8px 22px rgba(17, 24, 39, 0.06);

	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;

}



.package:hover {

	border-color: #cfe8c8;

	box-shadow: 0 14px 28px rgba(33, 155, 3, 0.12);

	transform: translateY(-3px);

}



.package .package-img {

	position: relative;

	height: auto;

	min-height: 250px;

	aspect-ratio: 4 / 3;

	overflow: hidden;

	border-bottom: 1px solid #edf2f6;

}



.package .package-img > a {

	display: block;

	height: 100%;

}



.package .package-img img {

	display: block;

	width: 100%;

	height: 100% !important;

	min-height: 250px;

	object-fit: cover;

	transition: transform 0.35s ease;

	filter: none !important;

	transform: none !important;

}



.package:hover .package-img img {

	filter: none !important;

	transform: scale(1.04) !important;

}



.package .package-img .featured {

	top: 14px;

	right: auto;

	left: 14px;

	padding: 5px 12px;

	border-radius: 999px;

	background: #f39c12;

	color: #fff;

	font-size: 12px;

	font-weight: 700;

	letter-spacing: 0.02em;

	text-transform: uppercase;

	transform: none;

	box-shadow: 0 4px 12px rgba(243, 156, 18, 0.35);

}



.package .package-img .discount {

	top: 14px;

	right: 14px;

	left: auto;

	padding: 5px 12px;

	border-radius: 999px;

	background: var(--nav-green, #2351a4);

	color: #fff;

	font-size: 12px;

	font-weight: 700;

	transform: none;

	box-shadow: 0 4px 12px rgba(33, 155, 3, 0.25);

}



.package .all-down {

	position: relative;

	flex: 1 1 auto;

	border: 0;

	padding: 18px 16px 12px;

	background: #fff;

}



.package .all-down .peop {

	position: absolute;

	top: -16px;

	left: 16px;

}



.package .all-down .peop h6 {

	margin: 0;

	padding: 8px 14px;

	border-radius: 999px;

	background: #fff;

	box-shadow: 0 4px 14px rgba(17, 24, 39, 0.1);

	color: #122f43;

	font-size: 14px;

	font-weight: 700;

}



.package .all-down .peop h6 del {

	color: #c62828;

	margin-right: 4px;

	font-weight: 600;

}



.package .all-down > a {

	display: block;

	margin: 0 0 10px;

	padding: 0;

	color: #122f43 !important;

	font-size: 1rem !important;

	font-weight: 700 !important;

	line-height: 1.4;

	text-decoration: none;

}



.package .all-down > a:hover {

	color: var(--nav-green, #2351a4) !important;

}



.package .all-down p {

	display: flex;

	align-items: flex-start;

	justify-content: space-between;

	gap: 10px;

	margin: 0;

	padding: 0;

	color: #64748b;

	font-size: 13px;

	line-height: 1.45;

}



.package .all-down p span {

	display: inline-flex;

	align-items: center;

	gap: 5px;

	margin: 0;

}



.package .all-down p i {

	color: var(--nav-green, #2351a4);

	font-size: 12px;

}



.package .pack-down {

	padding: 10px 0 0;

}



.package .pack-down .book a {

	color: #64748b !important;

	font-size: 13px;

	font-weight: 500;

	text-decoration: none;

}



.package .pack-down .book a:hover {

	color: #122f43 !important;

}



.package .pack-down .p1 i {

	color: #f5a623;

	font-size: 13px;

}



.package .next-down {

	margin-top: auto;

	padding: 14px 16px 16px;

	border: 0;

	border-top: 1px solid #edf2f6;

	background: #fafcfd;

}



.package .next-down h3 {

	margin: 0 0 10px;

	color: #122f43;

	font-size: 14px;

	font-weight: 700;

}



.package .next-down p {

	margin: 0 0 8px;

	padding: 0;

	color: #475569;

	font-size: 13px;

}



.package .next-down p span i {

	color: var(--accent-blue, #0b71b8);

}



.package .next-down .link {

	margin: 12px 0 0;

	padding: 0;

}



.package .next-down .link a {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	gap: 6px;

	width: 100%;

	padding: 10px 16px;

	border: 1px solid var(--nav-green, #2351a4);

	border-radius: 999px;

	background: #fff;

	color: var(--nav-green, #2351a4) !important;

	font-size: 13px;

	font-weight: 700;

	letter-spacing: 0.04em;

	text-decoration: none;

	text-transform: uppercase;

	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;

}



.package .package-img .group {

	z-index: 9;

	position: absolute;

	top: 14px;

	left: 14px;

	display: flex;

	align-items: center;

	justify-content: center;

	width: 38px;

	height: 38px;

	border: 2px solid rgba(255, 255, 255, 0.9);

	border-radius: 50%;

	background: rgba(18, 47, 67, 0.82);

	color: #fff;

	box-shadow: 0 4px 12px rgba(17, 24, 39, 0.2);

}



.package .next-down p .line {

	flex: 1 1 auto;

	width: auto;

	height: 0;

	border-top: 1px dotted #cbd5e1;

}



.packages .row > [class*="col-"] {

	margin-bottom: 24px;

}



.icon-all-top .all-icon-detail .content .fact-value-row b {

	color: var(--primary-color);

}



/* Activity page — region cards (image overlay layout) */

.region-card {

	position: relative;

	display: block;

	height: 100%;

	min-height: 220px;

	border: 1px solid #e3e9ee;

	border-radius: 14px;

	overflow: hidden;

	text-decoration: none;

	box-shadow: 0 8px 22px rgba(17, 24, 39, 0.08);

	background: #1a1a1a;

	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;

}



.region-card:hover {

	border-color: #cfe8c8;

	box-shadow: 0 14px 28px rgba(33, 155, 3, 0.12);

	transform: translateY(-3px);

}



.region-card__image {

	position: absolute;

	inset: 0;

	width: 100%;

	height: 100%;

	object-fit: cover;

	display: block;

	transition: transform 0.45s ease;

}



.region-card:hover .region-card__image {

	transform: scale(1.06);

}



.region-card__overlay {

	position: absolute;

	inset: 0;

	background: linear-gradient(to top, rgba(0, 0, 0, 0.82) 0%, rgba(0, 0, 0, 0.4) 42%, transparent 72%);

	pointer-events: none;

}



.region-card__content {

	position: absolute;

	left: 0;

	right: 0;

	bottom: 0;

	z-index: 2;

	padding: 16px 18px 18px;

}



.region-card__badge {

	display: inline-block;

	margin-bottom: 8px;

	padding: 5px 12px;

	border-radius: 999px;

	background: rgba(255, 255, 255, 0.95);

	color: #122f43;

	font-size: 12px;

	font-weight: 700;

	line-height: 1.4;

}



.region-card__title {

	margin: 0;

	color: #fff;

	font-size: clamp(15px, 1.6vw, 18px);

	font-weight: 700;

	line-height: 1.35;

	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);

}



.region-card:hover .region-card__title {

	color: #fff;

}



.activity-section--regions .packages .row > [class*="col-"] {

	display: flex;

}



.activity-section--regions .region-card {

	width: 100%;

	aspect-ratio: 4 / 3;

	min-height: 0;

}



.region-page .region-trips-section,

.activity-page .activity-section {

	margin-top: 2rem;

}



.region-page .region-trips-section .section-title,

.activity-page .activity-section .section-title {

	display: flex;

	align-items: center;

	gap: 10px;

	margin-bottom: 1.25rem;

	color: #122f43;

	font-size: clamp(1.35rem, 2vw, 1.75rem);

	font-weight: 800;

}



.region-page .region-trips-section .section-title::before,

.activity-page .activity-section .section-title::before {

	content: '';

	display: inline-block;

	width: 4px;

	height: 22px;

	border-radius: 2px;

	background: var(--nav-green, #2351a4);

}



.region-page .taxonomy-intro-card,

.activity-page .taxonomy-intro-card {

	margin-bottom: 0;

}



@media (max-width: 575.98px) {

	.region-card {

		min-height: 180px;

	}



	.region-card__content {

		padding: 12px 14px 14px;

	}



	.region-card__title {

		font-size: 15px;

	}

}



/* Blog listing cards */

.blog.my-blog .blog-list-card {

	display: flex;

	flex-direction: column;

	height: 100%;

	border-radius: var(--card-radius, 8px);

	overflow: hidden;

	border: 1px solid #e3e9ee;

	box-shadow: 0 8px 22px rgba(17, 24, 39, 0.06);

	background: #fff;

	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;

}



.blog.my-blog .blog-list-card:hover {

	border-color: #cfe8c8;

	box-shadow: 0 14px 28px rgba(33, 155, 3, 0.12);

	transform: translateY(-3px);

}



.blog.my-blog .blog-list-card--list {

	flex-direction: row;

}



.blog.my-blog .blog-list-thumb {

	display: block;

	position: relative;

	flex-shrink: 0;

	overflow: hidden;

	background: #edf4fa;

}



.blog.my-blog .blog-list-card--grid .blog-list-thumb {

	aspect-ratio: 16 / 10;

}



.blog.my-blog .blog-list-card--list .blog-list-thumb {

	width: 100%;

	aspect-ratio: 16 / 10;

}



.blog.my-blog .blog-list-thumb .card-image {

	width: 100%;

	height: 100%;

	object-fit: cover;

	transition: transform 0.35s ease;

}



.blog.my-blog .blog-list-card:hover .blog-list-thumb .card-image {

	transform: scale(1.05);

}



.blog.my-blog .blog-list-body {

	display: flex;

	flex: 1 1 auto;

	flex-direction: column;

	gap: 10px;

	padding: 18px 18px 20px;

	min-width: 0;

}



.blog.my-blog .blog-meta {

	display: flex;

	flex-wrap: wrap;

	align-items: center;

	gap: 8px 12px;

	margin: 0;

}



.blog.my-blog .blog-cat {

	display: inline-flex;

	align-items: center;

	padding: 4px 10px;

	border-radius: 999px;

	background: rgba(35, 81, 164, 0.12);

	color: #2351a4;

	font-size: 11px;

	font-weight: 700;

	letter-spacing: 0.04em;

	line-height: 1.3;

	text-transform: uppercase;

}



.blog.my-blog .blog-date {

	display: inline-flex;

	align-items: center;

	gap: 6px;

	color: #64748b;

	font-size: 13px;

	font-weight: 500;

	line-height: 1.3;

}



.blog.my-blog .blog-date i {

	color: #94a3b8;

	font-size: 12px;

}



.blog.my-blog .blog-list-card__title,

.blog.my-blog .content a.blg-title {

	margin: 0;

	color: #122f43;

	font-size: clamp(1rem, 1.6vw, 1.12rem);

	font-weight: 800;

	line-height: 1.35;

	text-decoration: none;

	display: -webkit-box;

	-webkit-box-orient: vertical;

	-webkit-line-clamp: 2;

	overflow: hidden;

	transition: color 0.15s ease;

}



.blog.my-blog .blog-list-card__title:hover,

.blog.my-blog .content a.blg-title:hover {

	color: var(--nav-green, #2351a4);

}



.blog.my-blog .blog-list-card__excerpt,

.blog.my-blog .blog-list-body > p {

	margin: 0;

	flex: 1 1 auto;

	padding: 0;

	color: #5d6d78;

	font-size: 14px;

	line-height: 1.65;

	display: -webkit-box;

	-webkit-box-orient: vertical;

	-webkit-line-clamp: 3;

	overflow: hidden;

}



.blog.my-blog .content a.blog-read-more {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	width: fit-content;

	margin: auto 0 0;

	padding-top: 4px;

	color: var(--link-color, #0b71b8);

	font-size: 14px;

	font-weight: 700;

	text-decoration: none;

	transition: gap 0.2s ease, color 0.15s ease;

}



.blog.my-blog .blog-read-more i {

	font-size: 13px;

	transition: transform 0.2s ease;

}



.blog.my-blog .content a.blog-read-more:hover {

	color: var(--nav-green, #2351a4);

	gap: 12px;

}



.blog.my-blog .content a.blog-read-more:hover i {

	transform: translateX(3px);

}



@media (min-width: 768px) {

	.blog.my-blog .blog-list-card--list .blog-list-thumb {

		width: min(280px, 38%);

		aspect-ratio: auto;

		min-height: 200px;

	}

}



@media (max-width: 767.98px) {

	.blog.my-blog .blog-list-card:hover {

		transform: none;

	}

}



/* Blog */

.blog.my-blog .content .blog-meta .blog-cat,

.blog-sidebar .category-item a:hover,

.blog-sidebar .recent-post-copy a:hover,

.blog-pagination .page-item.active .page-link,

.team-cont h4 a:hover,

.team-cont h5 {

	color: var(--primary-color);

}



.blog-pagination .page-item.active .page-link {

	background: var(--primary-color);

	border-color: var(--primary-color);

}



.blog-sidebar .badge {

	background: var(--primary-color) !important;

	color: #fff !important;

}



.top-regions .title .line {

	background: #2351a4;

}



.top-regions__subtitle {

	margin: -12px 0 24px;

	color: #466071;

	font-size: 15px;

	text-align: center;

}



.top-regions .row {

	justify-content: center;

}



@media (max-width: 767px) {

	.top-regions {

		padding: 32px 0;

	}



	.top-regions .title h2 {

		font-size: 28px;

	}



	.top-regions .region {

		width: clamp(140px, 42vw, 200px);

	}

}



/* Homepage adventure activities */

.home-activities-section {

	padding: 48px 0;

	background: #fff;

}



.home-activities-section__head {

	margin-bottom: 28px;

}



.home-activities-section__head h2 {

	margin-bottom: 10px;

	color: var(--heading-color, #111111);

	font-size: clamp(1.6rem, 2.5vw, 2rem);

	font-weight: 800;

}



.home-activities-section__head p {

	margin: 0 auto;

	max-width: 720px;

	color: #5d6d78;

	font-size: 15px;

	line-height: 1.6;

}



.home-activity-card {

	display: flex;

	flex-direction: column;

	height: 100%;

	overflow: hidden;

	border: 1px solid #e3e9ee;

	border-radius: 14px;

	background: #fff;

	box-shadow: 0 8px 22px rgba(17, 24, 39, 0.06);

	color: inherit;

	text-decoration: none;

	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;

}



.home-activity-card:hover {

	border-color: #cfe8c8;

	box-shadow: 0 14px 28px rgba(33, 155, 3, 0.14);

	color: inherit;

	text-decoration: none;

	transform: translateY(-4px);

}



.home-activity-card__media {

	position: relative;

	aspect-ratio: 4 / 3;

	overflow: hidden;

	background: #edf4fa;

}



.home-activity-card__media img {

	display: block;

	width: 100%;

	height: 100%;

	object-fit: cover;

	transition: transform 0.35s ease;

}



.home-activity-card:hover .home-activity-card__media img {

	transform: scale(1.05);

}



.home-activity-card__icon {

	display: flex;

	align-items: center;

	justify-content: center;

	width: 100%;

	height: 100%;

	color: var(--nav-green, #2351a4);

	font-size: 2rem;

}



.home-activity-card__body {

	display: flex;

	flex: 1 1 auto;

	flex-direction: column;

	justify-content: space-between;

	gap: 8px;

	padding: 14px 14px 16px;

}



.home-activity-card__title {

	margin: 0;

	color: #122f43;

	font-size: 0.95rem;

	font-weight: 700;

	line-height: 1.35;

}



.home-activity-card__count {

	margin: 0;

	color: var(--nav-green, #2351a4);

	font-size: 13px;

	font-weight: 700;

	line-height: 1.3;

}



.home-activity-card:hover .home-activity-card__title {

	color: var(--nav-green, #2351a4);

}



@media (max-width: 767px) {

	.home-activities-section {

		padding: 36px 0;

	}



	.home-activity-card__title {

		font-size: 0.88rem;

	}



	.home-activity-card__count {

		font-size: 12px;

	}

}



.env-footer {

	background: var(--hdt-nav, #2351a4);

	border-top: 0;

	padding: 44px 0 36px;

	color: #ffffff;

}



footer.env-footer h4,

.env-footer h4 {

	color: #111111;

	margin: 0 0 14px;

	font-weight: 700;

	font-size: 15px;

	letter-spacing: 0.06em;

	font-family: var(--heading-font, 'Poppins', sans-serif);

}



footer.env-footer .company-name,

.env-footer .company-name {

	color: var(--nav-green, #2351a4);

	font-size: 17px;

	font-weight: 700;

	line-height: 1.4;

	margin: 0 0 10px;

}



footer.env-footer .lnk,

.env-footer .lnk {

	margin: 0;

	padding: 0;

}



footer.env-footer .lnk li,

.env-footer .lnk li {

	padding: 4px 0;

	color: #222222;

	font-size: 14px;

	font-weight: 400;

	line-height: 1.55;

	list-style: none;

}



footer.env-footer .footer-link,

.env-footer .footer-link,

footer.env-footer .lnk a.footer-link,

.env-footer .lnk a.footer-link {

	color: #111111 !important;

	text-decoration: none;

	font-weight: 500;

	font-size: 14px;

	transition: color 0.15s ease;

}



footer.env-footer .footer-link:hover,

.env-footer .footer-link:hover,

footer.env-footer .lnk a.footer-link:hover,

.env-footer .lnk a.footer-link:hover {

	color: var(--nav-green, #2351a4) !important;

	text-decoration: underline;

	text-underline-offset: 2px;

}



.pay-lgo {

	background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);

	border-top: 1px solid #e2e8f0;

	padding: 28px 0 24px;

}



.pay-lgo .content {

	display: block;

	margin-bottom: 0;

}



.pay-lgo .row {

	align-items: flex-start;

	row-gap: 24px;

}



.pay-lgo .affi {

	padding: 0;

	text-align: left;

}



.pay-lgo .affi h4 {

	margin: 0 0 14px;

	padding: 0;

	color: #122f43;

	font-size: 13px;

	font-weight: 800;

	letter-spacing: 0.06em;

	line-height: 1.3;

	text-transform: uppercase;

}



.pay-lgo .affi p {

	margin: -8px 0 12px;

	color: #64748b;

	font-size: 13px;

	line-height: 1.45;

}



.pay-lgo .affi ul {

	display: flex;

	flex-wrap: wrap;

	gap: 10px;

	margin: 0;

	padding: 0;

}



.pay-lgo .affi ul li,

.pay-lgo .content ul li,

.pay-lgo .content .affi ul li {

	list-style: none;

	display: block;

	margin: 0 !important;

	border: 0 !important;

}



.pay-lgo .affi ul li a {

	display: flex;

	align-items: center;

	justify-content: center;

	width: 74px;

	height: 50px;

	padding: 8px 10px;

	border: 1px solid #e3e9ee;

	border-radius: 10px;

	background: #fff;

	box-shadow: 0 4px 12px rgba(17, 24, 39, 0.05);

	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;

}



.pay-lgo .affi ul li a:hover {

	border-color: #cfe8c8;

	box-shadow: 0 8px 18px rgba(33, 155, 3, 0.1);

	transform: translateY(-2px);

}



.pay-lgo .affi img {

	display: block;

	width: auto;

	height: auto;

	max-width: 100%;

	max-height: 28px;

	object-fit: contain;

}



.pay-lgo .socialicons {

	text-align: left;

}



.pay-lgo .socialicons ul {

	display: flex;

	flex-wrap: wrap;

	gap: 10px;

}



.pay-lgo .socialicons ul li a {

	display: inline-flex;

	text-decoration: none;

}



.pay-lgo .socialicons ul li a i {

	font-size: 17px;

	color: #fff;

	width: 42px;

	height: 42px;

	border-radius: 50%;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	background: var(--nav-green, #2351a4);

	transition: transform 0.2s ease, box-shadow 0.2s ease;

}



.pay-lgo .socialicons ul li a i.fa-facebook {

	background: #1877f2;

}



.pay-lgo .socialicons ul li a i.fa-youtube {

	background: #ff0000;

}



.pay-lgo .socialicons ul li a i.fa-instagram {

	background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);

}



.pay-lgo .socialicons ul li a i.fa-twitter,

.pay-lgo .socialicons ul li a i.fa-x-twitter {

	background: #000;

}



.pay-lgo .socialicons ul li a i.fa-tripadvisor {

	background: #34e0a1;

	color: #000;

}



.pay-lgo .socialicons ul li a:hover i {

	transform: translateY(-2px);

	box-shadow: 0 8px 18px rgba(17, 24, 39, 0.14);

}



@media (max-width: 767px) {

	.pay-lgo {

		padding: 22px 0 18px;

	}



	.pay-lgo .affi,

	.pay-lgo .socialicons {

		text-align: center;

	}



	.pay-lgo .affi ul,

	.pay-lgo .socialicons ul {

		justify-content: center;

	}

}



.copy-right {

	background: var(--hdt-copyright, #152c54);

	border-top: 0;

}



.copy-right .copyright {

	color: #cbcbcb;

	text-align: center;

	padding: 20px 0;

	margin: 0;

	font-size: 14px;

}



@media (max-width: 767px) {

	footer.env-footer,

	.env-footer {

		padding: 28px 0 18px;

	}



	footer.env-footer .col-md-4,

	.env-footer .col-md-4,

	footer.env-footer .col-md-6,

	.env-footer .col-md-6 {

		margin-bottom: 22px;

	}



	.copy-right {

		margin-bottom: 45px;

	}

}



/* Remove travelmaster blue footer override */

.site-footer,

footer.site-footer {

	background: var(--hdt-nav, #2351a4);

}



.env-footer,

footer.env-footer {

	background: var(--hdt-nav, #2351a4);

	border-top: 0;

}



.copy-right,

.hdt-copy-right {

	background: var(--hdt-copyright, #152c54);

	border-top: 0;

}



.copy-right .copyright {

	color: rgba(255, 255, 255, 0.92);

}



/* Welcome block — legacy environmental layout from style.css */

.welcome .title h1 {

	font-family: var(--heading-font, 'Poppins', sans-serif);

	color: var(--heading-color, #333);

}



.welcome .title h3 {

	font-family: var(--heading-font, 'Poppins', sans-serif);

}



/* Testimonials carousel */

.testi .title h2,

.testi .title p {

	color: #fff;

}



.testi .title h2 {

	display: block;

	font-size: 24px;

	font-weight: 700;

	margin-bottom: 0.5rem;

}



.testi .title p {

	font-size: 16px;

	font-weight: 400;

	margin-bottom: 0;

}



.my-slider-ban .my-ban .ban-overlay .ban-link .slider-cta-btn,

.my-slider-ban .my-ban .ban-overlay .ban-link .slider-cta-btn:hover,

.my-slider-ban .my-ban .ban-overlay .ban-link .slider-cta-btn:focus,

.my-slider-ban .my-ban .ban-overlay .ban-link .slider-cta-btn:visited {

	color: var(--button-text-color, #ffffff) !important;

	font-weight: 700;

	line-height: 1.2;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	text-decoration: none;

}



/* Slider controls */

.responsive .slick-prev,

.responsive .slick-next {

	background-color: var(--primary-color) !important;

}



.responsive .res-1 h2 {

	color: var(--primary-color);

}



/* Trip planner */

.trip-planner-steps__track span {

	background: linear-gradient(90deg, var(--primary-color), color-mix(in srgb, var(--primary-color) 55%, #000));

}



.trip-planner-card:has(input:checked) {

	border-color: var(--primary-color);

}



/* Rich content inside trip/blog pages */

.pack-details .content,

.trip-overview-content,

.tripinfo,

.blog-article-body {

	font-family: var(--body-font, 'Open Sans', sans-serif);

	font-size: var(--base-font-size, 16px);

	line-height: var(--line-height-body, 1.6);

	color: var(--text-color, #222222);

}



.pack-details .content h3,

.pack-details .content h4,

.trip-overview-content h3,

.trip-overview-content h4 {

	font-family: var(--heading-font, 'Poppins', sans-serif);

	color: var(--heading-color, #111111);

}



#overview .trip-overview-content h3,

#info .tripinfo h4 {

	margin: 1.5rem 0 1.1rem;

	font-size: clamp(1.15rem, 2vw, 1.4rem);

	font-weight: 800;

	line-height: 1.35;

	color: var(--primary-color, #174b96);

}



#overview .trip-overview-content ul,

#info .tripinfo ul {

	list-style: none;

	margin: 0 0 1.75rem;

	padding: 0;

}



#overview .trip-overview-content ul li,

#info .tripinfo ul li {

	display: block;

	position: relative;

	margin: 0 0 0.85rem;

	padding: 0 0 0 2rem;

	color: #3f4d59;

	font-size: 16px;

	font-weight: 400;

	line-height: 1.6;

}



#overview .trip-overview-content ul li:last-child,

#info .tripinfo ul li:last-child {

	margin-bottom: 0;

}



#overview .trip-overview-content ul li::before,

#info .tripinfo ul li::before {

	content: "\f00c";

	position: absolute;

	left: 0;

	top: 0.2em;

	width: 1.25rem;

	height: 1.25rem;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	border-radius: 50%;

	background: var(--secondary-color, #416eb7);

	color: #fff;

	font-family: "Font Awesome 6 Free";

	font-size: 0.55rem;

	font-weight: 900;

	line-height: 1;

}



#overview .trip-overview-content ul li strong,

#overview .trip-overview-content ul li b,

#info .tripinfo ul li strong,

#info .tripinfo ul li b {

	display: inline;

	font-weight: 700;

	color: var(--primary-color, #174b96);

}



#overview .trip-overview-content p,

#info .tripinfo p {

	margin: 0 0 1rem;

	font-weight: 400;

}



@media (max-width: 767px) {

	.trip-section-title,

	.trip-cost-section .trip-section-title,

	.departure-heading .trip-section-title {

		font-size: calc(var(--base-font-size, 16px) * 1.45);

	}



	.trip-section-title i,

	.trip-cost-section .trip-section-title i,

	.departure-heading .trip-section-title i {

		width: 30px;

		height: 30px;

		font-size: 15px;

	}



	h1 { font-size: calc(var(--heading-base-size, 2.5rem) * 0.85); }

}



/* Uniform layout skin for core listing/content pages */

.new-page,

.com-back {

	background: transparent;

	border-bottom: 1px solid rgba(69, 111, 178, 0.12);

}



/* Legacy style.css adds margin-bottom: 25px on .new-page — leaves a white band before hero banners */

.new-page:has(+ .taxonomy-hero-banner) {

	margin-bottom: 0;

}



.taxonomy-hero-banner {

	position: relative;

	width: 100%;

	overflow: hidden;

	margin: 0;

	background: #1a2e3b;

	min-height: clamp(220px, 34vw, 520px);

	aspect-ratio: 21 / 9;

}



.taxonomy-hero-banner--fallback {

	background: linear-gradient(135deg, #1a3a52 0%, #2d6a4f 55%, #40916c 100%);

	min-height: clamp(180px, 30vw, 360px);

	aspect-ratio: auto;

}



.taxonomy-hero-banner__image {

	position: absolute;

	inset: 0;

	display: block;

	width: 100%;

	height: 100%;

	object-fit: cover;

	object-position: center;

}



.taxonomy-hero-banner__overlay {

	position: absolute;

	inset: 0;

	z-index: 1;

	background: linear-gradient(

		180deg,

		rgba(8, 18, 28, 0.18) 0%,

		rgba(8, 18, 28, 0.34) 48%,

		rgba(8, 18, 28, 0.62) 100%

	);

	pointer-events: none;

}



.taxonomy-hero-banner__content {

	position: absolute;

	inset: 0;

	z-index: 2;

	display: flex;

	align-items: flex-end;

	padding: 0 0 clamp(18px, 3.5vw, 36px);

}



.taxonomy-hero-banner__title {

	margin: 0;

	color: #fff;

	font-size: clamp(1.45rem, 3.4vw, 2.75rem);

	font-weight: 800;

	line-height: 1.18;

	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.45);

}



.region-page > .container,

.activity-page > .container {

	padding-top: clamp(18px, 2.5vw, 28px);

}



.taxonomy-intro-card img,

.region-page .taxonomy-intro-card img,

.activity-page .taxonomy-intro-card img,

.destination-content img,

.page-content img {

	display: block;

	max-width: 100%;

	width: auto;

	height: auto;

	margin: 1rem auto;

	border-radius: var(--card-inner-radius, 8px);

}



.taxonomy-intro-card figure,

.region-page .taxonomy-intro-card figure,

.activity-page .taxonomy-intro-card figure {

	max-width: 100%;

	margin: 1rem 0;

}



.taxonomy-intro-card figure img,

.region-page .taxonomy-intro-card figure img,

.activity-page .taxonomy-intro-card figure img {

	margin: 0;

}



@media (max-width: 767.98px) {

	.taxonomy-hero-banner {

		aspect-ratio: 16 / 10;

		min-height: clamp(200px, 52vw, 300px);

	}



	.taxonomy-hero-banner__content {

		padding-bottom: 16px;

	}



	.taxonomy-hero-banner__title {

		font-size: clamp(1.3rem, 6.2vw, 1.85rem);

	}



	.region-page .region-trips-section {

		margin-top: 8px;

	}

}



@media (max-width: 575.98px) {

	.taxonomy-hero-banner {

		aspect-ratio: 4 / 3;

		min-height: 200px;

	}

}



/* Blog / category / teams page banner — full-width cover image */

.page-banner {

	position: relative;

	width: 100%;

	overflow: hidden;

	margin: 0;

	background: #122f43;

	min-height: clamp(200px, 28vw, 400px);

}



.page-banner::after {

	content: '';

	position: absolute;

	inset: 0;

	z-index: 1;

	background: linear-gradient(

		180deg,

		rgba(8, 18, 28, 0.42) 0%,

		rgba(8, 18, 28, 0.18) 45%,

		rgba(8, 18, 28, 0.45) 100%

	);

	pointer-events: none;

}



.page-banner > img {

	position: absolute;

	inset: 0;

	z-index: 0;

	display: block;

	width: 100%;

	height: 100%;

	object-fit: cover;

	object-position: center;

}



.page-banner .page-overlay {

	position: relative;

	z-index: 2;

	padding: 14px 0;

}



.page-banner .new-page {

	margin-bottom: 0 !important;

	background: transparent !important;

	border-bottom: 0 !important;

}



.page-banner .com-back-1 {

	margin: 0 !important;

	background: transparent !important;

	border: 0 !important;

}



.page-banner .com-back-1 li,

.page-banner .com-back-1 li a,

.page-banner .com-back-1 li span {

	color: rgba(255, 255, 255, 0.92) !important;

}



.page-banner .com-back-1 li a:hover {

	color: #ffffff !important;

}



.new-page .com-back-1,

.com-back .com-back-1 {

	padding: 14px 0;

}

.new-page .com-back-1 ul,

.com-back .com-back-1 ul {

	margin: 0;

	padding: 0;

	list-style: none;

	display: flex;

	flex-wrap: wrap;

	gap: 8px;

}

.new-page .com-back-1 li,

.com-back .com-back-1 li,

.new-page .com-back-1 li a,

.com-back .com-back-1 li a,

.new-page .com-back-1 li p,

.com-back .com-back-1 li p,

.new-page .com-back-1 li span,

.com-back .com-back-1 li span {

	color: #2f3a22;

	font-size: 13px;

}

.new-page .com-back-1 a,

.com-back .com-back-1 a {

	color: var(--nav-green, #2351a4);

	font-weight: 600;

	text-decoration: none;

}

.new-page .com-back-1 a:hover,

.com-back .com-back-1 a:hover {

	color: var(--brand-green-dark, #153877);

}

.inner-title{

	margin: 10px 0 18px;

	color: var(--heading-color, #111111);

	font-size: clamp(1.75rem, 2.4vw, 2.4rem);

	font-weight: 800;

	line-height: 1.22;

}

article > .container > .row > [class*='col-'] > .row > [class*='col-'] > .card,

.destination-content-wrap .destination-activity-card,

.blog-list-card{

	border-radius: 14px;

	overflow: hidden;

	border: 1px solid #e0e9ef;

	box-shadow: 0 8px 24px rgba(15, 45, 66, 0.08);

	background: #fff;

}

article .card .card-body{

	padding: 14px;

}

article .card .card-body h5{

	margin: 0;

	font-size: 1.04rem;

	font-weight: 700;

	line-height: 1.35;

}

article .card .card-body h5 a{

	color: var(--heading-color, #111111);

	text-decoration: none;

}

article .card .card-body h5 a:hover{

	color: var(--link-color, #0b71b8);

}

article .card img{

	width: 100%;

	height: 220px;

	object-fit: cover;

	display: block;

}

.about-us .content,

.dlist,

.destination-content,

.taxonomy-intro-card {

	background: #fff;

	border: 1px solid #e2ebf1;

	border-radius: 14px;

	padding: 22px;

	box-shadow: 0 8px 24px rgba(15, 45, 66, 0.06);

}



.activity-page .activity-section .packages,

.region-page .packages,

article .packages.row-grid {

	background: transparent !important;

	padding: 0 !important;

	margin: 0 !important;

}



.activity-page .container:not(.dlist),

.region-page .container:not(.dlist) {

	padding-left: 15px;

	padding-right: 15px;

}

.about-us .content h1{

	margin-top: 0;

	margin-bottom: 14px;

	font-size: clamp(1.65rem, 2.2vw, 2.2rem);

	color: var(--heading-color, #111111);

}

.about-us .content p,

.dlist p,

.destination-description p{

	color: var(--text-color, #222222);

	line-height: 1.72;

}

.blog.my-blog{

	background: #f7fbfd;

}

.blog.my-blog .content{

	background: #fff;

	border: 1px solid #e4edf3;

	border-radius: 12px;

	overflow: hidden;

	padding: 0;

}

.blog.my-blog .content:hover{

	box-shadow: 0 14px 28px rgba(33, 155, 3, 0.12);

}

.blog.my-blog .content.blog-list-card{

	border-color: #e3e9ee;

	border-radius: var(--card-radius, 8px);

	box-shadow: 0 8px 22px rgba(17, 24, 39, 0.06);

}

.blog.my-blog .content.blog-list-card:hover{

	box-shadow: 0 14px 28px rgba(33, 155, 3, 0.12);

}

.blog.my-blog .content:not(.blog-list-card):hover img{

	filter: none;

	transform: none;

}

@media (max-width: 767.98px){

	.inner-title{

		margin-top: 8px;

		margin-bottom: 14px;

	}

	.about-us .content,

	.dlist,

	.destination-content,

	.taxonomy-intro-card {

		padding: 16px;

		border-radius: 12px;

	}

	article .card img{

		height: 200px;

	}

}



/* Cookie consent banner */

.cookie-consent{

	position: fixed;

	bottom: 30px;

	left: 30px;

	z-index: 10060;

	width: min(320px, calc(100vw - 30px));

	padding: 22px 22px 18px;

	border-radius: 18px;

	background: #1b293a;

	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28);

	color: #fff;

}

.cookie-consent__close-wrap{

	position: relative;

	margin-bottom: 10px;

}

.cookie-consent__close{

	position: absolute;

	top: -14px;

	right: -10px;

	width: 28px;

	height: 28px;

	border: 1px solid #fff;

	border-radius: 50%;

	background: transparent;

	color: #fff;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	padding: 0;

	cursor: pointer;

	font-size: 12px;

	line-height: 1;

}

.cookie-consent__close:hover{

	background: rgba(255, 255, 255, 0.12);

}

.cookie-consent__text{

	margin: 0 0 18px;

	font-size: 14px;

	line-height: 1.55;

	color: #fff;

}

.cookie-consent__text a{

	color: var(--accent-blue, #0b71b8);

	font-weight: 700;

	text-decoration: underline;

}

.cookie-consent__text a:hover{

	color: var(--accent-blue-dark, #085a92);

}

.cookie-consent__actions{

	display: flex;

	justify-content: flex-start;

}

.cookie-consent__accept{

	border: 1px solid #fff;

	border-radius: 25px;

	background: #2351a4;

	color: #fff;

	font-size: 14px;

	font-weight: 700;

	padding: 8px 20px;

	cursor: pointer;

}

.cookie-consent__accept:hover{

	background: #1a7d02;

	border-color: #fff;

}

@media (max-width: 767.98px){

	.cookie-consent{

		left: 15px;

		right: 15px;

		bottom: 15px;

		width: auto;

	}

}



/* Trip detail page — sticky section nav + sidebar (environmental legacy layout) */

#tripStickyNavAnchor {

	height: 0;

	width: 100%;

}



#tripStickyNav {

	position: fixed !important;

	left: 0;

	right: 0;

	top: -120px;

	width: 100%;

	padding: 0 24px;

	background: #fff !important;

	opacity: 0;

	visibility: hidden;

	pointer-events: none;

	transform: translateY(-8px);

	z-index: 998;

	transition: top 0.22s ease, opacity 0.18s ease, transform 0.18s ease;

	box-shadow: rgb(0 66 133 / 25%) 0 4px 4px 0;

}



#tripStickyNav.is-stuck {

	top: var(--trip-sticky-top, 0);

	opacity: 1;

	visibility: visible;

	pointer-events: auto;

	transform: translateY(0);

}



#tripStickyNav .trip-page-nav-container {

	display: flex;

	align-items: stretch;

	max-width: 100%;

	padding-left: 0;

	padding-right: 0;

}



#tripStickyNav .navbar-nav {

	display: flex;

	flex: 1 1 auto;

	flex-direction: row;

	flex-wrap: nowrap;

	margin: 0;

	min-width: 0;

	overflow-x: auto;

	scrollbar-width: none;

}



#tripStickyNav .navbar-nav::-webkit-scrollbar {

	display: none;

}



#tripStickyNav .nav-item {

	display: flex;

	flex: 0 0 auto;

}



#tripStickyNav .nav-link {

	align-items: center;

	border-radius: 999px;

	color: #333 !important;

	display: flex;

	font-size: 15px;

	font-weight: 700;

	gap: 8px;

	margin: 7px 0;

	min-height: 44px;

	padding: 6px 15px;

	white-space: nowrap;

	transition: background-color 0.15s ease, color 0.15s ease;

}



#tripStickyNav .nav-link i {

	color: var(--secondary-color, #2351a4);

	font-size: 14px;

	transition: color 0.15s ease;

}



#tripStickyNav .nav-link:hover {

	background: color-mix(in srgb, var(--secondary-color, #2351a4) 12%, white) !important;

	color: var(--primary-color, #153877) !important;

}



#tripStickyNav .nav-link.active {

	background: var(--secondary-color, #2351a4) !important;

	color: #fff !important;

}



#tripStickyNav .nav-link:hover i {

	color: var(--accent-color, #f5642d);

}



#tripStickyNav .nav-link.active i {

	color: #fff;

}



body.trip-page-has-sticky-nav #overview,

body.trip-page-has-sticky-nav #itinerary,

body.trip-page-has-sticky-nav #cost,

body.trip-page-has-sticky-nav #map,

body.trip-page-has-sticky-nav #altitude-chart,

body.trip-page-has-sticky-nav #dates,

body.trip-page-has-sticky-nav #faqs,

body.trip-page-has-sticky-nav #info,

body.trip-page-has-sticky-nav #trip-reviews,

body.trip-page-has-sticky-nav #trip-gallery {

	scroll-margin-top: var(--trip-anchor-offset, 120px);

}



.pack-details .trip-page-title {

	margin-bottom: 12px;

}



.pack-details .page-image,

.pack-details .trip-featured-image {

	margin: 0 0 20px;

	padding: 0;

	max-height: none;

	overflow: hidden;

	border: 1px solid #e2ebf1;

	border-radius: 14px;

	background: #f4f7fa;

	box-shadow: 0 8px 24px rgba(15, 45, 66, 0.08);

	aspect-ratio: 16 / 9;

	position: relative;

}



.pack-details .page-image img,

.pack-details .trip-featured-image img {

	width: 100%;

	height: 100%;

	max-height: none;

	object-fit: cover;

	object-position: center center;

	border: 0;

	border-radius: 0;

	display: block;

}



.pack-details .content #overview .rev {

	margin-bottom: 12px;

}



.pack-details .trip-booking-sidebar .side-section,

.pack-details .side-section {

	margin-left: 0;

	margin-bottom: 30px;

	border-radius: 10px;

}



@media (min-width: 992px) {

	.pack-details .trip-booking-sidebar {

		position: sticky;

		top: var(--trip-sidebar-sticky-top, 70px);

		align-self: flex-start;

	}



	.pack-details .trip-booking-sidebar .side-section {

		position: static;

		margin-bottom: 0;

	}

}



.pack-details .side-section .content {

	border: 1px solid #ccc;

	padding: 0;

	margin-bottom: 20px;

	background: #fff;

}



.pack-details .side-section .content .tosp-sect {

	padding: 15px 20px;

	display: flex;

	justify-content: space-between;

	gap: 16px;

}



.pack-details .side-section .content .cont .days {

	font-size: 16px;

	font-weight: 600;

	color: #111;

}



.pack-details .side-section .content .cont .cost-amount {

	font-size: 24px;

	font-weight: 600;

	color: #111;

	line-height: 1.2;

}



.pack-details .side-section .content .cont .cost-on-request {

	font-size: 15px;

	font-weight: 600;

	color: #333;

	line-height: 1.35;

	max-width: 11rem;

}



.pack-details .side-section .content .cont del {

	color: #de2d2d;

	margin-right: 4px;

}



.pack-details .side-section .content .cont i,

.pack-details .side-section .trip-sidebar-benefits i {

	color: #e67300;

}



.pack-details .side-section .content .cont a {

	font-size: 13px;

	font-weight: 400;

	color: #0391c7 !important;

	text-decoration: none;

}



.pack-details .side-section .content .tosp-sect .contl .trip-price-offer-badge {

	display: inline-block;

	margin-top: 8px;

	padding: 3px 8px;

	background: #de2d2d;

	color: #fff;

	font-size: 12px;

	font-weight: 600;

	border-radius: 4px;

}



.pack-details .side-section .trip-sidebar-benefits {

	list-style: none;

	margin: 0;

	padding: 0 20px 12px;

}



.pack-details .side-section .trip-sidebar-benefits li {

	margin: 5px 0;

	font-size: 14px;

	color: #111;

}



.pack-details .side-section .trip-sidebar-benefits li i {

	margin-right: 5px;

}



.pack-details .side-section .down-section {

	padding: 15px 20px;

}



.pack-details .side-section .bookingmenu {

	display: flex;

	flex-direction: row;

	align-items: stretch;

	gap: 10px;

	width: 100%;

}



.pack-details .side-section .book-trip,

.pack-details .side-section .trip-enquiry {

	display: block;

	flex: 1 1 0;

	min-width: 0;

	padding: 0;

	border-radius: 0;

	background: none !important;

	background-image: none !important;

}



.pack-details .side-section .book-trip a,

.pack-details .side-section .trip-enquiry a {

	display: flex;

	align-items: center;

	justify-content: center;

	gap: 6px;

	width: 100%;

	padding: 10px 12px;

	border-radius: 18px;

	color: #fff !important;

	font-size: 14px;

	font-weight: 700;

	line-height: 1.2;

	text-decoration: none !important;

	white-space: nowrap;

}



.pack-details .side-section .book-trip a {

	background: linear-gradient(to right, #0b71b8, #1a8fd4) !important;

}



.pack-details .side-section .trip-enquiry a {

	background: linear-gradient(to right, #2351a4, #6b8fc9) !important;

}



.pack-details .side-section .book-trip a i,

.pack-details .side-section .trip-enquiry a i {

	margin: 0;

	font-size: 12px;

	flex-shrink: 0;

}



.pack-details .side-section .book-trip a:hover,

.pack-details .side-section .trip-enquiry a:hover {

	color: #fff !important;

	opacity: 0.92;

}



.pack-details .side-section .down-section .inquiry {

	display: block;

	text-align: center;

	margin-bottom: 12px;

	padding: 10px 16px;

	border-radius: 6px;

	background: #f6a106;

	color: #fff !important;

	font-weight: 700;

	text-decoration: none !important;

}



/* Trip sidebar — Talk to our experts widget */

.pack-details .side-section .trip-expert-widget {

	margin-top: 0;

	padding: 10px;

	border: 1px solid #c1c1c1;

	border-radius: 8px;

	background: #fff;

	box-shadow: none;

}



.trip-detail-booking .trip-expert-widget {

	margin-top: 18px;

	padding: 10px;

	border: 1px solid #c1c1c1;

	border-radius: 8px;

	background: #fff;

	box-shadow: none;

}



.trip-expert-widget__title {

	margin: 0 0 10px;

	color: #111;

	font-size: 1rem;

	font-weight: 700;

	line-height: 1.3;

}



.trip-expert-widget__photo {

	overflow: hidden;

	margin: 0 0 8px;

	border-bottom: 1px solid #c1c1c1;

	padding-bottom: 8px;

}



.trip-expert-widget__photo img {

	display: block;

	width: 100%;

	height: auto;

	max-height: none;

	object-fit: cover;

	object-position: center top;

	clip-path: none;

}



.trip-expert-widget__contact-row {

	display: flex;

	align-items: center;

	gap: 10px;

	margin-bottom: 8px;

}



.trip-expert-widget__channels {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	flex-shrink: 0;

}



.trip-expert-widget__divider {

	width: 1px;

	height: 22px;

	background: #ccc;

}



.trip-expert-widget__channel {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 32px;

	height: 32px;

	border-radius: 50%;

	text-decoration: none !important;

}



.trip-expert-widget__channel--whatsapp {

	background: #25d366;

	color: #fff !important;

}



.trip-expert-widget__channel--viber {

	background: #7360f2;

	color: #fff !important;

}



.trip-expert-widget__channel--email {

	background: #0b71b8;

	color: #fff !important;

}



.trip-expert-widget__phone {

	color: #ffffff !important;

	font-size: 15px;

	font-weight: 700;

	line-height: 1.3;

	text-decoration: none !important;

	word-break: break-word;

}



.trip-expert-widget__email {

	color: #ffffff !important;

	font-size: 14px;

	font-weight: 700;

	line-height: 1.35;

	text-decoration: none !important;

	word-break: break-word;

}



.trip-expert-widget__quick-actions {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 12px;

	margin-top: 10px;

	padding-top: 10px;

	border-top: 1px solid #e5e5e5;

}



.trip-expert-widget__quick-action {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 36px;

	height: 36px;

	border: 0;

	border-radius: 50%;

	background: #efefef;

	color: #2351a4 !important;

	font-size: 16px;

	text-decoration: none !important;

}



.trip-expert-widget__quick-action--viber,

.trip-expert-widget__quick-action--whatsapp {

	color: #2351a4 !important;

}



.trip-expert-widget__quick-action:hover {

	background: #2351a4;

	color: #fff !important;

}



.pack-details .icon-all-top {

	position: relative;

	margin: 20px 0 30px;

	padding: 0;

	border: 0;

}



.pack-details .icon-all-top h3 {

	position: static;

	margin: 0 0 22px !important;

	padding: 0 !important;

	font-size: 22px !important;

	font-weight: 800;

	color: var(--primary-color, #174b96);

	background: transparent;

}



.pack-details .icon-all-top .all-icon-detail {

	display: grid;

	grid-template-columns: repeat(3, minmax(0, 1fr));

	gap: 24px 48px;

}



.pack-details .icon-all-top .all-icon-detail .content {

	display: grid;

	grid-template-columns: 30px minmax(0, 1fr);

	align-items: start;

	width: 100%;

	padding: 0 !important;

}



.pack-details .icon-all-top .all-icon-detail .content i {

	font-size: 28px;

	color: var(--secondary-color, #416eb7);

	margin-right: 0;

	flex-shrink: 0;

}



.pack-details .icon-all-top .all-icon-detail .content p {

	margin-bottom: 4px;

	font-size: 16px;

	color: #666666;

	font-weight: 500;

	line-height: 1.2;

}



.pack-details .icon-all-top .all-icon-detail .content h6 {

	margin-bottom: 0;

	font-weight: 800;

	color: #111111;

}



.pack-details .itinerary-title {

	display: flex;

	align-items: center;

	justify-content: space-between;

	flex-wrap: wrap;

	gap: 10px;

}



.pack-details .content h2 .all-expan,

.pack-details .content h2 .close-expan,

.pack-details .itinerary-title .all-expan,

.pack-details .itinerary-title .close-expan,

.trip-faq-expand-all,

.trip-faq-collapse-all {

	display: inline-flex;

	align-items: center;

	gap: 6px;

	padding: 5px 15px;

	border: 0;

	border-radius: 21px;

	appearance: none;

	-webkit-appearance: none;

	font-size: 14px;

	font-weight: 500;

	line-height: 1.2;

	white-space: nowrap;

	cursor: pointer;

	transition: 0.4s ease-in-out;

	color: #fff;

}



.pack-details .content h2 .all-expan,

.pack-details .itinerary-title .all-expan,

.trip-faq-expand-all {

	background-image: linear-gradient(to right, var(--nav-green, #2351a4), var(--brand-green-light, #6b8fc9));

}



.pack-details .content h2 .close-expan,

.pack-details .itinerary-title .close-expan,

.trip-faq-collapse-all {

	background-image: linear-gradient(to right, var(--brand-green-dark, #153877), var(--nav-green, #2351a4));

}



.pack-details .itinerary-title .close-expan,

.pack-details .content h2 .close-expan,

.trip-faq-collapse-all[hidden] {

	display: none;

}



.trip-faq-expand-all[hidden] {

	display: none !important;

}



.pack-details .content h2 .close-expan i,

.pack-details .itinerary-title .close-expan i,

.trip-faq-collapse-all i {

	transform: none;

}



/* Itinerary day meta — food, accommodation, elevation */

#itinerary .icon-section,

.pack-details .content .icon-section {

	display: flex;

	flex-wrap: wrap;

	align-items: flex-start;

	padding: 14px 0;

	margin-bottom: 14px;

	border-radius: 8px;

	background: #f7faf6;

}



#itinerary .icon-section .sec1,

.pack-details .content .icon-section .sec1 {

	flex: 1 1 0;

	min-width: 120px;

	padding: 0 15px;

	text-align: left;

	border-right: 1px solid #dce5d8;

}



#itinerary .icon-section .sec1:last-child,

.pack-details .content .icon-section .sec1:last-child {

	border-right: none;

}



#itinerary .icon-section .sec1 span,

.pack-details .content .icon-section .sec1 span {

	display: flex;

	align-items: center;

	justify-content: flex-start;

	gap: 6px;

	font-size: 12px;

	font-weight: 700;

	line-height: 1.35;

	color: #111111;

}



#itinerary .icon-section .sec1 span i,

.pack-details .content .icon-section .sec1 span i {

	color: var(--nav-green, #2351a4);

	font-size: 14px;

}



#itinerary .icon-section .itinerary-meta-value,

.pack-details .content .icon-section .itinerary-meta-value,

.itinerary-meta-value {

	margin: 6px 0 0 !important;

	font-size: 14px;

	font-weight: 600;

	line-height: 1.4;

	color: var(--accent-blue, #0b71b8);

}



/* Trip FAQs — stacked category groups */

.trip-faq-groups {

	display: flex;

	flex-direction: column;

	gap: 28px;

}



.trip-faq-panel {

	border: 1px solid #e3e9ee;

	border-radius: 12px;

	background: #fff;

	overflow: hidden;

	box-shadow: 0 4px 14px rgba(17, 24, 39, 0.05);

}



.trip-faq-panel__head {

	display: flex;

	align-items: center;

	justify-content: space-between;

	flex-wrap: nowrap;

	gap: 16px;

	padding: 18px 20px 14px;

	border-bottom: 1px solid #edf2f6;

}



.trip-faq-panel__title {

	display: flex;

	align-items: center;

	gap: 10px;

	flex: 1 1 auto;

	min-width: 0;

	margin: 0;

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: 1.2rem;

	font-weight: 700;

	line-height: 1.35;

	color: var(--heading-color, #111111);

}



.trip-faq-panel__title i {

	flex: 0 0 34px;

	width: 34px;

	height: 34px;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	border-radius: 50%;

	background: color-mix(in srgb, var(--nav-green, #2351a4) 12%, white);

	color: var(--nav-green, #2351a4);

	font-size: 16px;

	text-align: center;

}



.trip-faq-panel__actions {

	display: inline-flex;

	align-items: center;

	gap: 12px;

	flex: 0 0 auto;

	margin-left: auto;

}



.trip-faq-collapse-all[hidden],

.trip-faq-expand-all[hidden] {

	display: none !important;

}



.trip-faq-accordion {

	border-radius: 0;

}



.trip-faq-item {

	border: none;

	border-bottom: 1px solid #edf2f6;

	border-radius: 0;

}



.trip-faq-item:last-child {

	border-bottom: none;

}



.trip-faq-accordion .accordion-button {

	padding: 16px 20px;

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: 1rem;

	font-weight: 700;

	color: var(--heading-color, #111111);

	background: #fff;

	box-shadow: none;

}



.trip-faq-accordion .accordion-button:not(.collapsed) {

	color: var(--nav-green, #2351a4);

	background: #f4faf1;

	box-shadow: none;

}



.trip-faq-accordion .accordion-button:focus {

	box-shadow: none;

	border-color: transparent;

}



.trip-faq-accordion .accordion-button::after {

	width: 1rem;

	height: 1rem;

	background-size: 1rem;

}



.trip-faq-answer {

	padding: 0 20px 18px;

	color: var(--text-muted, #444444);

	font-size: var(--base-font-size, 16px);

	line-height: 1.65;

}



.trip-faq-answer p {

	margin-bottom: 0.75rem;

}



.trip-faq-answer p:last-child {

	margin-bottom: 0;

}



@media (max-width: 575.98px) {

	.trip-faq-panel__head {

		flex-wrap: wrap;

		align-items: flex-start;

	}



	.trip-faq-panel__actions {

		width: 100%;

		margin-left: 0;

	}

}



.lg-only {

	display: block;

}



.sm-only {

	display: none;

}



@media (max-width: 991.98px) {

	#tripStickyNav {

		padding: 0 10px;

	}



	#tripStickyNav .nav-link span {

		display: none;

	}



	#tripStickyNav .nav-link {

		padding: 8px 12px;

		min-height: 40px;

	}



	.pack-details .icon-all-top .all-icon-detail .content {

		flex: 0 0 50%;

	}



	.lg-only {

		display: none;

	}



	.sm-only {

		display: block;

	}



	.pack-details .trip-booking-sidebar .side-section {

		position: static;

	}

}



@media (max-width: 575.98px) {

	.pack-details .icon-all-top .all-icon-detail .content {

		flex: 0 0 100%;

	}

}



/* Trip image gallery — environmental legacy 3-column grid */

.pack-details .gallery-list {

	margin-top: 8px;

}



.pack-details .gallery-list h2 {

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: 1.35rem;

	font-weight: 700;

	text-transform: uppercase;

	letter-spacing: 0.02em;

	color: var(--heading-color, #111111);

	margin-bottom: 16px;

}



.pack-details .gallery-flex {

	display: flex;

	flex-wrap: wrap;

	margin: 0 -5px 24px;

}



.pack-details .gallery-flex .popup {

	width: calc(33.333% - 10px);

	margin: 5px;

	box-sizing: border-box;

}



.pack-details .gallery-flex .trip-gallery-item {

	display: block;

	line-height: 0;

}



.pack-details .gallery-flex .img-thumbnail {

	width: 100%;

	height: auto;

	aspect-ratio: 4 / 3;

	object-fit: cover;

	padding: 0;

	border: 1px solid #dee2e6;

	border-radius: 0;

	background: #fff;

}



.pack-details .gallery-flex .trip-gallery-item:hover .img-thumbnail {

	border-color: var(--primary-color, #2351a4);

}



@media (max-width: 767.98px) {

	.pack-details .gallery-flex .popup {

		width: calc(50% - 10px);

	}

}



@media (max-width: 479.98px) {

	.pack-details .gallery-flex .popup {

		width: calc(100% - 10px);

	}

}



/* Trip booking sidebar — price widget with group tiers */

.pack-details .trip-booking-sidebar .trip-booking-widget {

	position: sticky;

	top: var(--trip-sidebar-sticky-top, 70px);

	background: #fff;

	border: 1px solid #e3e8ee;

	border-radius: 12px;

	box-shadow: 0 10px 28px rgba(12, 60, 137, 0.08);

	overflow: hidden;

}



.pack-details .trip-booking-widget .booking-pkg-tabs {

	border-bottom: 1px solid #e3e8ee;

	padding: 0 12px;

	gap: 4px;

}



.pack-details .trip-booking-widget .booking-pkg-tabs .nav-link {

	border: 0;

	border-radius: 8px 8px 0 0;

	color: var(--text-color, #222222);

	font-size: 13px;

	font-weight: 600;

	padding: 10px 12px;

}



.pack-details .trip-booking-widget .booking-pkg-tabs .nav-link.active {

	background: #f4f9fc;

	color: var(--link-color, #0b71b8);

}



.pack-details .trip-booking-widget .booking-widget-body {

	padding: 18px 16px 16px;

}



.pack-details .trip-booking-widget .booking-kicker {

	display: block;

	color: #5f6b7a;

	font-size: 14px;

	margin-bottom: 4px;

}



.pack-details .trip-booking-widget .booking-price-value {

	margin: 0;

	color: var(--text-color, #222222);

	font-size: 15px;

	line-height: 1.2;

}



.pack-details .trip-booking-widget .booking-pp-amount {

	color: #2351a4;

	font-size: 34px;

	font-weight: 800;

	line-height: 1;

}



.pack-details .trip-booking-widget .booking-price-value small {

	color: #6b7785;

	font-size: 14px;

	font-weight: 600;

}



/* Unified group rates accordion — sidebar, costs tab, environmental widget */

.trip-group-rates-panel {

	margin: 14px 0 0;

	border: 1px solid #dfe7ef;

	border-radius: 10px;

	background: #f9fbfd;

	overflow: hidden;

}



.trip-group-rates-panel--cost-tab {

	margin-top: 20px;

}



.trip-group-rates-toggle {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 10px;

	width: 100%;

	padding: 12px 14px;

	border: 0;

	background: #fff;

	color: var(--text-color, #222222);

	font-size: 15px;

	font-weight: 600;

	text-align: left;

	cursor: pointer;

}



.trip-group-rates-icon {

	flex-shrink: 0;

	color: var(--nav-green, #2351a4);

	font-size: 14px;

}



.trip-group-rates-toggle[aria-expanded="true"] .trip-group-rates-icon::before {

	content: "\f068";

}



.trip-group-rates-list {

	list-style: none;

	margin: 0;

	padding: 0;

	border-top: 1px solid #e3e8ee;

	background: #fff;

}



.trip-group-rates-table-wrap {

	border-top: 1px solid #e3e8ee;

	background: #fff;

	overflow-x: auto;

}



.trip-group-rates-table {

	width: 100%;

	margin: 0;

	border-collapse: collapse;

	font-size: 14px;

}



.trip-group-rates-table thead th {

	padding: 10px 14px;

	border-bottom: 1px solid #e3e8ee;

	background: #f4f9fc;

	color: #12334a;

	font-size: 13px;

	font-weight: 700;

	text-align: left;

}



.trip-group-rates-table tbody td {

	padding: 10px 14px;

	border-top: 1px solid #edf2f7;

	color: #334155;

}



.trip-group-rates-table tbody td:last-child {

	font-weight: 700;

	color: var(--text-color, #222222);

	text-align: right;

	white-space: nowrap;

}



.trip-group-rates-list li {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 12px;

	padding: 10px 14px;

	border-top: 1px solid #edf2f7;

	color: #334155;

	font-size: 14px;

}



.trip-group-rates-list li:first-child {

	border-top: 0;

}



.trip-group-rates-list li span:last-child {

	font-weight: 700;

	color: var(--text-color, #222222);

	white-space: nowrap;

}



.pack-details .side-section .trip-group-rates-panel-wrap {

	padding: 0 20px 12px;

}



.pack-details .trip-booking-widget .trip-group-rates-panel {

	margin: 14px 0 16px;

}



/* Fixed departures — trip detail page */

.departure-section {

	margin-top: 1.5rem;

}



.departure-heading {

	display: flex;

	flex-wrap: wrap;

	align-items: flex-end;

	justify-content: space-between;

	gap: 16px;

	margin-bottom: 18px;

}



.departure-heading p {

	margin: 0;

	color: #5d6d78;

	font-size: 15px;

}



.departure-year-filter {

	display: flex;

	align-items: center;

	gap: 10px;

}



.departure-year-filter label {

	margin: 0;

	color: #334155;

	font-size: 14px;

	font-weight: 600;

}



.departure-year-filter .form-select {

	min-width: 110px;

	border-color: #d7e2ea;

	border-radius: 8px;

	font-size: 14px;

	font-weight: 600;

}



.departure-month-tabs {

	display: flex;

	flex-wrap: wrap;

	gap: 8px;

	margin-bottom: 16px;

	border-bottom: 0;

}



.departure-month-tabs .nav-link {

	padding: 8px 14px;

	border: 1px solid #d7e2ea;

	border-radius: 999px;

	background: #fff;

	color: #334155;

	font-size: 13px;

	font-weight: 600;

}



.departure-month-tabs .nav-link.active,

.departure-month-tabs .nav-link:hover {

	border-color: var(--nav-green, #2351a4);

	background: rgba(33, 155, 3, 0.08);

	color: var(--nav-green, #2351a4);

}



.departure-table-wrap {

	border: 1px solid #e0e9ef;

	border-radius: 12px;

	overflow: hidden;

	background: #fff;

	box-shadow: 0 8px 22px rgba(15, 45, 66, 0.06);

}



.departure-table {

	margin: 0;

}



.departure-table thead th {

	padding: 12px 14px;

	border-bottom: 1px solid #e3e8ee;

	background: #f4f9fc;

	color: #12334a;

	font-size: 13px;

	font-weight: 700;

	white-space: nowrap;

}



.departure-table tbody td {

	padding: 12px 14px;

	border-top: 1px solid #edf2f7;

	color: #334155;

	font-size: 14px;

	vertical-align: middle;

}



.departure-status {

	display: inline-flex;

	align-items: center;

	padding: 4px 10px;

	border-radius: 999px;

	font-size: 12px;

	font-weight: 700;

	line-height: 1.3;

}



.departure-status.available {

	background: rgba(33, 155, 3, 0.12);

	color: var(--nav-green, #2351a4);

}



.departure-status.unavailable {

	background: rgba(222, 45, 45, 0.12);

	color: #c62828;

}



.departure-book-btn {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	padding: 8px 16px;

	border-radius: 999px;

	background: var(--link-color, #0b71b8);

	color: #fff !important;

	font-size: 13px;

	font-weight: 700;

	text-decoration: none !important;

	white-space: nowrap;

}



.departure-book-btn:hover {

	background: var(--accent-blue-dark, #085a92);

	color: #fff !important;

}



@media (max-width: 767.98px) {

	.departure-table thead {

		display: none;

	}



	.departure-table tbody tr {

		display: block;

		padding: 12px 14px;

		border-top: 1px solid #edf2f7;

	}



	.departure-table tbody tr:first-child {

		border-top: 0;

	}



	.departure-table tbody td {

		display: flex;

		justify-content: space-between;

		gap: 12px;

		padding: 6px 0;

		border: 0;

	}



	.departure-table tbody td::before {

		content: attr(data-label);

		color: #64748b;

		font-weight: 600;

	}



	.departure-table tbody td[data-label="Action"] {

		justify-content: flex-start;

		padding-top: 10px;

	}



	.departure-table tbody td[data-label="Action"]::before {

		display: none;

	}

}



.pack-details .trip-booking-widget .booking-field {

	margin-bottom: 14px;

}



.pack-details .trip-booking-widget .booking-field-label {

	display: block;

	margin-bottom: 6px;

	color: var(--text-color, #222222);

	font-size: 14px;

	font-weight: 700;

}



.pack-details .trip-booking-widget .booking-date-wrap {

	position: relative;

}



.pack-details .trip-booking-widget .booking-date-wrap .form-control,

.pack-details .trip-booking-widget .booking-date-input,

.pack-details .trip-booking-widget .booking-date-select {

	width: 100%;

	min-height: 44px;

	border: 1px solid #2351a4;

	border-radius: 8px;

	padding-right: 44px;

	font-size: 14px;

}



.pack-details .trip-booking-widget .booking-date-input::-webkit-calendar-picker-indicator {

	display: none;

	-webkit-appearance: none;

}



.pack-details .trip-booking-widget .booking-date-icon {

	position: absolute;

	right: 6px;

	top: 50%;

	transform: translateY(-50%);

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 34px;

	height: 34px;

	padding: 0;

	border: 0;

	border-radius: 6px;

	background: transparent;

	color: #2351a4;

	cursor: pointer;

	z-index: 2;

}



.pack-details .trip-booking-widget .booking-date-icon:hover {

	background: rgba(33, 155, 3, 0.1);

}



.pack-details .trip-booking-widget .booking-counter {

	display: grid;

	grid-template-columns: 44px 1fr 44px;

	border: 1px solid #2351a4;

	border-radius: 8px;

	overflow: hidden;

	min-height: 44px;

}



.pack-details .trip-booking-widget .booking-qty-btn {

	border: 0;

	background: #f3f6f9;

	color: var(--text-color, #222222);

	font-size: 20px;

	font-weight: 700;

	line-height: 1;

}



.pack-details .trip-booking-widget .booking-qty-input {

	border: 0;

	background: #fff;

	text-align: center;

	font-size: 16px;

	font-weight: 700;

	color: var(--text-color, #222222);

}



.pack-details .trip-booking-widget .booking-total-row {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 12px;

	margin: 16px 0;

	padding-top: 14px;

	border-top: 1px solid #e3e8ee;

	color: var(--text-color, #222222);

	font-size: 16px;

	font-weight: 700;

}



.pack-details .trip-booking-widget .booking-total-amount {

	font-size: 22px;

}



.pack-details .trip-booking-widget .booking-actions {

	display: grid;

	gap: 10px;

}



.pack-details .trip-booking-widget .btn-booking {

	display: flex;

	align-items: center;

	justify-content: center;

	min-height: 46px;

	padding: 10px 16px;

	border-radius: 8px;

	font-size: 14px;

	font-weight: 700;

	letter-spacing: 0.02em;

	text-decoration: none !important;

	text-transform: uppercase;

}



.pack-details .trip-booking-widget .btn-booking-primary {

	background: linear-gradient(to right, #2351a4, #6b8fc9);

	color: #fff !important;

	border: 0;

}



.pack-details .trip-booking-widget .btn-booking-secondary {

	background: #0b71b8;

	color: #fff !important;

	border: 0;

}



.pack-details .trip-booking-widget .booking-rating-foot {

	margin-top: 14px;

	padding-top: 12px;

	border-top: 1px solid #e3e8ee;

	text-align: center;

	font-size: 14px;

}



.pack-details .trip-booking-widget .booking-rating-foot a {

	color: var(--link-color, #0b71b8);

	font-weight: 700;

	text-decoration: none;

}



.pack-details .trip-booking-widget .booking-rating-foot a:hover {

	color: var(--nav-green, #2351a4);

	text-decoration: underline;

}



@media (max-width: 991.98px) {

	.pack-details .trip-booking-sidebar .trip-booking-widget {

		position: static;

		margin-bottom: 20px;

	}

}



/* Homepage: remove white strip between green nav and hero slider */

#all-my-navs.navigation {

	position: sticky;

	top: 0;

	z-index: 999;

	margin: 0;

	padding: 0;

	background: transparent;

}



#all-my-navs.is-main-nav-stuck .top-header {

	display: none !important;

}



#all-my-navs .navbar.navbar-expand-lg,

#all-my-navs .navbar .container,

#all-my-navs .navbar .navbar-collapse,

#all-my-navs .navbar .navbar-nav {

	margin-bottom: 0 !important;

}



@media (min-width: 992px) {

	#all-my-navs .navbar .main-nav-list {

		width: 100%;

		display: flex;

		justify-content: space-between;

	}

}



.banner-relative {

	margin: 0 !important;

	padding: 0 !important;

}



.my-slider-ban {

	background: transparent !important;

	margin: 0 !important;

	padding: 0 !important;

}



.my-slider-ban .slick-slider,

.my-slider-ban .slick-list,

.my-slider-ban .slick-track,

.my-slider-ban .slick-slide,

.my-slider-ban .my-ban {

	margin: 0;

	padding: 0;

}



.my-slider-ban .my-ban img {

	display: block;

	width: 100%;

	margin: 0;

	vertical-align: top;

}



/* =============================================================================

   Layout finish — desktop + mobile polish

   ============================================================================= */



@media (prefers-reduced-motion: no-preference) {

	html {

		scroll-behavior: smooth;

	}

}



@media (prefers-reduced-motion: reduce) {

	html {

		scroll-behavior: auto;

	}

}



body.mobile-nav-open,

body.menu-open {

	overflow: hidden;

}



body {

	overflow-x: hidden;

}



img,

video,

iframe {

	max-width: 100%;

}



/* Restore Bootstrap columns broken by legacy style.css `.row > * { flex: 0 0 100% }` */

@media (max-width: 991.98px) {

	.row > [class*='col-'] {

		flex: 0 0 auto !important;

	}

}



/* --- Header: desktop --- */

@media (min-width: 992px) {

	#all-my-navs .top-header {

		padding: 8px 0;

		background: #fff;

		border-bottom: 1px solid #e8eef2;

	}



	#all-my-navs .top-header .row {

		align-items: center;

	}



	#all-my-navs .navbar.navbar-expand-lg {

		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);

	}



	.navigation .navbar-light .navbar-nav .nav-link {

		font-size: 12px;

		font-weight: 700;

		letter-spacing: 0.02em;

		padding: 12px 8px !important;

		color: #fff !important;

	}



	.navigation .navbar-light .navbar-nav .nav-item:hover .nav-link,

	.navigation .navbar-light .navbar-nav .nav-link:focus {

		background: rgba(0, 0, 0, 0.12);

		border-radius: 4px;

	}

}



/* --- Header: mobile sticky bar --- */

@media (max-width: 991.98px) {

	#snw {

		position: sticky;

		top: 0;

		z-index: 1000;

		background: #fff;

		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);

	}



	.small-nav-wraper .small-nv-frm {

		border-bottom: 1px solid rgba(0, 0, 0, 0.06);

	}



	body {

		padding-bottom: 56px;

	}

}



/* --- Homepage hero slider --- */

.my-slider-ban .hero-slide-title,

.my-slider-ban h1 {

	font-size: clamp(1.35rem, 3.2vw, 2.75rem);

	font-weight: 800;

	color: #fff;

	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.45);

	margin: 0 0 16px;

	line-height: 1.2;

}



.my-slider-ban .my-ban .ban-overlay h2 {

	font-size: clamp(0.85rem, 1.6vw, 1.15rem);

}



.my-slider-ban img {

	height: clamp(220px, 42vw, 700px);

	object-fit: cover;

}



.my-slider-ban .my-ban .ban-overlay .ban-link .slider-cta-btn {

	min-height: 44px;

	padding: 10px 22px;

	border-radius: 4px;

}



@media (max-width: 767.98px) {

	.my-slider-ban .my-ban .ban-overlay {

		width: 92%;

	}



	.my-slider-ban .slick-prev,

	.my-slider-ban .slick-next {

		width: 34px;

		height: 34px;

		z-index: 2;

	}

}



/* --- Welcome + home sections --- */

.welcome {

	padding: 40px 0;

}



.welcome .title {

	text-align: center;

	margin-bottom: 20px;

}



.welcome .title img {

	max-height: 72px;

	width: auto;

	margin-bottom: 12px;

}



.welcome .he1 h1 {

	font-size: clamp(1.5rem, 3vw, 2.2rem);

}



.welcome .he1 h3 {

	font-size: clamp(1rem, 2vw, 1.25rem);

	font-weight: 500;

	color: #466071;

}



.packages .title {

	text-align: center;

	margin-bottom: 24px;

}



.packages .title h2 {

	font-size: clamp(1.4rem, 2.5vw, 2rem);

}



.packages .package img,

.package .package-img img {

	width: 100%;

	height: 100% !important;

	min-height: 250px;

	object-fit: cover;

}



@media (max-width: 767px) {

	.package .package-img,

	.package .package-img img {

		min-height: 220px;

	}

}



@media (max-width: 575.98px) {

	.act-icons .row > .col {

		flex: 0 0 50%;

		max-width: 50%;

	}

}



/* --- Trip detail page --- */

.pack-details .trippage {

	padding-top: 8px;

}



.pack-details .trip-page-title {

	font-size: clamp(1.35rem, 2.8vw, 2rem);

	margin-bottom: 12px;

	color: var(--heading-color, #111111);

}



@media (max-width: 767.98px) {

	.pack-details .trip-featured-image {

		aspect-ratio: 4 / 3;

		margin-bottom: 16px;

		border-radius: 12px;

	}

}



.trip-booking-sidebar.is-mobile-inline {

	width: 100%;

	max-width: 100%;

	margin: 16px 0 24px;

	padding: 0;

}



.trip-booking-sidebar.is-mobile-inline .trip-booking-widget,

.trip-booking-sidebar.is-mobile-inline .sidebar-price-card {

	position: static !important;

	top: auto !important;

}



.mobile-trip-sidebar-anchor {

	display: block;

	height: 0;

}



@media (min-width: 992px) {

	.trip-details-layout {

		align-items: flex-start;

	}



	.pack-details .trip-booking-sidebar .trip-booking-widget {

		position: sticky;

		top: var(--trip-sidebar-sticky-top, 80px);

	}

}



@media (max-width: 991.98px) {

	.pack-details .trip-booking-sidebar:not(.is-mobile-inline) {

		margin-top: 24px;

	}



	#tripStickyNav.is-stuck {

		box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);

	}

}



/* --- Listing / filter pages --- */

.trips-listing-page {

	padding-bottom: 32px;

}



.trips-listing-page__meta {

	font-size: 0.9rem;

}



@media (max-width: 991.98px) {

	.trips-listing-page .col-lg-3 {

		margin-bottom: 16px;

	}

}



/* --- Contact page --- */

.contact-hero {

	position: relative;

	overflow: hidden;

	padding: 28px 0 36px;

	background: linear-gradient(135deg, #153877 0%, #0b71b8 72%, #085a92 100%);

	color: #fff;

}



.contact-hero__pattern {

	position: absolute;

	inset: 0;

	opacity: 0.12;

	background-image:

		radial-gradient(circle at 20% 20%, #fff 0 2px, transparent 2px),

		radial-gradient(circle at 80% 70%, #fff 0 1px, transparent 1px);

	background-size: 48px 48px, 32px 32px;

	pointer-events: none;

}



.contact-hero__container {

	position: relative;

	z-index: 1;

}



.contact-hero__breadcrumb ol {

	display: flex;

	flex-wrap: wrap;

	gap: 8px;

	margin: 0 0 18px;

	padding: 0;

	list-style: none;

	font-size: 13px;

}



.contact-hero__breadcrumb li + li::before {

	content: "›";

	margin-right: 8px;

	opacity: 0.75;

}



.contact-hero__breadcrumb a {

	color: #fff;

	text-decoration: none;

	font-weight: 600;

}



.contact-hero__breadcrumb a:hover {

	text-decoration: underline;

}



.contact-hero__grid {

	display: grid;

	grid-template-columns: minmax(0, 1.4fr) minmax(220px, 0.8fr);

	gap: 28px;

	align-items: center;

}



.contact-hero__eyebrow {

	margin: 0 0 8px;

	font-size: 12px;

	font-weight: 700;

	letter-spacing: 0.12em;

	text-transform: uppercase;

	opacity: 0.9;

}



.contact-hero__title {

	margin: 0 0 10px;

	font-size: clamp(2rem, 4vw, 2.75rem);

	font-weight: 800;

	line-height: 1.15;

}



.contact-hero__company {

	margin: 0 0 10px;

	font-size: clamp(1.05rem, 2vw, 1.35rem);

	font-weight: 700;

	line-height: 1.35;

	color: #e8f8e3;

}



.contact-hero__tagline {

	margin: 0 0 12px;

	font-size: 1rem;

	font-weight: 500;

	opacity: 0.92;

}



.contact-hero__lead {

	margin: 0 0 20px;

	max-width: 52ch;

	font-size: 1rem;

	line-height: 1.6;

	opacity: 0.95;

}



.contact-hero__actions {

	display: flex;

	flex-wrap: wrap;

	gap: 10px;

}



.contact-hero__action {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	padding: 11px 16px;

	border-radius: 999px;

	background: rgba(255, 255, 255, 0.14);

	border: 1px solid rgba(255, 255, 255, 0.28);

	color: #fff;

	font-size: 14px;

	font-weight: 700;

	text-decoration: none;

	backdrop-filter: blur(4px);

	transition: background-color 0.2s ease, transform 0.2s ease;

}



.contact-hero__action:hover {

	background: rgba(255, 255, 255, 0.24);

	color: #fff;

	transform: translateY(-1px);

}



.contact-hero__action--whatsapp:hover {

	background: #25d366;

	border-color: #25d366;

}



.contact-hero__brand-card {

	display: flex;

	justify-content: center;

}



.contact-hero__brand-card-inner {

	width: 100%;

	max-width: 280px;

	padding: 24px 20px;

	border-radius: 18px;

	background: rgba(255, 255, 255, 0.12);

	border: 1px solid rgba(255, 255, 255, 0.22);

	text-align: center;

	backdrop-filter: blur(8px);

	box-shadow: 0 18px 40px rgba(8, 35, 58, 0.22);

}



.contact-hero__brand-card-inner img {

	width: 96px;

	height: 96px;

	object-fit: contain;

	margin: 0 auto 14px;

	display: block;

	filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.15));

}



.contact-hero__brand-name {

	margin: 0 0 8px;

	font-size: 0.95rem;

	font-weight: 700;

	line-height: 1.4;

}



.contact-hero__brand-since {

	margin: 0;

	font-size: 0.82rem;

	line-height: 1.45;

	opacity: 0.88;

}



.contact-page {

	padding: 36px 0 56px;

	background: #f4f8fb;

}



.contact-page__main {

	margin-top: -18px;

}



.contact-info-card,

.contact-form-card,

.contact-page__map {

	border: 1px solid #e0e9ef;

	border-radius: 16px;

	background: #fff;

	box-shadow: 0 12px 32px rgba(15, 45, 66, 0.08);

}



.contact-info-card,

.contact-form-card {

	padding: 24px;

	height: 100%;

}



.contact-info-card__head,

.contact-form-card__head {

	display: flex;

	align-items: flex-start;

	gap: 14px;

	margin-bottom: 20px;

	padding-bottom: 16px;

	border-bottom: 1px solid #edf2f6;

}



.contact-info-card__icon,

.contact-form-card__icon {

	flex: 0 0 auto;

	width: 44px;

	height: 44px;

	border-radius: 12px;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	background: #2351a4;

	color: #ffffff;

	font-size: 18px;

}



.contact-form-card__icon {

	background: #153877;

	color: #ffffff;

}



.contact-info-card__head h2,

.contact-form-card__head h2 {

	margin: 0 0 4px;

	font-size: 1.35rem;

	font-weight: 800;

	color: #12334a;

}



.contact-info-card__head p,

.contact-form-card__head p {

	margin: 0;

	color: #5d7383;

	font-size: 0.95rem;

	line-height: 1.5;

}



.contact-info-list {

	margin: 0;

	padding: 0;

	list-style: none;

}



.contact-info-list__item {

	display: flex;

	align-items: flex-start;

	gap: 12px;

	padding: 14px 0;

	border-bottom: 1px solid #edf2f6;

}



.contact-info-list__item:last-child {

	border-bottom: 0;

	padding-bottom: 0;

}



.contact-info-list__icon {

	flex: 0 0 auto;

	width: 38px;

	height: 38px;

	border-radius: 10px;

	display: inline-flex;

	align-items: center;

	justify-content: center;

	background: #f3f8fb;

	color: #0b71b8;

	font-size: 15px;

}



.contact-info-list__body strong {

	display: block;

	margin-bottom: 4px;

	color: #12334a;

	font-size: 0.82rem;

	font-weight: 800;

	letter-spacing: 0.04em;

	text-transform: uppercase;

}



.contact-info-list__body p {

	margin: 0 0 4px;

	color: #355062;

	font-size: 0.95rem;

	line-height: 1.5;

}



.contact-info-list__body p:last-child {

	margin-bottom: 0;

}



.contact-info-list__body a {

	color: #0b71b8;

	font-weight: 600;

	text-decoration: none;

}



.contact-info-list__body a:hover {

	text-decoration: underline;

}



.contact-info-card__social {

	margin-top: 18px;

	padding-top: 16px;

	border-top: 1px solid #edf2f6;

}



.contact-info-card__social strong {

	display: block;

	margin-bottom: 10px;

	color: #12334a;

	font-size: 0.82rem;

	font-weight: 800;

	letter-spacing: 0.04em;

	text-transform: uppercase;

}



.contact-info-card__social ul {

	display: flex;

	flex-wrap: wrap;

	gap: 8px;

	margin: 0;

	padding: 0;

	list-style: none;

}



.contact-info-card__social a {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 38px;

	height: 38px;

	border-radius: 50%;

	background: #f3f8fb;

	color: #0b71b8;

	text-decoration: none;

	transition: background-color 0.2s ease, color 0.2s ease;

}



.contact-info-card__social a:hover {

	background: #2351a4;

	color: #fff;

}



.contact-page .form-group {

	margin-bottom: 0;

}



.contact-page .form-label {

	margin-bottom: 6px;

	color: #12334a;

	font-size: 0.9rem;

	font-weight: 700;

}



.contact-page .form-control {

	min-height: 46px;

	border: 1px solid #d5e2ea;

	border-radius: 10px;

	padding: 10px 14px;

	color: #12334a;

	background: #fbfdff;

	box-shadow: none;

	transition: border-color 0.2s ease, box-shadow 0.2s ease;

}



.contact-page .form-control:focus {

	border-color: #0b71b8;

	box-shadow: 0 0 0 3px rgba(11, 113, 184, 0.14);

}



.contact-page textarea.form-control {

	min-height: 130px;

	resize: vertical;

}



.contact-page .error {

	display: block;

	margin-top: 4px;

	color: #c0392b;

	font-size: 0.82rem;

}



.contact-form-card__footer {

	display: flex;

	align-items: center;

	gap: 12px;

	margin-top: 18px;

}



.contact-form-card__submit {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	min-height: 46px;

	padding: 0 22px;

	border: 0;

	border-radius: 999px;

	background: #2351a4;

	font-weight: 700;

	box-shadow: 0 8px 20px rgba(33, 155, 3, 0.28);

}



.contact-form-card__submit:hover,

.contact-form-card__submit:focus {

	background: #153877;

}



.contact-form__loader img {

	display: block;

}



.contact-page__map {

	margin-top: 28px;

	padding: 22px;

	overflow: hidden;

}



.contact-page__map-head {

	margin-bottom: 14px;

}



.contact-page__map-head h2 {

	margin: 0 0 6px;

	font-size: 1.35rem;

	font-weight: 800;

	color: #12334a;

}



.contact-page__map-head h2 i {

	margin-right: 8px;

	color: #2351a4;

}



.contact-page__map-head p {

	margin: 0;

	color: #5d7383;

	font-size: 0.95rem;

}



.contact-map-embed {

	border-radius: 12px;

	overflow: hidden;

	border: 1px solid #e0e9ef;

	background: #edf2f6;

}



.contact-map-embed iframe {

	display: block;

	width: 100%;

	min-height: 360px;

	border: 0;

}



@media (max-width: 991.98px) {

	.contact-hero {

		padding: 22px 0 30px;

	}



	.contact-hero__grid {

		grid-template-columns: 1fr;

	}



	.contact-hero__brand-card {

		order: -1;

	}



	.contact-hero__brand-card-inner {

		max-width: none;

		display: flex;

		align-items: center;

		gap: 14px;

		text-align: left;

		padding: 16px;

	}



	.contact-hero__brand-card-inner img {

		width: 64px;

		height: 64px;

		margin: 0;

	}



	.contact-page__main {

		margin-top: 0;

	}

}



@media (max-width: 575.98px) {

	.contact-info-card,

	.contact-form-card,

	.contact-page__map {

		padding: 18px;

		border-radius: 14px;

	}



	.contact-hero__actions {

		flex-direction: column;

	}



	.contact-hero__action {

		justify-content: center;

	}

}



.contact-page .form-control,

.contact-page .form-select,

.quotation .form-control {

	min-height: 44px;

}



/* --- Breadcrumbs --- */

.com-back-1 ul {

	row-gap: 4px;

}



.com-back-1 li span,

.com-back-1 li p {

	margin: 0;

	display: inline;

}



/* --- Modern responsive tables (global) --- */

.table-scroll-wrap {

	width: 100%;

	overflow-x: auto;

	overflow-y: hidden;

	-webkit-overflow-scrolling: touch;

	margin: 0 0 1.25rem;

	border: 1px solid #e0e9ef;

	border-radius: 12px;

	background: #fff;

	box-shadow: 0 8px 22px rgba(15, 45, 66, 0.07);

}



.group-rate-table-wrap .table-scroll-wrap,

.departure-table-wrap .table-scroll-wrap,

.upcomming .table-scroll-wrap {

	border: 0;

	border-radius: 0;

	box-shadow: none;

	margin: 0;

	background: transparent;

}



.table-scroll-wrap > table {

	width: 100%;

	min-width: min(100%, 480px);

	margin: 0 !important;

	border: 0 !important;

	border-collapse: collapse;

	border-spacing: 0;

	background: #fff;

	color: #333;

	font-size: 14px;

	line-height: 1.5;

}



.table-scroll-wrap > table caption {

	caption-side: top;

	padding: 12px 14px;

	color: #12334a;

	font-size: 15px;

	font-weight: 700;

	text-align: left;

	background: #f7fafc;

	border-bottom: 1px solid #e8eef2;

}



.table-scroll-wrap > table thead th {

	padding: 12px 14px;

	border: 1px solid #d2e0e8 !important;

	background: #12334a;

	color: #fff;

	font-size: 13px;

	font-weight: 700;

	text-align: left;

	vertical-align: middle;

	white-space: nowrap;

}



.table-scroll-wrap > table:not(:has(thead)) > tbody > tr:first-child > th,

.table-scroll-wrap > table:not(:has(thead)) > tbody > tr:first-child > td,

.table-scroll-wrap > table:not(:has(thead)) > tr:first-child > th,

.table-scroll-wrap > table:not(:has(thead)) > tr:first-child > td {

	padding: 12px 14px;

	border: 1px solid #d9e7df !important;

	background: #f0f6ef;

	color: #12334a;

	font-size: 13px;

	font-weight: 700;

	vertical-align: middle;

}



.table-scroll-wrap > table th,

.table-scroll-wrap > table td {

	padding: 11px 14px;

	border: 1px solid #e8eef2 !important;

	vertical-align: top;

	text-align: left;

}



.table-scroll-wrap > table tbody tr:nth-child(even) td,

.table-scroll-wrap > table > tbody > tr:nth-child(even) > td,

.table-scroll-wrap > table > tr:nth-child(even):not(:first-child) > td {

	background: #fafcfd;

}



.table-scroll-wrap > table tbody tr:hover td,

.table-scroll-wrap > table > tbody > tr:hover > td,

.table-scroll-wrap > table > tr:not(:first-child):hover > td {

	background: #f2f8fc;

}



.table-scroll-wrap > table a {

	color: var(--link-color, #0b71b8);

	font-weight: 600;

	text-decoration: none;

}



.table-scroll-wrap > table a:hover {

	text-decoration: underline;

}



/* Content-area tables (CMS / CKEditor) before/without auto-wrap */

.pack-details .content table,

.about-us table,

.destination-content table,

.taxonomy-intro-card table,

.activity-intro table,

.activity-page table,

.page-content table,

.dlist table,

.itinerary-details table,

.tripinfo table,

.accordion-body table,

.post-article-body table,

.blog-article-body table,

.blog-content .content table {

	border-collapse: collapse;

}



@media (max-width: 767.98px) {

	.table-scroll-wrap {

		border-radius: 10px;

	}



	.table-scroll-wrap > table {

		min-width: 520px;

		font-size: 13px;

	}



	.table-scroll-wrap > table th,

	.table-scroll-wrap > table td,

	.table-scroll-wrap > table thead th {

		padding: 10px 12px;

	}

}



/* --- Floating actions --- */

.share-page-btn,

.back-to-top {

	position: fixed;

	right: 16px;

	z-index: 1040;

	width: 44px;

	height: 44px;

	border: 0;

	border-radius: 50%;

	display: flex;

	align-items: center;

	justify-content: center;

	cursor: pointer;

	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);

	transition: opacity 0.25s ease, transform 0.25s ease, background 0.25s ease;

	opacity: 0;

	visibility: hidden;

	pointer-events: none;

}



.share-page-btn {

	bottom: 88px;

	background: #0b71b8;

	color: #fff;

	opacity: 1;

	visibility: visible;

	pointer-events: auto;

}



.back-to-top {

	bottom: 28px;

	background: #2351a4;

	color: #fff;

}



.share-page-btn.is-visible,

.back-to-top.is-visible,

.share-page-btn:focus-visible,

.back-to-top:focus-visible {

	opacity: 1;

	visibility: visible;

	pointer-events: auto;

}



.share-page-btn:hover,

.back-to-top:hover {

	transform: translateY(-2px);

}



.share-page-btn.is-feedback {

	background: #203f64;

}



@media (max-width: 991.98px) {

	.share-page-btn {

		bottom: 108px;

	}



	.back-to-top {

		bottom: 52px;

	}

}



/* --- Footer: account for mobile bottom contact bar --- */

@media (max-width: 991.98px) {

	.for-phone-contact {

		display: block;

	}



	.for-phone-contact ul {

		display: flex;

		margin: 0;

		padding: 0;

		list-style: none;

		background: #e4f3e1;

	}



	.for-phone-contact li {

		flex: 1 1 33.33%;

		text-align: center;

	}



	.for-phone-contact a {

		display: flex;

		align-items: center;

		justify-content: center;

		min-height: 52px;

		color: #0b71b8;

		font-size: 20px;

		text-decoration: none;

	}



	.for-phone-contact a:hover {

		color: var(--primary-color, #2351a4);

	}



	/* Trip page — sticky Book / Inquiry bar (mobile only) */

	.trip-mobile-action-bar {

		display: flex;

		position: fixed;

		left: 0;

		right: 0;

		bottom: 52px;

		z-index: 9998;

		margin: 0;

		padding: 0;

		background: #fff;

		border-top: 1px solid #e3e9ee;

		box-shadow: 0 -4px 16px rgba(17, 24, 39, 0.1);

	}



	.trip-mobile-action-bar a {

		flex: 1 1 50%;

		display: flex;

		align-items: center;

		justify-content: center;

		gap: 8px;

		min-height: 54px;

		padding: 10px 12px;

		font-size: 14px;

		font-weight: 700;

		text-decoration: none !important;

		text-transform: uppercase;

		letter-spacing: 0.02em;

	}



	.trip-mobile-action-bar__book {

		background: linear-gradient(to right, var(--nav-green, #2351a4), var(--brand-green-light, #6b8fc9));

		color: #fff !important;

	}



	.trip-mobile-action-bar__inquiry {

		background: var(--accent-blue, #0b71b8);

		color: #fff !important;

		border-left: 1px solid rgba(255, 255, 255, 0.25);

	}



	body.trip-page-has-sticky-nav,

	body:has(.trip-mobile-action-bar) {

		padding-bottom: 106px;

	}



	.pack-details + section[style*="f5f5f5"],

	section:has(.title h2) {

		scroll-margin-bottom: 110px;

	}

}



@media (min-width: 992px) {

	.trip-mobile-action-bar {

		display: none !important;

	}

}



/* Similar packages block on trip page */

section.trip-similar-packages {

	background: #f5f5f5;

	padding: 32px 0 40px;

}



section.trip-similar-packages .title {

	text-align: center;

	margin-bottom: 24px;

}



section.trip-similar-packages .title h2 {

	margin-bottom: 8px;

	color: var(--heading-color, #111111);

	font-size: clamp(1.5rem, 2.5vw, 2rem);

	font-weight: 800;

}



section.trip-similar-packages .title p {

	margin: 0;

	color: var(--text-muted, #444444);

	font-size: 15px;

}



/* --- Page content rhythm --- */

article.mb-4,

.new-page + article {

	padding-top: 8px;

}



.container {

	padding-left: max(15px, env(safe-area-inset-left));

	padding-right: max(15px, env(safe-area-inset-right));

}



/* =============================================================================

   Brand palette overrides — green primary, black text, blue accents

   (theme.css loads after style.css)

   ============================================================================= */



body {

	color: var(--text-color, #222222) !important;

}



h1, h2, h3, h4, h5, h6,

.title h1, .title h2, .new-page h1,

.pack-container h1 {

	color: var(--heading-color, #111111) !important;

}



#nvd,

#dnvd {

	background: var(--nav-green, #2351a4) !important;

}



.navigation .top-header form .btn {

	background: var(--accent-blue, #0b71b8) !important;

	border-color: var(--accent-blue, #0b71b8) !important;

}



.mega-menu,

.navbar-expand-lg .navbar-nav > .has-dropdown > .dropdown-menu {

	border-top-color: var(--nav-green, #2351a4) !important;

}



.package:hover .read,

.packages .all-link a:hover {

	background: var(--primary-color, #2351a4) !important;

	color: #fff !important;

}



.breadcum ul li a:hover,

.breadcum ul li:last-child {

	background: var(--accent-blue, #0b71b8) !important;

}



footer .line {

	background: var(--accent-blue, #0b71b8) !important;

}



.pack-details .trip-booking-widget .booking-pkg-tabs .nav-link.active {

	color: var(--link-color, #0b71b8);

}



.share-page-btn.is-feedback {

	background: var(--accent-blue-dark, #085a92);

}



.welcome .lilnk a {

	color: var(--link-color, #0b71b8);

}



.welcome .lilnk a:hover {

	color: var(--accent-blue-dark, #085a92);

}



/* =============================================================================

   Mega menu + desktop dropdown refinement

   ============================================================================= */



@media (min-width: 992px) {

	.navigation .navbar.navbar-expand-lg {

		position: relative;

	}



	.navigation .navbar-nav > .has-mega-menu {

		position: static;

	}



	.navigation .navbar-nav > .has-dropdown {

		position: relative;

	}



	.navigation .navbar-nav > .has-mega-menu:hover > .nav-link,

	.navigation .navbar-nav > .has-mega-menu:focus-within > .nav-link,

	.navigation .navbar-nav > .has-dropdown:hover > .nav-link,

	.navigation .navbar-nav > .has-dropdown:focus-within > .nav-link {

		background: var(--brand-green-dark, #153877) !important;

		color: #fff !important;

		border-radius: 4px 4px 0 0;

	}



	.navigation .navbar-nav > .has-mega-menu:hover > .mega-menu,

	.navigation .navbar-nav > .has-mega-menu:focus-within > .mega-menu {

		display: block;

		opacity: 1;

		visibility: visible;

		pointer-events: auto;

		transform: translateY(0);

	}



	.navigation .navbar-nav > .has-dropdown:hover > .dropdown-menu,

	.navigation .navbar-nav > .has-dropdown:focus-within > .dropdown-menu {

		display: block !important;

		opacity: 1;

		visibility: visible;

		pointer-events: auto;

	}



	.navigation .navbar-nav > .has-mega-menu > .mega-menu,

	.navigation .navbar-nav > .has-dropdown > .dropdown-menu {

		margin-top: 0 !important;

	}

}



.mega-menu {

	position: absolute;

	left: 0;

	top: 100%;

	width: 100%;

	display: none;

	opacity: 0;

	visibility: hidden;

	pointer-events: none;

	background: #fff;

	border-top: 3px solid var(--nav-green, #2351a4);

	box-shadow: 0 18px 36px rgba(17, 24, 39, 0.14);

	z-index: 1002;

	max-height: min(72vh, 640px);

	overflow-x: hidden;

	overflow-y: auto;

	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;

	transform: translateY(6px);

}



.mega-menu-inner {

	padding: 18px 15px 22px;

}



.mega-menu-heading {

	display: flex;

	align-items: center;

	justify-content: space-between;

	margin: 0 0 14px;

	padding: 0 0 12px;

	border-bottom: 1px solid #e8eef2;

}



.mega-menu-heading__label {

	color: var(--heading-color, #111111);

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: 15px;

	font-weight: 700;

	letter-spacing: 0.02em;

	text-transform: uppercase;

}



.mega-menu-heading__label::before {

	content: '';

	display: inline-block;

	width: 4px;

	height: 14px;

	margin-right: 10px;

	border-radius: 2px;

	background: var(--nav-green, #2351a4);

	vertical-align: -2px;

}



.mega-row {

	display: grid;

	grid-template-columns: repeat(4, minmax(0, 1fr));

	gap: 8px 18px;

	margin: 0;

}



.mega-menu ul {

	float: none !important;

	width: auto !important;

	margin: 0 0 12px;

	padding: 0;

	list-style: none;

	break-inside: avoid;

}



.mega-menu ul li {

	display: block;

	text-transform: capitalize;

}



.mega-menu ul li .mega-group-title {

	display: block;

	margin-bottom: 8px;

	padding-bottom: 6px;

	border-bottom: 1px solid #e7edf2;

}



.mega-menu ul li .mega-group-title a {

	color: var(--heading-color, #111111) !important;

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: 14px;

	font-weight: 700;

	line-height: 1.35;

	padding: 4px 0 6px;

	text-decoration: none !important;

	display: block;

	transition: color 0.2s ease;

}



.mega-menu ul li .mega-group-title a:hover,

.mega-menu ul li .mega-group-title a:focus {

	color: var(--nav-green, #2351a4) !important;

}



.mega-menu ul li > a {

	padding: 5px 0 5px 12px;

	color: var(--text-color, #222222);

	font-size: 13px;

	font-weight: 500;

	line-height: 1.4;

	display: block;

	text-decoration: none;

	border-bottom: 0;

	position: relative;

	transition: color 0.2s ease, padding-left 0.2s ease;

}



.mega-menu ul li > a::before {

	content: '';

	position: absolute;

	left: 0;

	top: 0.72em;

	width: 5px;

	height: 5px;

	border-radius: 50%;

	background: #2351a4;

	transition: background 0.2s ease;

}



.mega-menu ul li > a:hover,

.mega-menu ul li > a:focus {

	color: var(--link-color, #0b71b8);

	padding-left: 14px;

	text-decoration: none;

}



.mega-menu ul li > a:hover::before,

.mega-menu ul li > a:focus::before {

	background: var(--link-color, #0b71b8);

}



.mega-group--wide {

	grid-column: span 2;

	margin: 0 0 12px;

	break-inside: avoid;

}



.mega-group--wide .mega-group-title {

	display: block;

	margin-bottom: 8px;

	padding-bottom: 6px;

	border-bottom: 1px solid #e7edf2;

}



.mega-group--wide .mega-group-title a {

	color: var(--heading-color, #111111) !important;

	font-family: var(--heading-font, 'Poppins', sans-serif);

	font-size: 14px;

	font-weight: 700;

	line-height: 1.35;

	padding: 4px 0 6px;

	text-decoration: none !important;

	display: block;

	transition: color 0.2s ease;

}



.mega-group--wide .mega-group-title a:hover,

.mega-group--wide .mega-group-title a:focus {

	color: var(--nav-green, #2351a4) !important;

}



.mega-group-cols {

	display: grid;

	grid-template-columns: repeat(2, minmax(0, 1fr));

	gap: 0 16px;

}



.mega-group-col {

	margin: 0;

	padding: 0;

	list-style: none;

}



.mega-group-col li {

	display: block;

	text-transform: capitalize;

}



.mega-group-col li > a {

	padding: 5px 0 5px 12px;

	color: var(--text-color, #222222);

	font-size: 13px;

	font-weight: 500;

	line-height: 1.4;

	display: block;

	text-decoration: none;

	position: relative;

	transition: color 0.2s ease, padding-left 0.2s ease;

}



.mega-group-col li > a::before {

	content: '';

	position: absolute;

	left: 0;

	top: 0.72em;

	width: 5px;

	height: 5px;

	border-radius: 50%;

	background: #2351a4;

	transition: background 0.2s ease;

}



.mega-group-col li > a:hover,

.mega-group-col li > a:focus {

	color: var(--link-color, #0b71b8);

	padding-left: 14px;

	text-decoration: none;

}



.mega-group-col li > a:hover::before,

.mega-group-col li > a:focus::before {

	background: var(--link-color, #0b71b8);

}



@media (min-width: 992px) and (max-width: 1199.98px) {

	.mega-group--wide {

		grid-column: span 2;

	}

}



@media (min-width: 1400px) {

	.mega-group--wide {

		grid-column: span 2;

	}

}



.mega-menu,

.mega-menu-inner {

	scrollbar-width: thin;

	scrollbar-color: #c8d6c3 #f4f7f2;

}



.mega-menu::-webkit-scrollbar,

.mega-menu-inner::-webkit-scrollbar {

	width: 8px;

}



.mega-menu::-webkit-scrollbar-thumb,

.mega-menu-inner::-webkit-scrollbar-thumb {

	background: #c8d6c3;

	border-radius: 8px;

}



@media (min-width: 992px) and (max-width: 1199.98px) {

	.mega-row {

		grid-template-columns: repeat(3, minmax(0, 1fr));

	}

}



@media (min-width: 1200px) {

	.mega-row {

		grid-template-columns: repeat(4, minmax(0, 1fr));

	}



	.mega-menu-inner {

		padding: 20px 12px 24px;

	}

}



@media (min-width: 1400px) {

	.mega-row {

		grid-template-columns: repeat(5, minmax(0, 1fr));

	}

}



/* Standard dropdown menus — match mega menu polish */

@media (min-width: 992px) {

	.navbar-expand-lg .navbar-nav .dropdown-menu {

		background: #fff !important;

		border: 0 !important;

		border-top: 3px solid var(--nav-green, #2351a4) !important;

		border-radius: 0 0 8px 8px !important;

		box-shadow: 0 14px 28px rgba(17, 24, 39, 0.12) !important;

		min-width: 260px;

		padding: 0 !important;

		overflow: hidden;

	}



	.navigation .dropdown-heading {

		padding: 12px 18px 10px;

		background: #f7faf5;

		border-bottom: 1px solid #e5ebe2;

		color: var(--heading-color, #111111);

		font-size: 12px;

		font-weight: 700;

		text-transform: uppercase;

		letter-spacing: 0.04em;

	}



	.navbar-expand-lg .navbar-nav .dropdown-menu li .dropdown-item {

		color: var(--text-color, #222222);

		font-size: 13px;

		font-weight: 500;

		padding: 10px 18px;

		transition: background 0.2s ease, color 0.2s ease, padding-left 0.2s ease;

	}



	.navbar-expand-lg .navbar-nav .dropdown-menu li .dropdown-item:hover,

	.navbar-expand-lg .navbar-nav .dropdown-menu li .dropdown-item:focus {

		background: #f4f9f1 !important;

		color: var(--link-color, #0b71b8) !important;

		padding-left: 22px !important;

	}



	.navbar-expand-lg .navbar-nav .dropdown-menu li .dropdown-item i {

		color: var(--nav-green, #2351a4);

	}



	.navbar-expand-lg .navbar-nav .dropdown-menu li .second-drop,

	.navbar-expand-lg .navbar-nav .dropdown-menu li .third-drop {

		background: #fff;

		border-left: 1px solid #e8eef2;

		box-shadow: 8px 8px 20px rgba(17, 24, 39, 0.08);

	}



	.navbar-expand-lg .navbar-nav .dropdown-menu li .second-drop ul li a,

	.navbar-expand-lg .navbar-nav .dropdown-menu li .third-drop li a {

		color: var(--text-color, #222222) !important;

		font-size: 13px;

	}



	.navbar-expand-lg .navbar-nav .dropdown-menu li .second-drop ul li:hover,

	.navbar-expand-lg .navbar-nav .dropdown-menu li .third-drop li:hover {

		background: #f4f9f1;

	}



	.navbar-expand-lg .navbar-nav .dropdown-menu li .second-drop ul li:hover a,

	.navbar-expand-lg .navbar-nav .dropdown-menu li .third-drop li:hover a {

		color: var(--link-color, #0b71b8) !important;

	}

}



/* =============================================================================

   Booking funnel — make-booking / reserve pages

   ============================================================================= */



.booking-funnel-page {

	background: linear-gradient(180deg, #f3f7ef 0%, #f8faf6 220px, #f4f6f8 100%);

	padding: 24px 0 56px;

	min-height: 60vh;

}



.booking-breadcrumb {

	display: flex;

	flex-wrap: wrap;

	align-items: center;

	gap: 8px;

	margin-bottom: 18px;

	font-size: 13px;

}



.booking-breadcrumb a {

	color: var(--link-color, #0b71b8);

	font-weight: 600;

	text-decoration: none;

}



.booking-breadcrumb a:hover {

	color: var(--accent-blue-dark, #085a92);

	text-decoration: underline;

}



.booking-breadcrumb span:last-child {

	color: var(--text-muted, #444444);

	font-weight: 600;

}



.booking-funnel-hero {

	margin-bottom: 22px;

	max-width: 760px;

}



.booking-eyebrow {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	margin: 0 0 8px;

	padding: 6px 12px;

	border-radius: 999px;

	background: rgba(33, 155, 3, 0.1);

	color: var(--brand-green-dark, #153877);

	font-size: 12px;

	font-weight: 700;

	letter-spacing: 0.04em;

	text-transform: uppercase;

}



.booking-funnel-hero h1,

.booking-funnel-page h1 {

	margin: 0 0 10px;

	color: var(--heading-color, #111111);

	font-size: clamp(1.65rem, 3vw, 2.2rem);

	font-weight: 800;

	line-height: 1.2;

}



.booking-intro {

	margin: 0;

	color: var(--text-color, #222222);

	font-size: 1rem;

	line-height: 1.65;

	max-width: 680px;

}



.booking-funnel-grid {

	display: grid;

	gap: 24px;

	align-items: start;

}



@media (min-width: 992px) {

	.booking-funnel-grid {

		grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);

		gap: 28px;

	}

}



.booking-funnel-card,

.booking-funnel-summary {

	background: #fff;

	border: 1px solid #e3e9ee;

	border-radius: 14px;

	box-shadow: 0 12px 32px rgba(17, 24, 39, 0.07);

	overflow: hidden;

}



.booking-funnel-card {

	padding: 24px 22px 28px;

}



.booking-funnel-form__section {

	margin-bottom: 28px;

	padding-bottom: 24px;

	border-bottom: 1px solid #edf1f4;

}



.booking-funnel-form__section:last-of-type {

	border-bottom: 0;

	padding-bottom: 0;

	margin-bottom: 20px;

}



.booking-funnel-form__heading {

	display: flex;

	align-items: center;

	gap: 10px;

	margin: 0 0 16px;

	color: var(--heading-color, #111111);

	font-size: 1.1rem;

	font-weight: 700;

}



.booking-funnel-form__heading::before {

	content: '';

	display: inline-block;

	width: 4px;

	height: 18px;

	border-radius: 2px;

	background: var(--nav-green, #2351a4);

	flex-shrink: 0;

}



.booking-funnel-form__lead {

	margin: -8px 0 16px;

	color: var(--text-muted, #444444);

	font-size: 0.95rem;

	line-height: 1.55;

}



.booking-funnel-form label,

.booking-funnel-card label {

	display: block;

	margin-bottom: 6px;

	color: var(--heading-color, #111111);

	font-size: 14px;

	font-weight: 600;

}



.booking-funnel-form .form-control,

.booking-funnel-form .form-select,

.booking-funnel-card .form-control,

.booking-funnel-card .form-select {

	min-height: 46px;

	border: 1px solid #d5dde5;

	border-radius: 8px;

	padding: 10px 14px;

	font-size: 15px;

	color: var(--text-color, #222222);

	background: #fff;

	transition: border-color 0.2s ease, box-shadow 0.2s ease;

}



.booking-funnel-form .form-control:focus,

.booking-funnel-form .form-select:focus,

.booking-funnel-card .form-control:focus,

.booking-funnel-card .form-select:focus {

	border-color: var(--nav-green, #2351a4);

	box-shadow: 0 0 0 3px rgba(33, 155, 3, 0.12);

	outline: 0;

}



.booking-funnel-form textarea.form-control {

	min-height: 120px;

	resize: vertical;

}



.booking-funnel-form .error,

.booking-funnel-card .error {

	margin-top: 6px;

	color: #c62828;

	font-size: 13px;

	font-weight: 600;

}



.booking-funnel-form .help-block {

	display: block;

	margin-top: 6px;

	color: #c62828;

	font-size: 13px;

}



/* Travel date options */

.booking-date-option {

	margin-bottom: 12px;

	padding: 14px 16px;

	border: 1px solid #e3e9ee;

	border-radius: 10px;

	background: #fafcf8;

	transition: border-color 0.2s ease, background 0.2s ease;

}



.booking-date-option:has(.form-check-input:checked) {

	border-color: rgba(33, 155, 3, 0.45);

	background: #f4faf1;

}



.booking-date-option .form-check {

	margin: 0;

}



.booking-date-option .form-check-label {

	margin: 0;

	font-weight: 600;

	color: var(--heading-color, #111111);

	cursor: pointer;

}



.booking-date-option__panel {

	margin-top: 12px;

	padding-top: 12px;

	border-top: 1px dashed #dde5df;

}



.booking-date-option__hint {

	margin: 0;

	color: var(--text-muted, #444444);

	font-size: 14px;

	line-height: 1.5;

}



.booking-date-display {

	min-height: 46px;

	display: flex;

	align-items: center;

	padding: 10px 14px;

	border: 1px solid #d5dde5;

	border-radius: 8px;

	background: #f7f9fb;

	color: var(--text-color, #222222);

	font-size: 15px;

	font-weight: 600;

}



/* Single calendar icon on date fields (hide native browser icon) */

.booking-date-wrap {

	position: relative;

}



.booking-date-wrap .booking-date-input,

.booking-funnel-form .booking-date-wrap input[type="date"] {

	padding-right: 44px;

}



.booking-date-wrap input[type="date"]::-webkit-calendar-picker-indicator {

	display: none;

	-webkit-appearance: none;

}



.booking-date-wrap .booking-date-icon {

	position: absolute;

	right: 6px;

	top: 50%;

	transform: translateY(-50%);

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 34px;

	height: 34px;

	padding: 0;

	border: 0;

	border-radius: 6px;

	background: transparent;

	color: var(--nav-green, #2351a4);

	cursor: pointer;

	z-index: 2;

}



.booking-date-wrap .booking-date-icon:hover {

	background: rgba(33, 155, 3, 0.1);

}



/* Completion options */

.booking-completion-options {

	display: grid;

	gap: 12px;

}



.booking-completion-option {

	position: relative;

	display: grid;

	gap: 6px;

	padding: 16px 16px 16px 52px;

	border: 2px solid #e3e9ee;

	border-radius: 12px;

	background: #fff;

	cursor: pointer;

	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;

}



.booking-completion-option input {

	position: absolute;

	opacity: 0;

	pointer-events: none;

}



.booking-completion-option__icon {

	position: absolute;

	left: 16px;

	top: 18px;

	width: 28px;

	height: 28px;

	display: flex;

	align-items: center;

	justify-content: center;

	border-radius: 50%;

	background: #eef5ea;

	color: var(--nav-green, #2351a4);

	font-size: 13px;

}



.booking-completion-option__badge {

	display: inline-block;

	width: fit-content;

	padding: 3px 8px;

	border-radius: 999px;

	background: var(--nav-green, #2351a4);

	color: #fff;

	font-size: 11px;

	font-weight: 700;

	letter-spacing: 0.03em;

	text-transform: uppercase;

}



.booking-completion-option__title {

	color: var(--heading-color, #111111);

	font-size: 15px;

	font-weight: 700;

}



.booking-completion-option__text {

	color: var(--text-muted, #444444);

	font-size: 13px;

	line-height: 1.5;

}



.booking-completion-option.is-selected,

.booking-completion-option:has(input:checked) {

	border-color: var(--nav-green, #2351a4);

	background: #f8fcf6;

	box-shadow: 0 8px 20px rgba(33, 155, 3, 0.08);

}



.booking-alert {

	margin-bottom: 12px;

	padding: 12px 14px;

	border-radius: 8px;

	border-left: 4px solid var(--accent-blue, #0b71b8);

	background: #f0f7fc;

	color: #1a4f72;

	font-size: 14px;

	line-height: 1.5;

}



/* Terms consent */

.booking-funnel-form__consent label {

	display: flex;

	align-items: flex-start;

	gap: 10px;

	margin: 0;

	font-weight: 400;

	cursor: pointer;

}



.booking-funnel-form__consent input[type="checkbox"] {

	width: 18px;

	height: 18px;

	margin-top: 3px;

	flex-shrink: 0;

	accent-color: var(--nav-green, #2351a4);

}



.booking-funnel-form__consent span {

	color: var(--text-color, #222222);

	font-size: 14px;

	line-height: 1.55;

}



.booking-funnel-form__consent a {

	color: var(--link-color, #0b71b8);

	font-weight: 600;

}



/* Actions */

.booking-funnel-actions {

	margin-top: 8px;

}



.booking-continue-btn {

	display: flex;

	align-items: center;

	justify-content: center;

	width: 100%;

	min-height: 52px;

	padding: 14px 20px;

	border: 0;

	border-radius: 10px;

	font-size: 15px;

	font-weight: 700;

	letter-spacing: 0.02em;

	text-transform: uppercase;

	cursor: pointer;

	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;

}



.booking-continue-btn--primary {

	background: linear-gradient(to right, var(--nav-green, #2351a4), var(--brand-green-light, #6b8fc9));

	color: #fff !important;

	box-shadow: 0 8px 20px rgba(33, 155, 3, 0.25);

}



.booking-continue-btn--primary:hover {

	background: linear-gradient(to right, var(--brand-green-dark, #153877), var(--nav-green, #2351a4));

	transform: translateY(-1px);

	box-shadow: 0 10px 24px rgba(33, 155, 3, 0.3);

}



.booking-continue-btn:disabled {

	opacity: 0.65;

	cursor: not-allowed;

	transform: none;

}



.booking-funnel-actions__note {

	margin: 12px 0 0;

	text-align: center;

	color: var(--text-muted, #444444);

	font-size: 13px;

	line-height: 1.5;

}



#loader.booking-funnel-loader {

	display: none !important;

	position: fixed;

	inset: 0;

	z-index: 2000;

	align-items: center;

	justify-content: center;

	background: rgba(255, 255, 255, 0.75);

}



#loader.booking-funnel-loader.is-active {

	display: flex !important;

}



/* Summary sidebar */

.booking-funnel-summary {

	position: relative;

}



@media (min-width: 992px) {

	.booking-funnel-summary {

		position: sticky;

		top: 88px;

	}

}



.booking-funnel-summary__media img {

	display: block;

	width: 100%;

	height: 180px;

	object-fit: cover;

}



.booking-funnel-summary__body {

	padding: 20px 18px 22px;

}



.booking-funnel-summary__body h2 {

	margin: 0 0 14px;

	color: var(--heading-color, #111111);

	font-size: 1.15rem;

	font-weight: 800;

	line-height: 1.35;

}



.booking-funnel-summary__meta {

	display: flex;

	align-items: flex-start;

	gap: 10px;

	margin: 0 0 10px;

	color: var(--text-color, #222222);

	font-size: 14px;

	line-height: 1.45;

}



.booking-funnel-summary__meta i {

	margin-top: 2px;

	color: var(--nav-green, #2351a4);

	width: 16px;

	text-align: center;

	flex-shrink: 0;

}



.booking-funnel-summary__totals {

	margin: 16px 0 14px;

	padding: 14px;

	border-radius: 10px;

	background: linear-gradient(135deg, #f4faf1 0%, #eef6ea 100%);

	border: 1px solid #dce9d6;

}



.booking-funnel-summary__price {

	display: flex;

	align-items: baseline;

	justify-content: space-between;

	gap: 12px;

	margin: 0;

}



.booking-funnel-summary__price + .booking-funnel-summary__price {

	margin-top: 8px;

	padding-top: 8px;

	border-top: 1px dashed #c9dcc0;

}



.booking-funnel-summary__price-label {

	color: var(--text-muted, #444444);

	font-size: 13px;

	font-weight: 600;

}



.booking-funnel-summary__price-value {

	color: var(--nav-green, #2351a4);

	font-size: 1.35rem;

	font-weight: 800;

	line-height: 1.1;

}



.booking-funnel-summary__price-value--muted {

	color: var(--heading-color, #111111);

	font-size: 1.05rem;

}



.booking-funnel-discounts {

	margin-top: 14px;

	padding-top: 14px;

	border-top: 1px solid #edf1f4;

}



.booking-funnel-discounts h3 {

	margin: 0 0 10px;

	color: var(--heading-color, #111111);

	font-size: 14px;

	font-weight: 700;

	text-transform: uppercase;

	letter-spacing: 0.03em;

}



.booking-funnel-discounts ul {

	list-style: none;

	margin: 0;

	padding: 0;

}



.booking-funnel-discounts li {

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 10px;

	padding: 8px 0;

	border-bottom: 1px solid #f0f3f6;

	color: var(--text-color, #222222);

	font-size: 13px;

}



.booking-funnel-discounts li:last-child {

	border-bottom: 0;

}



.booking-funnel-discounts li span:last-child {

	font-weight: 700;

	color: var(--nav-green, #2351a4);

}



.booking-funnel-summary__secure {

	display: flex;

	align-items: center;

	gap: 8px;

	margin: 14px 0 0;

	padding: 10px 12px;

	border-radius: 8px;

	background: #f0f7fc;

	color: #1a4f72;

	font-size: 13px;

	font-weight: 600;

}



.booking-funnel-summary__secure i {

	color: var(--accent-blue, #0b71b8);

}



.booking-funnel-payments {

	margin-top: 16px;

	padding-top: 14px;

	border-top: 1px solid #edf1f4;

}



.booking-funnel-payments h3 {

	margin: 0 0 8px;

	font-size: 13px;

	font-weight: 700;

	text-transform: uppercase;

	letter-spacing: 0.03em;

	color: var(--heading-color, #111111);

}



.booking-funnel-payments p {

	margin: 0 0 10px;

	font-size: 13px;

	color: var(--text-muted, #444444);

}



.booking-funnel-payments__logos {

	display: flex;

	flex-wrap: wrap;

	gap: 8px;

	align-items: center;

}



.booking-funnel-payments__logos img,

.booking-funnel-payments > img {

	max-height: 36px;

	width: auto;

}



@media (max-width: 991.98px) {

	.booking-funnel-page {

		padding: 16px 0 40px;

	}



	.booking-funnel-card {

		padding: 18px 16px 22px;

	}



	.booking-funnel-summary__media img {

		height: 160px;

	}



	.booking-completion-option {

		padding-left: 48px;

	}

}



/* Card images — thumb-first loading with responsive cover */

.card-image {

	display: block;

	width: 100%;

	height: 100%;

	object-fit: cover;

}



.card-image.is-loaded {

	animation: card-image-fade-in 0.25s ease;

}



@keyframes card-image-fade-in {

	from { opacity: 0.82; }

	to { opacity: 1; }

}



.package .package-img .card-image,

.region-card .card-image.region-card__image,

.home-activity-card__media .card-image,

.blog.my-blog .content .card-image,

.blog-list-thumb .card-image,

.recent-post-thumb .card-image,

.team-member-card .team-img .card-image,

.destination-activity-thumb .card-image,

article .card .card-image,

.blog-post-nav__thumb .card-image,

.booking-funnel-summary__media .card-image {

	width: 100%;

	height: 100%;

	object-fit: cover;

}



.team-member-card .team-img {

	aspect-ratio: 1 / 1;

	overflow: hidden;

	border-radius: 12px;

}



.recent-post-thumb .card-image {

	width: 72px;

	height: 72px;

	border-radius: 10px;

}



.blog-post-nav__thumb .card-image {

	width: 100%;

	height: 100%;

	border-radius: 10px;

}



@media (max-width: 767.98px) {

	.package .package-img,

	.package .package-img > a {

		min-height: 200px;

	}



	.region-card {

		min-height: 180px;

	}



	.home-activity-card__media {

		min-height: 110px;

	}



	.team-member-card .team-img {

		max-width: 220px;

		margin-inline: auto;

	}



	article .card .card-image,

	.destination-activity-thumb .card-image {

		min-height: 180px;

	}

}



/* Header search — expandable field + AJAX suggestions */

.header-search {

	position: relative;

}



.header-search--expandable .header-search__trigger {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 42px;

	height: 38px;

	padding: 0;

	border: 1px solid #c8dceb;

	border-radius: 8px;

	background: #fff;

	color: #20465f;

	cursor: pointer;

	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;

}



.header-search--expandable .header-search__trigger:hover,

.header-search--expandable.is-open .header-search__trigger {

	background: #0b71b8;

	border-color: #0b71b8;

	color: #fff;

}



.header-search--expandable .header-search__panel {

	position: absolute;

	top: calc(100% + 8px);

	right: 0;

	width: min(420px, calc(100vw - 24px));

	z-index: 10060;

}



.header-search__field {

	display: flex;

	align-items: center;

	gap: 10px;

	margin: 0;

	padding: 8px 12px;

	border: 1px solid #dbe7ef;

	border-radius: 12px;

	background: #fff;

	box-shadow: 0 12px 28px rgba(15, 45, 66, 0.14);

}



.header-search__field > i {

	flex: 0 0 auto;

	color: #0b71b8;

	font-size: 15px;

}



.header-search__input {

	flex: 1 1 auto;

	min-width: 0;

	border: 0;

	background: transparent;

	color: #12334a;

	font-size: 15px;

	line-height: 1.4;

	padding: 4px 0;

	outline: none;

	box-shadow: none;

}



.header-search__input::placeholder {

	color: #6b7f8d;

	opacity: 1;

}



.header-search__close {

	flex: 0 0 auto;

	width: 28px;

	height: 28px;

	border: 0;

	border-radius: 50%;

	background: #edf2f5;

	color: #466071;

	font-size: 18px;

	line-height: 1;

	cursor: pointer;

}



.header-search__close:hover {

	background: #dce7ee;

	color: #12334a;

}



.header-search-results {

	display: none;

	position: absolute;

	left: 0;

	top: calc(100% + 7px);

	width: 100%;

	z-index: 10050;

	background: #fff;

	border: 1px solid #e3eaef;

	border-radius: 12px;

	overflow: hidden;

	max-height: min(55vh, 420px);

	overflow-y: auto;

	box-shadow: 0 12px 26px rgba(21, 45, 60, 0.14);

}



.header-search--expandable .header-search-results {

	position: static;

	margin-top: 8px;

}



.search-suggestion-group + .search-suggestion-group {

	border-top: 1px solid #edf2f5;

}



.search-suggestion-heading {

	padding: 9px 14px 5px;

	color: #668091;

	background: #f7fafc;

	font-size: 11px;

	font-weight: 700;

	letter-spacing: 0.07em;

	text-transform: uppercase;

}



.search-suggestion-item {

	display: flex;

	align-items: center;

	gap: 10px;

	padding: 10px 14px;

	color: #13334a;

	text-decoration: none;

	font-size: 14px;

	line-height: 1.3;

}



.search-suggestion-item__text {

	flex: 1 1 auto;

	min-width: 0;

}



.search-suggestion-item__type {

	flex: 0 0 auto;

	padding: 2px 8px;

	border-radius: 999px;

	background: #eef6fb;

	color: #0b71b8;

	font-size: 11px;

	font-weight: 700;

	line-height: 1.4;

	white-space: nowrap;

}



.search-suggestion-item i {

	width: 18px;

	text-align: center;

	color: #0b71b8;

	flex-shrink: 0;

}



.search-suggestion-item:hover,

.search-suggestion-item.is-active {

	background: #eaf6fb;

	color: #075989;

}



.search-suggestion-empty,

.search-suggestion-loading {

	padding: 15px;

	color: #637887;

	font-size: 14px;

	background: #fff;

}



.small-nav-wraper.search-results-open {

	z-index: 10050;

}



/* Mobile header — logo row */

.small-nav-wraper .small-nav {

	padding: 8px 0;

	background: #fff;

}



.small-nav-wraper .small-nav .container {

	padding-left: 12px;

	padding-right: 12px;

}



.small-nav-wraper .navbar-brand {

	color: #111 !important;

}



.small-nav-wraper .navbar-brand .cname span {

	color: #111 !important;

	font-weight: 700;

}



.small-nav-wraper .navbar-brand img {

	height: 45px;

	width: auto;

}



.small-nav-wraper .top-m-icon {

	display: flex;

	align-items: center;

	gap: 12px;

	flex-shrink: 0;

}



.small-nav-wraper .top-m-icon a {

	color: #111;

	font-size: 22px;

	line-height: 1;

	text-decoration: none;

}



/* Mobile header — green search + menu row */

.small-nav-wraper .small-nv-frm {

	display: flex;

	align-items: center;

	gap: 10px;

	padding: 9px 12px;

	background: var(--primary-color, #2351a4) !important;

}



.small-nav-wraper .small-nv-frm .navbar-toggler {

	flex: 0 0 auto;

	margin: 0;

	padding: 8px 4px 8px 8px;

	border: 0;

	border-radius: 0;

	background: transparent;

	box-shadow: none !important;

}



.small-nav-wraper .small-nv-frm .navbar-toggler:focus {

	box-shadow: none !important;

	outline: none;

}



.small-nav-wraper .small-nv-frm .navbar-toggler span {

	color: #fff;

	display: flex;

	align-items: center;

	font-weight: 600;

	font-size: 15px;

	white-space: nowrap;

}



.small-nav-wraper .small-nv-frm .navbar-toggler span i {

	margin-right: 8px;

}



.small-nav-wraper form.seach-form.header-search--mobile,

.small-nav-wraper .seach-form.header-search--mobile {

	flex: 1 1 auto;

	min-width: 0;

	width: auto !important;

	max-width: none;

	padding: 0 12px !important;

	height: 46px;

	background: #f3f8fb !important;

	border: 1px solid #dbe7ef !important;

	border-radius: 999px !important;

	display: flex !important;

	align-items: center;

	position: relative;

}



.small-nav-wraper .seach-form.header-search--mobile > i {

	color: #0b71b8;

	font-size: 17px;

	flex: 0 0 auto;

}



.small-nav-wraper .seach-form.header-search--mobile .header-search__input,

.small-nav-wraper .seach-form.header-search--mobile .form-control {

	flex: 1 1 auto;

	min-width: 0;

	width: 100% !important;

	background: transparent !important;

	border: 0 !important;

	border-radius: 0 !important;

	margin-left: 8px;

	margin-right: 4px;

	padding: 0 !important;

	color: #12334a !important;

	font-size: 15px;

	box-shadow: none !important;

	outline: none;

}



.small-nav-wraper .seach-form.header-search--mobile .header-search__input:focus,

.small-nav-wraper .seach-form.header-search--mobile .form-control:focus {

	background: transparent !important;

	color: #12334a !important;

	box-shadow: none !important;

}



.small-nav-wraper .seach-form.header-search--mobile .header-search__input::placeholder,

.small-nav-wraper .seach-form.header-search--mobile .form-control::placeholder {

	color: #6b7f8d !important;

	opacity: 1;

}



.small-nav-wraper .seach-form.header-search--mobile .header-search-results {

	left: 0;

	right: 0;

	width: auto;

	top: calc(100% + 7px);

}



@media (max-width: 991.98px) {

	.small-nav-wraper .small-nv-frm {

		padding: 9px max(calc((100vw - 720px) / 2), 12px);

	}



	.small-nav-wraper .small-nav .container {

		padding-left: max(calc((100vw - 720px) / 2), 12px);

		padding-right: max(calc((100vw - 720px) / 2), 12px);

	}

}



@media (max-width: 575.98px) {

	.small-nav-wraper .navbar-brand .cname span {

		font-size: 15px;

	}



	.small-nav-wraper .top-m-icon a {

		font-size: 20px;

	}



	.small-nav-wraper .small-nv-frm .navbar-toggler span {

		font-size: 14px;

	}

}



/* Mobile hamburger drawer */

@media (max-width: 991.98px) {

	#nav-side {

		position: fixed !important;

		top: 0 !important;

		left: 0 !important;

		right: 0 !important;

		width: 100% !important;

		height: 100vh !important;

		z-index: 99999 !important;

		background: rgba(0, 0, 0, 0.42) !important;

		opacity: 0;

		visibility: hidden;

		pointer-events: none;

		transition: opacity 0.3s ease, visibility 0.3s ease;

	}



	#nav-side.is-open {

		opacity: 1 !important;

		visibility: visible !important;

		pointer-events: auto !important;

	}



	#n-side {

		width: min(88vw, 420px) !important;

		max-width: 420px;

		height: 100% !important;

		overflow-x: hidden;

		overflow-y: auto;

		background: #fff !important;

		box-shadow: 4px 0 18px rgba(0, 0, 0, 0.16);

		transform: translateX(-100%);

		transition: transform 0.3s ease;

		-webkit-overflow-scrolling: touch;

	}



	#nav-side.is-open #n-side {

		transform: translateX(0) !important;

	}



	body.mobile-nav-open,

	body.menu-open {

		overflow: hidden !important;

	}



	#nav-side .accordion-button {

		background: #fff;

		box-shadow: none;

	}



	#nav-side .accordion-button:not(.collapsed) {

		background: #f4faf1;

		color: var(--primary-color, #2351a4);

	}



	.mobile-nav-accordion-header {

		display: flex;

		align-items: stretch;

		gap: 0;

		padding: 0;

		margin: 0;

		background: #fff;

		border-bottom: 1px solid #e8ecef;

	}



	.mobile-nav-accordion-header__link {

		flex: 1 1 auto;

		display: flex;

		align-items: center;

		padding: 14px 16px;

		font-size: 16px;

		font-weight: 700;

		line-height: 1.3;

		color: #0f1f3d;

		text-decoration: none;

		min-width: 0;

	}



	.mobile-nav-accordion-header__link:hover,

	.mobile-nav-accordion-header__link:focus {

		color: var(--primary-color, #2351a4);

		text-decoration: none;

	}



	.mobile-nav-accordion-header__toggle {

		flex: 0 0 auto;

		display: inline-flex;

		align-items: center;

		justify-content: center;

		width: 44px;

		min-width: 44px;

		margin: 8px 12px 8px 0;

		padding: 0;

		border: 1px solid #d5dbe3;

		border-radius: 8px;

		background: #fff;

		color: #0f1f3d;

		box-shadow: none;

		cursor: pointer;

	}



	.mobile-nav-accordion-header__toggle:hover,

	.mobile-nav-accordion-header__toggle:focus {

		border-color: var(--primary-color, #2351a4);

		color: var(--primary-color, #2351a4);

		outline: none;

	}



	.mobile-nav-accordion-header__toggle:not(.collapsed) {

		border-color: var(--primary-color, #2351a4);

		color: var(--primary-color, #2351a4);

		background: #f4faf1;

	}



	.mobile-nav-accordion-header__icon {

		font-size: 14px;

		line-height: 1;

		pointer-events: none;

	}



	.mobile-nav-accordion-header__icon--minus {

		display: none;

	}



	.mobile-nav-accordion-header__toggle:not(.collapsed) .mobile-nav-accordion-header__icon--plus {

		display: none;

	}



	.mobile-nav-accordion-header__toggle:not(.collapsed) .mobile-nav-accordion-header__icon--minus {

		display: inline-block;

	}



	#nav-side .accordion-item {

		border: 0;

	}



	#nav-side .accordion-body {

		padding: 0;

	}



	#nav-side .accordion-body > li > a.dropdown-item,

	#nav-side .nav-link {

		padding: 12px 16px 12px 24px;

		font-weight: 600;

		color: #0f1f3d;

		border-bottom: 1px solid #eef1f4;

	}



	#nav-side .accordion-body .accordion-body > li > a.dropdown-item {

		padding-left: 36px;

	}



	#nav-side .accordion-body .accordion-body .accordion-body > li > a.dropdown-item {

		padding-left: 48px;

	}

}



@media (max-width: 999.98px) {

	.top-header .far-right-section {

		display: none !important;

	}

}



@media (min-width: 1000px) {

	.small-nav-wraper .header-search--mobile {

		display: none !important;

	}



	.far-right-section {

		display: flex;

		align-items: center;

		justify-content: flex-end;

	}

}



/* Trip enquiry + review modals */

.trip-enquiry-modal .modal-content,

.trip-review-modal .modal-content {

	border: 0;

	border-radius: 16px;

	overflow: hidden;

	box-shadow: 0 24px 48px rgba(15, 45, 66, 0.18);

}



.trip-enquiry-modal .modal-header,

.trip-review-modal .modal-header {

	padding: 20px 22px 14px;

	border-bottom: 1px solid #e8eef2;

	background: linear-gradient(180deg, #f8fbf6 0%, #fff 100%);

}



.trip-enquiry-modal__eyebrow,

.trip-review-modal__eyebrow {

	display: block;

	margin-bottom: 4px;

	color: var(--nav-green, #2351a4);

	font-size: 11px;

	font-weight: 700;

	letter-spacing: 0.1em;

	text-transform: uppercase;

}



.trip-enquiry-modal__head .modal-title,

.trip-review-modal__head .modal-title {

	color: #12334a;

	font-weight: 800;

}



.trip-enquiry-modal .modal-body,

.trip-review-modal .modal-body {

	padding: 18px 22px 8px;

}



.trip-enquiry-modal__lead,

.trip-review-modal__lead {

	margin: 0 0 16px;

	color: #5d7383;

	font-size: 14px;

	line-height: 1.55;

}



.trip-enquiry-modal .form-label,

.trip-review-modal .form-label {

	margin-bottom: 6px;

	color: #12334a;

	font-size: 0.9rem;

	font-weight: 700;

}



.trip-enquiry-modal .form-control,

.trip-review-modal .form-control {

	min-height: 44px;

	border: 1px solid #d5e2ea;

	border-radius: 10px;

	padding: 10px 14px;

	color: #12334a;

	background: #fbfdff;

	box-shadow: none;

}



.trip-enquiry-modal .form-control:focus,

.trip-review-modal .form-control:focus {

	border-color: var(--accent-blue, #0b71b8);

	box-shadow: 0 0 0 3px rgba(11, 113, 184, 0.14);

}



.trip-enquiry-modal .error,

.trip-review-modal .error {

	margin-top: 4px;

	color: #c0392b;

	font-size: 0.82rem;

	min-height: 0;

}



.trip-enquiry-modal__footer,

.trip-review-modal__footer {

	padding: 14px 22px 18px;

	border-top: 1px solid #e8eef2;

	background: #f9fbfc;

	gap: 10px;

}



.trip-enquiry-modal__submit,

.trip-review-modal__submit {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	min-height: 44px;

	padding: 0 20px;

	border: 0;

	border-radius: 999px;

	background: var(--nav-green, #2351a4);

	font-weight: 700;

	box-shadow: 0 8px 20px rgba(33, 155, 3, 0.24);

}



.trip-enquiry-modal__submit:hover,

.trip-enquiry-modal__submit:focus,

.trip-review-modal__submit:hover,

.trip-review-modal__submit:focus {

	background: var(--brand-green-dark, #153877);

}



.trip-enquiry-modal__response,

.trip-review-modal__response {

	margin-top: 12px;

	font-size: 14px;

}



.trip-review-modal__optional {

	color: #6b7f8d;

	font-weight: 500;

}



.trip-review-modal__photo {

	margin-bottom: 16px;

	padding: 14px;

	border: 1px dashed #cfdce6;

	border-radius: 12px;

	background: #f7fafc;

}



.trip-review-modal__photo-actions {

	display: flex;

	flex-wrap: wrap;

	gap: 8px;

}



.trip-review-modal__photo-btn {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	border: 1px solid #c8d6e0;

	border-radius: 999px;

	background: #fff;

	color: #12334a;

	font-weight: 600;

}



.trip-review-modal__photo-btn:hover {

	background: #eef6fb;

	border-color: var(--accent-blue, #0b71b8);

	color: var(--accent-blue, #0b71b8);

}



.trip-review-modal__crop {

	margin-top: 12px;

}



.trip-review-modal__confirm-photo {

	margin-top: 10px;

	border-radius: 999px;

}



.trip-review-modal__rating {

	padding: 8px 0 2px;

}



.trip-review-modal__rating .caption {

	margin-left: 8px;

	color: #5d7383;

	font-size: 13px;

}



.trip-review-modal__rating .rating-container .empty-stars,

.trip-review-modal__rating .rating-container .filled-stars {

	font-size: 22px;

}



#trip-reviews .btn-outline-primary[href="#reviews"],

#trip-reviews .btn-outline-primary[data-bs-target="#reviews"] {

	display: inline-flex;

	align-items: center;

	gap: 8px;

	padding: 10px 18px;

	border: 1px solid var(--nav-green, #2351a4);

	border-radius: 999px;

	color: var(--nav-green, #2351a4);

	font-weight: 700;

	background: #fff;

}



#trip-reviews .btn-outline-primary[href="#reviews"]:hover,

#trip-reviews .btn-outline-primary[data-bs-target="#reviews"]:hover {

	background: var(--nav-green, #2351a4);

	color: #fff;

}



@media (max-width: 575.98px) {

	.trip-enquiry-modal .modal-header,

	.trip-review-modal .modal-header,

	.trip-enquiry-modal .modal-body,

	.trip-review-modal .modal-body,

	.trip-enquiry-modal__footer,

	.trip-review-modal__footer {

		padding-left: 16px;

		padding-right: 16px;

	}



	.trip-enquiry-modal__footer,

	.trip-review-modal__footer {

		flex-direction: column-reverse;

		align-items: stretch;

	}



	.trip-enquiry-modal__footer .btn,

	.trip-review-modal__footer .btn {

		width: 100%;

		justify-content: center;

	}

}



/* =============================================================================

   Uniform box / card corner radius (Appearance → card_border_radius)

   ============================================================================= */

.package,

.region-card,

.home-activity-card,

.blog.my-blog .blog-list-card,

.blog.my-blog .content,

.blog.my-blog .content.blog-list-card,

.taxonomy-intro-card,

.activity-intro,

.about-us .content,

.dlist,

.destination-content,

.destination-content-wrap .destination-activity-card,

article > .container > .row > [class*="col-"] > .row > [class*="col-"] > .card,

.blog-list-card,

.blog-rec-trips,

.blog-rec-trip-card,

.trip-cost-section .cost-list-card,

.trip-cost-section .cost-rich-content ul li,

.team-member-card .team-img,

.booking-funnel-card,

.contact-info-card,

.contact-form-card,

.contact-hero__brand-card-inner,

.trip-planner-card,

.sidebar-price-card,

.profile-sidebar,

.info-box,

.article-toc,

.blog-sidebar .widget,

.blog-details .search-widget,

.blog-details .category-widget,

.blog-details .side-blog,

.blog-post-nav__thumb,

.recent-post-thumb .card-image,

.blog-post-nav__thumb .card-image,

.welcome .wel-search,

.icon-all-top .all-icon-detail .content .cont-1,

.pack-details .side-section,

.blog-post-cta,

.blog-post-nav__card,

.modal-content {

	border-radius: var(--card-radius, 12px) !important;

}



/* Image-overlay card titles must stay white on dark scrims */

.region-card__title,

.region-card:hover .region-card__title {

	color: #fff !important;

}

