/* Tour Search Engine v2 — frontend
 * Rang badalne ke liye sirf ye variables override karein (Elementor "Colours" section yahi karta hai).
 */
:root {
	--tse-accent: #1f6f5c;
	--tse-accent-contrast: #fff;
	--tse-text: #1d2327;
	--tse-muted: #5f6b73;
	--tse-line: #d9dfe3;
	--tse-surface: #fff;
	--tse-soft: #f3f6f5;
	--tse-radius: 10px;
	--tse-gap: 24px;
	--tse-columns: 3;
	--tse-star: #f2b01e;
	--tse-yes: #1a7f4b;
	--tse-no: #c0392b;
	--tse-fill: var(--tse-accent);
	--tse-track: var(--tse-line);
}

.tse-listing, .tse-filter, .tse-active, .tse-count, .tse-terms-grid, .tse-enquiry,
.tse-facts, .tse-itinerary, .tse-faqs, .tse-price-box, .tse-list { color: var(--tse-text); box-sizing: border-box; }
.tse-listing *, .tse-filter *, .tse-enquiry *, .tse-terms-grid * { box-sizing: border-box; }

/* ---------- Basics ---------- */
.tse-label, .tse-filter-label { display: block; margin: 0 0 8px; font-size: .9em; font-weight: 600; color: var(--tse-text); }
.tse-input {
	display: block; width: 100%; min-height: 44px; padding: 10px 12px;
	font: inherit; color: var(--tse-text); background: var(--tse-surface);
	border: 1px solid var(--tse-line); border-radius: calc(var(--tse-radius) * .6);
}
.tse-input:focus { outline: 2px solid var(--tse-accent); outline-offset: 1px; border-color: var(--tse-accent); }
select.tse-input { appearance: auto; }

.tse-button {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 10px 22px; border: 1px solid transparent; cursor: pointer;
	font: inherit; font-weight: 600; line-height: 1.2; text-decoration: none; text-align: center;
	color: var(--tse-accent-contrast); background: var(--tse-accent);
	border-radius: calc(var(--tse-radius) * .6);
	transition: filter .15s ease, background-color .15s ease;
}
.tse-button:hover { filter: brightness(1.08); color: var(--tse-accent-contrast); }
.tse-button:focus-visible { outline: 2px solid var(--tse-text); outline-offset: 2px; }
.tse-button--reset { color: var(--tse-accent); background: transparent; border-color: var(--tse-line); }
.tse-button--reset:hover { color: var(--tse-accent); background: var(--tse-soft); filter: none; }
.tse-button svg { width: 1em; height: 1em; fill: currentColor; }

.tse-notice { padding: 12px; background: #fff8e5; border-left: 4px solid #dba617; }

/* ---------- Grid + listing ---------- */
.tse-grid { display: grid; grid-template-columns: repeat(var(--tse-columns), minmax(0, 1fr)); gap: var(--tse-gap); }
.tse-terms-grid { grid-template-columns: repeat(var(--tse-term-columns, 4), minmax(0, 1fr)); }
@media (max-width: 1024px) { .tse-grid, .tse-terms-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .tse-grid { grid-template-columns: 1fr; } }
.tse-item { min-width: 0; }
.tse-equal-yes .tse-item { display: flex; flex-direction: column; }
.tse-equal-yes .tse-item > * { flex: 1 1 auto; }

.tse-listing { position: relative; }
.tse-listing.is-loading [data-tse-items] { opacity: .45; pointer-events: none; transition: opacity .15s ease; }
.tse-listing.is-loading::after {
	content: ""; position: absolute; top: 60px; left: 50%; width: 34px; height: 34px; margin-left: -17px;
	border: 3px solid var(--tse-line); border-top-color: var(--tse-accent); border-radius: 50%;
	animation: tse-spin .7s linear infinite;
}
@keyframes tse-spin { to { transform: rotate(360deg); } }
.tse-empty { padding: 40px 20px; text-align: center; background: var(--tse-soft); border-radius: var(--tse-radius); }
.tse-empty p { margin: 0; }

/* ---------- Built-in card ---------- */
.tse-card {
	display: flex; flex-direction: column; height: 100%; overflow: hidden;
	background: var(--tse-surface); border: 1px solid var(--tse-line); border-radius: var(--tse-radius);
	transition: box-shadow .2s ease;
}
.tse-card:hover { box-shadow: 0 10px 28px rgba(16, 24, 32, .1); }
.tse-card-media { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--tse-soft); }
.tse-card-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
.tse-card:hover .tse-card-img { transform: scale(1.04); }
.tse-card-img--empty { display: block; width: 100%; height: 100%; }
.tse-badges { position: absolute; top: 12px; left: 12px; display: flex; gap: 6px; z-index: 2; }
.tse-badge { padding: 4px 10px; font-size: .75em; font-weight: 700; line-height: 1.3; border-radius: 999px; color: #fff; }
.tse-badge--featured { background: var(--tse-accent); color: var(--tse-accent-contrast); }
.tse-badge--sale { background: #c0392b; }
.tse-card-duration {
	position: absolute; right: 12px; bottom: 12px; z-index: 2; padding: 4px 10px;
	font-size: .8em; font-weight: 600; color: var(--tse-text); background: rgba(255, 255, 255, .93); border-radius: 6px;
}
.tse-card-body { display: flex; flex-direction: column; flex: 1; gap: 8px; padding: 16px 18px 18px; }
.tse-card-meta { margin: 0; font-size: .85em; color: var(--tse-muted); }
.tse-card-title { margin: 0; font-size: 1.1em; line-height: 1.3; }
.tse-card-title a { color: inherit; text-decoration: none; }
.tse-card-title a:hover { color: var(--tse-accent); }
.tse-card-rating { display: flex; align-items: center; gap: 6px; margin: 0; font-size: .85em; font-weight: 600; }
.tse-card-reviews { color: var(--tse-muted); font-weight: 400; }
.tse-card-excerpt { margin: 0; font-size: .9em; color: var(--tse-muted); }
.tse-card-footer {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px;
	margin-top: auto; padding-top: 12px; border-top: 1px solid var(--tse-line);
}
.tse-card-price { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
.tse-card-price-prefix { font-size: .8em; color: var(--tse-muted); }
.tse-card-price del { font-size: .85em; color: var(--tse-muted); }
.tse-card-price strong { font-size: 1.2em; color: var(--tse-text); }
.tse-card-actions { display: flex; align-items: center; gap: 12px; }
.tse-card-wa { font-size: .9em; font-weight: 600; color: #128c4a; }
.tse-card-button { min-height: 40px; padding: 8px 16px; font-size: .9em; }

/* Horizontal (list) layout */
.tse-cards-horizontal .tse-card { flex-direction: row; }
.tse-cards-horizontal .tse-card-media { flex: 0 0 38%; aspect-ratio: auto; min-height: 210px; }
@media (max-width: 640px) {
	.tse-cards-horizontal .tse-card { flex-direction: column; }
	.tse-cards-horizontal .tse-card-media { flex-basis: auto; aspect-ratio: 4 / 3; min-height: 0; }
}

/* Overlay layout */
.tse-cards-overlay .tse-card { position: relative; min-height: 360px; border: 0; color: #fff; }
.tse-cards-overlay .tse-card-media { position: absolute; inset: 0; aspect-ratio: auto; }
.tse-cards-overlay .tse-card-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, .78) 100%); }
.tse-cards-overlay .tse-card-body { position: relative; z-index: 2; margin-top: auto; flex: 0 0 auto; pointer-events: none; }
.tse-cards-overlay .tse-card-body a { pointer-events: auto; }
.tse-cards-overlay .tse-card-meta, .tse-cards-overlay .tse-card-excerpt, .tse-cards-overlay .tse-card-reviews,
.tse-cards-overlay .tse-card-price-prefix, .tse-cards-overlay .tse-card-price del { color: rgba(255, 255, 255, .85); }
.tse-cards-overlay .tse-card-title, .tse-cards-overlay .tse-card-price strong { color: #fff; }
.tse-cards-overlay .tse-card-footer { border-top-color: rgba(255, 255, 255, .25); }

/* Stars */
.tse-stars { position: relative; display: inline-block; width: 5.2em; height: 1em; line-height: 1; vertical-align: middle; }
.tse-stars::before, .tse-stars-fill::before { content: "★★★★★"; position: absolute; left: 0; top: 0; letter-spacing: .04em; white-space: nowrap; }
.tse-stars::before { color: var(--tse-line); }
.tse-stars-fill { position: absolute; left: 0; top: 0; height: 100%; overflow: hidden; }
.tse-stars-fill::before { color: var(--tse-star); }

/* ---------- Pagination ---------- */
.tse-pagination { margin-top: 28px; text-align: center; }
.tse-pagination:empty { display: none; }
.tse-pages { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 0; padding: 0; list-style: none; }
.tse-page {
	display: inline-flex; align-items: center; justify-content: center; min-width: 42px; height: 42px; padding: 0 10px;
	color: var(--tse-text); background: var(--tse-surface); border: 1px solid var(--tse-line);
	border-radius: calc(var(--tse-radius) * .6); text-decoration: none; font-weight: 600;
}
a.tse-page:hover { border-color: var(--tse-accent); color: var(--tse-accent); }
.tse-page.is-current { color: var(--tse-accent-contrast); background: var(--tse-accent); border-color: var(--tse-accent); }
.tse-page--gap { border-color: transparent; background: none; }
.tse-page:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-load-more.is-busy { opacity: .6; pointer-events: none; }

/* ---------- Filters ---------- */
.tse-filter { margin: 0; }
.tse-filter-toggle {
	display: flex; width: 100%; align-items: center; justify-content: space-between;
	padding: 0; background: none; border: 0; cursor: pointer; font: inherit; font-weight: 600; text-align: left; color: var(--tse-text);
}
.tse-filter-toggle::after { content: ""; width: 8px; height: 8px; margin-right: 4px; border: solid currentColor; border-width: 0 2px 2px 0; transform: rotate(45deg); transition: transform .2s ease; }
.tse-filter.is-collapsed .tse-filter-toggle::after { transform: rotate(-135deg); }
.tse-filter.is-collapsed .tse-filter-body { display: none; }
.tse-filter-toggle:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }

.tse-opts { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.tse-opt { margin: 0; }
.tse-opt[hidden] { display: none; }
.tse-opt label { display: flex; align-items: center; gap: 8px; cursor: pointer; }
.tse-opts--list input { width: 17px; height: 17px; margin: 0; flex: none; accent-color: var(--tse-accent); }
.tse-opt--d1 { padding-left: 22px; }
.tse-opt--d2 { padding-left: 44px; }
.tse-opt--d3, .tse-opt--d4 { padding-left: 66px; }
.tse-opt-count {
	margin-left: auto; padding: 1px 8px; font-size: .75em; font-weight: 600; line-height: 1.6;
	color: var(--tse-muted); background: var(--tse-soft); border-radius: 999px;
}
.tse-opts-inline-yes .tse-opts--list { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.tse-opts-inline-yes .tse-opt-count { margin-left: 4px; }

/* Buttons / chips */
.tse-opts--buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.tse-opts--buttons .tse-opt--d1, .tse-opts--buttons .tse-opt--d2, .tse-opts--buttons .tse-opt--d3, .tse-opts--buttons .tse-opt--d4 { padding-left: 0; }
.tse-opts--buttons label { position: relative; gap: 0; }
.tse-opts--buttons input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.tse-opts--buttons .tse-opt-text {
	display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; font-size: .9em; font-weight: 500;
	background: var(--tse-surface); border: 1px solid var(--tse-line); border-radius: 999px;
	transition: background-color .15s ease, border-color .15s ease;
}
.tse-opts--buttons label:hover .tse-opt-text { border-color: var(--tse-accent); }
.tse-opts--buttons input:checked + .tse-opt-text { color: var(--tse-accent-contrast); background: var(--tse-accent); border-color: var(--tse-accent); }
.tse-opts--buttons input:focus-visible + .tse-opt-text { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-opts--buttons .tse-opt-count { margin-left: 6px; }
.tse-opts--buttons input:checked ~ .tse-opt-count { background: var(--tse-soft); }

.tse-show-more { margin-top: 8px; padding: 0; background: none; border: 0; cursor: pointer; font: inherit; font-size: .9em; font-weight: 600; color: var(--tse-accent); }
.tse-show-more:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }

/* Search */
.tse-search-field { position: relative; }
.tse-search-field .tse-input { padding-left: 38px; }
.tse-search-field::before {
	content: ""; position: absolute; left: 13px; top: 50%; width: 12px; height: 12px; margin-top: -8px;
	border: 2px solid var(--tse-muted); border-radius: 50%; pointer-events: none;
}
.tse-search-field::after {
	content: ""; position: absolute; left: 24px; top: 50%; width: 2px; height: 7px; margin-top: 3px;
	background: var(--tse-muted); transform: rotate(-45deg); pointer-events: none;
}

/* Range slider */
.tse-range-track { --tse-track-h: 4px; --tse-thumb: 20px; --tse-thumb-bg: var(--tse-surface); position: relative; height: max(24px, var(--tse-thumb)); }
.tse-range-track::before, .tse-range-track::after { content: ""; position: absolute; top: 50%; height: var(--tse-track-h); transform: translateY(-50%); border-radius: 4px; }
.tse-range-track::before { left: 0; right: 0; background: var(--tse-track); }
.tse-range-track::after { left: var(--lo, 0%); right: calc(100% - var(--hi, 100%)); background: var(--tse-fill); }
.tse-range-track input[type=range] {
	position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 0; z-index: 2;
	background: none; pointer-events: none; -webkit-appearance: none; appearance: none;
}
.tse-range-track input[type=range]::-webkit-slider-runnable-track { background: none; }
.tse-range-track input[type=range]::-moz-range-track { background: none; }
.tse-range-track input[type=range]::-webkit-slider-thumb {
	-webkit-appearance: none; pointer-events: auto; width: var(--tse-thumb); height: var(--tse-thumb); cursor: grab;
	background: var(--tse-thumb-bg); border: 2px solid var(--tse-fill); border-radius: 50%; box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
}
.tse-range-track input[type=range]::-moz-range-thumb {
	pointer-events: auto; width: calc(var(--tse-thumb) - 4px); height: calc(var(--tse-thumb) - 4px); cursor: grab;
	background: var(--tse-thumb-bg); border: 2px solid var(--tse-fill); border-radius: 50%;
}
.tse-range-track input[type=range]:focus-visible::-webkit-slider-thumb { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-range-track input[type=range]:focus-visible::-moz-range-thumb { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-range-values { display: flex; justify-content: space-between; margin-top: 6px; font-size: .9em; font-weight: 600; }
.tse-range-inputs { display: flex; align-items: center; gap: 8px; }
.tse-range-inputs .tse-input { min-width: 0; }

/* Toggle */
.tse-toggle { position: relative; display: inline-flex; align-items: center; gap: 10px; cursor: pointer; }
.tse-toggle input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.tse-toggle-track { position: relative; flex: none; width: 42px; height: 24px; background: var(--tse-track); border-radius: 999px; transition: background-color .15s ease; }
.tse-toggle-track::after { content: ""; position: absolute; left: 3px; top: 3px; width: 18px; height: 18px; background: #fff; border-radius: 50%; box-shadow: 0 1px 2px rgba(0, 0, 0, .25); transition: transform .15s ease; }
.tse-toggle input:checked + .tse-toggle-track { background: var(--tse-fill); }
.tse-toggle input:checked + .tse-toggle-track::after { transform: translateX(18px); }
.tse-toggle input:focus-visible + .tse-toggle-track { outline: 2px solid var(--tse-accent); outline-offset: 2px; }

/* Active filters */
.tse-active { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.tse-active:empty { display: none; }
.tse-active-title { font-weight: 600; }
.tse-active-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.tse-chip-active {
	display: inline-flex; align-items: center; gap: 4px; padding: 6px 12px; font-size: .875em;
	color: var(--tse-text); background: var(--tse-soft); border-radius: 999px; text-decoration: none;
}
.tse-chip-active:hover { background: var(--tse-line); color: var(--tse-text); }
.tse-chip-key { color: var(--tse-muted); }
.tse-chip-x { margin-left: 2px; font-weight: 700; }
.tse-active-clear { font-size: .875em; font-weight: 600; color: var(--tse-accent); }
.tse-chip-active:focus-visible, .tse-active-clear:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }

.tse-count { margin: 0; color: var(--tse-muted); }
.tse-count:empty { display: none; }

/* ---------- Terms grid ---------- */
.tse-term-card { position: relative; display: flex; flex-direction: column; height: 100%; overflow: hidden; text-decoration: none; color: var(--tse-text); background: var(--tse-surface); border-radius: var(--tse-radius); }
.tse-term-media { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--tse-soft); }
.tse-term-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
.tse-term-card:hover .tse-term-media img { transform: scale(1.05); }
.tse-term-body { display: flex; flex-direction: column; gap: 2px; padding: 12px 4px; }
.tse-term-name { font-weight: 700; font-size: 1.05em; }
.tse-term-count { font-size: .85em; color: var(--tse-muted); }
.tse-terms-overlay .tse-term-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, .72) 100%); pointer-events: none; }
.tse-terms-overlay .tse-term-body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 16px; color: #fff; }
.tse-terms-overlay .tse-term-count { color: rgba(255, 255, 255, .85); }
.tse-term-card:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }

/* ---------- Single tour blocks ---------- */
.tse-price-box { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
.tse-price-prefix, .tse-price-suffix { font-size: .9em; color: var(--tse-muted); }
.tse-price-old { color: var(--tse-muted); }
.tse-price-now { font-size: 1.8em; font-weight: 700; line-height: 1.1; }
.tse-price-save { padding: 3px 10px; font-size: .8em; font-weight: 700; color: #fff; background: #c0392b; border-radius: 999px; }

.tse-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin: 0; }
.tse-fact { padding: 14px 16px; background: var(--tse-soft); border-radius: var(--tse-radius); }
.tse-fact dt { font-size: .8em; color: var(--tse-muted); margin: 0 0 4px; }
.tse-fact dd { margin: 0; font-weight: 600; }

.tse-itinerary { margin: 0; padding: 0; list-style: none; border-left: 2px solid var(--tse-line); }
.tse-day { position: relative; padding: 0 0 4px 22px; margin: 0; }
.tse-day::before { content: ""; position: absolute; left: -7px; top: 18px; width: 12px; height: 12px; background: var(--tse-surface); border: 2px solid var(--tse-accent); border-radius: 50%; }
.tse-day details { border-bottom: 1px solid var(--tse-line); }
.tse-day summary, .tse-faq summary { display: flex; gap: 12px; align-items: baseline; padding: 12px 0; cursor: pointer; list-style: none; font-weight: 600; }
.tse-day summary::-webkit-details-marker, .tse-faq summary::-webkit-details-marker { display: none; }
.tse-day summary::after, .tse-faq summary::after { content: "+"; margin-left: auto; font-weight: 700; color: var(--tse-muted); }
.tse-day details[open] summary::after, .tse-faq[open] summary::after { content: "–"; }
.tse-day summary:focus-visible, .tse-faq summary:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-day-num { flex: none; font-size: .8em; font-weight: 700; color: var(--tse-accent); }
.tse-day-body, .tse-faq-body { padding: 0 0 14px; color: var(--tse-muted); }
.tse-day-body p:last-child, .tse-faq-body p:last-child { margin-bottom: 0; }

.tse-faqs { display: grid; }
.tse-faq { border-bottom: 1px solid var(--tse-line); }

.tse-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.tse-list li { display: flex; gap: 10px; align-items: flex-start; }
.tse-list-icon { flex: none; position: relative; width: 18px; height: 18px; margin-top: 3px; border-radius: 50%; }
.tse-list--includes .tse-list-icon, .tse-list--highlights .tse-list-icon { background: #e3f3ea; background: color-mix(in srgb, var(--tse-yes) 14%, transparent); }
.tse-list--includes .tse-list-icon::after, .tse-list--highlights .tse-list-icon::after {
	content: ""; position: absolute; left: 6px; top: 3px; width: 5px; height: 9px;
	border: solid var(--tse-yes); border-width: 0 2px 2px 0; transform: rotate(45deg);
}
.tse-list--excludes .tse-list-icon { background: #fbe9e9; background: color-mix(in srgb, var(--tse-no) 14%, transparent); }
.tse-list--excludes .tse-list-icon::before, .tse-list--excludes .tse-list-icon::after { content: ""; position: absolute; left: 8px; top: 4px; width: 2px; height: 10px; background: var(--tse-no); }
.tse-list--excludes .tse-list-icon::before { transform: rotate(45deg); }
.tse-list--excludes .tse-list-icon::after { transform: rotate(-45deg); }

.tse-table-wrap { overflow-x: auto; }
.tse-vehicles { width: 100%; border-collapse: collapse; }
.tse-vehicles th, .tse-vehicles td { padding: 10px 12px; text-align: left; border-bottom: 1px solid var(--tse-line); }
.tse-vehicles th { font-size: .85em; font-weight: 600; color: var(--tse-muted); }
.tse-vehicles td:last-child { font-weight: 700; }

.tse-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.tse-gallery a { display: block; overflow: hidden; border-radius: calc(var(--tse-radius) * .8); }
.tse-gallery img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; transition: transform .3s ease; }
.tse-gallery a:hover img { transform: scale(1.04); }
@media (max-width: 640px) { .tse-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.tse-embed { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--tse-radius); background: var(--tse-soft); }
.tse-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.tse-terms { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.tse-terms a { display: inline-block; padding: 5px 12px; font-size: .875em; color: var(--tse-text); background: var(--tse-soft); border-radius: 999px; text-decoration: none; }
.tse-terms a:hover { background: var(--tse-line); }

.tse-field-out { display: flex; align-items: center; gap: 8px; }
.tse-field-out a { color: inherit; }
.tse-field-icon { display: inline-flex; line-height: 1; }
.tse-field-icon svg { width: 1em; height: 1em; fill: currentColor; }

/* ---------- Enquiry ---------- */
.tse-enquiry-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
.tse-enquiry .tse-field { margin: 0 0 14px; }
.tse-field--full { grid-column: 1 / -1; }
.tse-enquiry-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.tse-enquiry-msg { margin: 12px 0 0; font-weight: 600; }
.tse-enquiry-msg:empty { display: none; }
.tse-enquiry-msg.is-success { color: var(--tse-yes); }
.tse-enquiry-msg.is-error { color: var(--tse-no); }
.tse-hp { position: absolute; left: -9999px; }
@media (max-width: 640px) { .tse-enquiry-grid { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
	.tse-card, .tse-card-img, .tse-term-media img, .tse-gallery img, .tse-button,
	.tse-toggle-track, .tse-toggle-track::after, .tse-filter-toggle::after { transition: none !important; }
	.tse-card:hover .tse-card-img, .tse-term-card:hover .tse-term-media img, .tse-gallery a:hover img { transform: none; }
	.tse-listing.is-loading::after { animation-duration: 2s; }
}

/* =====================================================================
 * v2.1 — sab default hain; Elementor ke style controls inhe override karte hain
 * =================================================================== */

.tse-icon { display: inline-flex; align-items: center; justify-content: center; line-height: 1; flex: none; }
.tse-icon svg, .tse-button svg { width: 1em; height: 1em; fill: currentColor; }
.tse-icon-after .tse-button, .tse-icon-after .tse-book-btn { flex-direction: row-reverse; }
.tse-tour-title { margin: 0; }
.tse-tour-title a { color: inherit; text-decoration: none; }

/* ---------- Custom dropdown ---------- */
.tse-dd { position: relative; }
.tse-dd-toggle { display: flex; align-items: center; justify-content: space-between; gap: 10px; text-align: left; cursor: pointer; user-select: none; -webkit-user-select: none; }
.tse-dd-value { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tse-dd-value.is-placeholder { color: var(--tse-muted); }
.tse-dd-caret { display: block; flex: none; width: 8px; height: 8px; margin-top: -4px; border: solid currentColor; border-width: 0 2px 2px 0; transform: rotate(45deg); transition: transform .15s ease; }
.tse-dd.is-open .tse-dd-caret { transform: rotate(-135deg); margin-top: 4px; }
.tse-dd-panel {
	position: absolute; left: 0; top: calc(100% + 6px); z-index: 50; min-width: 100%; max-height: 320px; overflow: auto; padding: 8px;
	background: var(--tse-surface); border: 1px solid var(--tse-line); border-radius: calc(var(--tse-radius) * .6);
	box-shadow: 0 12px 32px rgba(16, 24, 32, .14);
}
.tse-dd-panel[hidden] { display: none; }
.tse-dd-panel .tse-opts { gap: 2px; }
.tse-dd-panel .tse-opt label { padding: 8px 10px; border-radius: 6px; }
.tse-dd-panel .tse-opt label:hover { background: var(--tse-soft); }
.tse-dd-panel .tse-opt label:has(input:checked) { background: var(--tse-soft); font-weight: 600; }
.tse-dd-panel .tse-opt--all { border-bottom: 1px solid var(--tse-line); margin-bottom: 4px; padding-bottom: 4px; }

/* ---------- Hero search ---------- */
.tse-hero { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; padding: 16px; background: var(--tse-surface); border-radius: var(--tse-radius); box-shadow: 0 16px 40px rgba(16, 24, 32, .12); }
.tse-hero-field { flex: 1 1 180px; min-width: 0; }
.tse-hero-submit { flex: 0 0 auto; }
.tse-hero-submit .tse-button { width: 100%; min-height: 48px; }
.tse-hero-stacked .tse-hero { flex-direction: column; align-items: stretch; }
.tse-hero-stacked .tse-hero-field, .tse-hero-stacked .tse-hero-submit { flex: 1 1 auto; max-width: none; }
.tse-hero .tse-filter-label { font-size: .8em; text-transform: uppercase; letter-spacing: .04em; color: var(--tse-muted); }
/* Layout per device: Elementor classes tse-hero-{row|stacked}, tse-hero-tablet-*, tse-hero-mobile-* */
.tse-hero-stacked .tse-hero-field, .tse-hero-stacked .tse-hero-submit { max-width: none !important; }
@media (max-width: 1024px) {
	.tse-hero-tablet-row .tse-hero { flex-direction: row; flex-wrap: wrap; align-items: flex-end; }
	.tse-hero-tablet-row .tse-hero-field { flex: 1 1 180px; }
	.tse-hero-tablet-row .tse-hero-submit { flex: 0 0 auto; }
	.tse-hero-tablet-stacked .tse-hero { flex-direction: column; align-items: stretch; }
	.tse-hero-tablet-stacked .tse-hero-field, .tse-hero-tablet-stacked .tse-hero-submit { flex: 1 1 auto; max-width: none !important; }
}
@media (max-width: 767px) {
	.tse-hero-mobile-row .tse-hero { flex-direction: row; flex-wrap: wrap; align-items: flex-end; }
	.tse-hero-mobile-row .tse-hero-field { flex: 1 1 140px; }
	.tse-hero-mobile-row .tse-hero-submit { flex: 0 0 auto; }
	.tse-hero-mobile-stacked .tse-hero { flex-direction: column; align-items: stretch; }
	.tse-hero-mobile-stacked .tse-hero-field, .tse-hero-mobile-stacked .tse-hero-submit { flex: 1 1 auto; max-width: none !important; }
}


/* ---------- Carousel ---------- */
.tse-carousel { --tse-spv: 3; --tse-slide-gap: 24px; position: relative; }
.tse-carousel-track {
	display: flex; gap: var(--tse-slide-gap); overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth;
	scrollbar-width: none; overscroll-behavior-x: contain; padding-bottom: 4px;
}
.tse-carousel-track::-webkit-scrollbar { display: none; }
.tse-carousel-track:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 4px; }
.tse-carousel-track > * { flex: 0 0 calc((100% - (var(--tse-spv) - 1) * var(--tse-slide-gap)) / var(--tse-spv)); min-width: 0; scroll-snap-align: start; }
.tse-carousel-btn {
	position: absolute; top: 50%; z-index: 3; display: inline-flex; align-items: center; justify-content: center;
	width: 44px; height: 44px; margin-top: -22px; padding: 0; border: 1px solid var(--tse-line); border-radius: 50%; cursor: pointer;
	font-size: 26px; line-height: 1; color: var(--tse-text); background: var(--tse-surface); box-shadow: 0 4px 14px rgba(16, 24, 32, .14);
	transition: background-color .15s ease, color .15s ease, opacity .15s ease;
}
.tse-carousel-btn:hover { background: var(--tse-accent); color: var(--tse-accent-contrast); border-color: var(--tse-accent); }
.tse-carousel-btn:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-carousel-btn:disabled { opacity: .35; cursor: default; }
.tse-carousel-prev { left: -14px; }
.tse-carousel-next { right: -14px; }
.tse-arrows-top .tse-carousel { padding-top: 56px; }
.tse-arrows-top .tse-carousel-btn { top: 0; margin-top: 0; }
.tse-arrows-top .tse-carousel-prev { left: auto; right: 54px; }
.tse-arrows-top .tse-carousel-next { right: 0; }
.tse-arrows-bottom .tse-carousel-nav { display: flex; justify-content: center; gap: 10px; margin-top: 16px; }
.tse-arrows-bottom .tse-carousel-btn { position: static; margin: 0; }
.tse-carousel.is-static .tse-carousel-nav, .tse-carousel.is-static .tse-carousel-dots { display: none; }
.tse-carousel-dots { display: flex; justify-content: center; gap: 8px; margin-top: 18px; }
.tse-carousel-dot { width: 9px; height: 9px; padding: 0; border: 0; border-radius: 999px; background: var(--tse-line); cursor: pointer; transition: width .2s ease, background-color .2s ease; }
.tse-carousel-dot.is-active { width: 24px; background: var(--tse-accent); }
.tse-carousel-dot:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
@media (max-width: 767px) { .tse-carousel { --tse-spv: 1.15; --tse-slide-gap: 14px; } .tse-carousel-prev { left: 4px; } .tse-carousel-next { right: 4px; } }
.tse-listing-carousel .tse-carousel-track > .tse-item { display: flex; flex-direction: column; }
.tse-listing-carousel .tse-carousel-track > .tse-item > * { flex: 1 1 auto; }

/* ---------- Badges ---------- */
.tse-badge-list { display: flex; flex-wrap: wrap; gap: 6px; }
.tse-badge-list .tse-badge { display: inline-block; }
.tse-badge--custom { background: #1d2327; color: #fff; }
.tse-badge--status-sold_out { background: #6b7280; color: #fff; }
.tse-badge--status-coming_soon { background: #dba617; color: #1d2327; }
.tse-badge--type, .tse-badge--duration { background: var(--tse-soft); color: var(--tse-text); }
.tse-card.is-sold_out .tse-card-img { filter: grayscale(.6); }

/* ---------- Price box ---------- */
.tse-price-main { display: inline-flex; flex-wrap: wrap; align-items: baseline; gap: 8px; }
.tse-price-box--stacked { flex-direction: column; align-items: flex-start; gap: 4px; }
.tse-price-child, .tse-price-note { font-size: .85em; color: var(--tse-muted); }
.tse-price-box--inline .tse-price-note { flex-basis: 100%; }

/* ---------- Facts ---------- */
.tse-fact { display: flex; align-items: flex-start; gap: 12px; }
.tse-fact-text { min-width: 0; }
.tse-fact-icon { flex: none; display: inline-flex; align-items: center; justify-content: center; font-size: 22px; color: var(--tse-accent); fill: var(--tse-accent); }
.tse-fact-icon svg { width: 1em; height: 1em; }
.tse-facts--icon-top .tse-fact { flex-direction: column; gap: 8px; }
.tse-facts--list { grid-template-columns: 1fr; }
.tse-facts--list .tse-fact { padding: 10px 0; background: none; border-bottom: 1px solid var(--tse-line); border-radius: 0; }
.tse-facts--inline { display: flex; flex-wrap: wrap; gap: 10px 24px; }
.tse-facts--inline .tse-fact { padding: 0; background: none; align-items: center; }

/* ---------- Gallery ---------- */
.tse-gallery-item { position: relative; display: block; overflow: hidden; border-radius: calc(var(--tse-radius) * .8); }
.tse-gallery-item img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; transition: transform .3s ease, filter .3s ease; }
.tse-gallery-caption { position: absolute; left: 0; right: 0; bottom: 0; padding: 8px 10px; font-size: .85em; color: #fff; background: linear-gradient(transparent, rgba(0, 0, 0, .7)); }
.tse-gallery--masonry { display: block; columns: 3; column-gap: 10px; }
.tse-gallery--masonry .tse-gallery-item { margin-bottom: 10px; break-inside: avoid; }
.tse-gallery--masonry .tse-gallery-item img { aspect-ratio: auto; }
.tse-gallery--featured { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.tse-gallery--featured .tse-gallery-item:first-child { grid-column: span 2; grid-row: span 2; }
.tse-gallery--featured .tse-gallery-item:first-child img { height: 100%; aspect-ratio: auto; }
.tse-gallery--carousel .tse-gallery-item img { aspect-ratio: 16 / 10; }

/* ---------- Toggle (+ / −) icon: itinerary, FAQ, accordion ---------- */
.tse-toggle-icon { position: relative; flex: none; width: 14px; height: 14px; margin-left: auto; color: var(--tse-muted); }
.tse-toggle-icon::before, .tse-toggle-icon::after { content: ""; position: absolute; left: 50%; top: 50%; background: currentColor; border-radius: 2px; transition: transform .2s ease; }
.tse-toggle-icon::before { width: 100%; height: 2px; transform: translate(-50%, -50%); }
.tse-toggle-icon::after { width: 2px; height: 100%; transform: translate(-50%, -50%); }
details[open] > summary .tse-toggle-icon::after { transform: translate(-50%, -50%) rotate(90deg); }
.tse-toggle-chevron .tse-toggle-icon::after { display: none; }
.tse-toggle-chevron .tse-toggle-icon::before { width: 8px; height: 8px; background: none; border: solid currentColor; border-width: 0 2px 2px 0; border-radius: 0; transform: translate(-50%, -70%) rotate(45deg); }
.tse-toggle-chevron details[open] > summary .tse-toggle-icon::before { transform: translate(-50%, -30%) rotate(-135deg); }
.tse-toggle-none .tse-toggle-icon { display: none; }
.tse-toggle-side-left .tse-acc-title { flex-direction: row-reverse; justify-content: flex-end; }
.tse-toggle-side-left .tse-toggle-icon { margin-left: 0; }
/* purane "+/–" text icons hata do jahan naya icon hai */
.tse-day summary::after, .tse-faq summary::after { content: none; }

/* ---------- Itinerary ---------- */
.tse-itinerary--accordion, .tse-itinerary--list { border-left: 0; }
.tse-itinerary--accordion .tse-day, .tse-itinerary--list .tse-day { padding-left: 0; }
.tse-itinerary--accordion .tse-day::before, .tse-itinerary--list .tse-day::before { display: none; }
.tse-itinerary--accordion { display: grid; gap: 10px; }
.tse-itinerary--accordion .tse-day { border: 1px solid var(--tse-line); border-radius: var(--tse-radius); padding: 0 16px; }
.tse-itinerary--accordion .tse-day details { border-bottom: 0; }
.tse-itinerary--timeline .tse-day:has(details[open])::before { background: var(--tse-accent); }
.tse-day-head { display: flex; gap: 12px; align-items: center; padding: 12px 0; font-weight: 600; }
.tse-day-num { padding: 2px 10px; background: var(--tse-soft); border-radius: 999px; white-space: nowrap; }
.tse-itinerary--list .tse-day { padding: 0 0 18px; margin-bottom: 18px; border-bottom: 1px solid var(--tse-line); }
.tse-day-img img { display: block; width: 100%; max-height: 320px; object-fit: cover; border-radius: calc(var(--tse-radius) * .8); margin-bottom: 12px; }
.tse-day-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 12px 0 0; padding: 0; list-style: none; font-size: .9em; }
.tse-day-meta-item { display: inline-flex; align-items: center; gap: 6px; color: var(--tse-text); }
.tse-day-meta-item .tse-icon { color: var(--tse-accent); }
.tse-day-meta-label { font-weight: 600; }

/* ---------- Lists ---------- */
.tse-list--things_to_carry .tse-list-icon, .tse-list--pickup_points .tse-list-icon, .tse-list--route_stops .tse-list-icon { background: var(--tse-soft); }
.tse-list--things_to_carry .tse-list-icon::after, .tse-list--pickup_points .tse-list-icon::after, .tse-list--route_stops .tse-list-icon::after {
	content: ""; position: absolute; left: 50%; top: 50%; width: 6px; height: 6px; margin: -3px 0 0 -3px; border-radius: 50%; background: var(--tse-accent);
}
.tse-list--custom-icon .tse-list-icon { background: none; width: auto; height: auto; margin-top: .2em; color: var(--tse-accent); }
.tse-list--custom-icon .tse-list-icon::before, .tse-list--custom-icon .tse-list-icon::after { display: none; }
.tse-list--custom-icon .tse-list-icon svg { width: 1em; height: 1em; fill: currentColor; }

/* ---------- Route ---------- */
.tse-route { --tse-route-line: var(--tse-line); --tse-route-w: 2px; --tse-route-style: solid; display: flex; margin: 0; padding: 0; list-style: none; }
.tse-route-stop { position: relative; display: flex; align-items: center; gap: 8px; margin: 0; }
.tse-route-dot { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; flex: none; width: 14px; height: 14px; border-radius: 50%; background: var(--tse-surface); border: 3px solid var(--tse-accent); color: var(--tse-accent); }
.tse-route-dot:not(:empty) { width: auto; height: auto; border: 0; background: none; }
.tse-route-stop.is-start .tse-route-dot:empty, .tse-route-stop.is-end .tse-route-dot:empty { background: var(--tse-accent); }
.tse-route-name { font-weight: 600; }
.tse-route--horizontal { flex-wrap: wrap; align-items: center; gap: 10px 0; }
.tse-route--horizontal .tse-route-stop:not(:last-child)::after { content: ""; display: block; width: 36px; margin: 0 10px; border-top: var(--tse-route-w) var(--tse-route-style) var(--tse-route-line); }
.tse-route--vertical { flex-direction: column; gap: 18px; }
.tse-route--vertical .tse-route-stop:not(:last-child)::after { content: ""; position: absolute; left: 6px; top: 16px; height: calc(100% + 6px); border-left: var(--tse-route-w) var(--tse-route-style) var(--tse-route-line); transform: translateX(-50%); margin-left: 1px; }
.tse-route-meta { margin: 10px 0 0; font-size: .9em; color: var(--tse-muted); }

/* ---------- Vehicles ---------- */
.tse-vehicles-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
@media (max-width: 1024px) { .tse-vehicles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .tse-vehicles-grid { grid-template-columns: 1fr; } }
.tse-vehicle { display: flex; flex-direction: column; overflow: hidden; background: var(--tse-surface); border: 1px solid var(--tse-line); border-radius: var(--tse-radius); transition: box-shadow .2s ease, transform .2s ease; }
.tse-vehicle:hover { box-shadow: 0 10px 26px rgba(16, 24, 32, .1); }
.tse-vehicle-img { background: var(--tse-soft); }
.tse-vehicle-img img { display: block; width: 100%; height: 160px; object-fit: contain; padding: 10px; }
.tse-vehicle-body { display: flex; flex-direction: column; flex: 1; gap: 8px; padding: 16px; }
.tse-vehicle-name { margin: 0; font-size: 1.05em; }
.tse-vehicle-specs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.tse-vehicle-spec { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; font-size: .82em; background: var(--tse-soft); border-radius: 999px; }
.tse-vehicle-spec .tse-icon { color: var(--tse-accent); }
.tse-vehicle-price { font-size: 1.25em; font-weight: 700; }
.tse-vehicle-note { margin: 0; font-size: .82em; color: var(--tse-muted); }
.tse-vehicle .tse-vehicle-btn { margin-top: auto; }
td .tse-vehicle-note { display: block; margin-top: 2px; }
td .tse-vehicle-btn { min-height: 36px; padding: 6px 14px; font-size: .85em; white-space: nowrap; }

/* ---------- Tables ---------- */
.tse-table { width: 100%; border-collapse: collapse; }
.tse-table th, .tse-table td { padding: 10px 12px; text-align: left; border-bottom: 1px solid var(--tse-line); vertical-align: middle; }
.tse-table th { font-size: .85em; font-weight: 600; color: var(--tse-muted); background: var(--tse-soft); }
.tse-pricing-amount { font-weight: 700; white-space: nowrap; }

/* ---------- Price cards ---------- */
.tse-price-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
@media (max-width: 767px) { .tse-price-cards { grid-template-columns: 1fr; } }
.tse-price-card { display: flex; flex-direction: column; gap: 8px; padding: 20px; text-align: center; background: var(--tse-surface); border: 1px solid var(--tse-line); border-radius: var(--tse-radius); transition: box-shadow .2s ease, transform .2s ease; }
.tse-price-card-title { margin: 0; font-size: 1.05em; }
.tse-price-card-desc { margin: 0; font-size: .88em; color: var(--tse-muted); }
.tse-price-card-price { margin-top: auto; font-size: 1.4em; font-weight: 700; color: var(--tse-accent); }

/* ---------- Departures ---------- */
.tse-departures { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.tse-departure { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; padding: 12px 16px; background: var(--tse-surface); border: 1px solid var(--tse-line); border-radius: calc(var(--tse-radius) * .8); }
.tse-departure .tse-icon { color: var(--tse-accent); }
.tse-departure-date { font-weight: 700; }
.tse-departure-seats { padding: 2px 10px; font-size: .82em; font-weight: 600; color: var(--tse-yes); background: var(--tse-soft); border-radius: 999px; }
.tse-departure.is-sold-out { opacity: .6; }
.tse-departure.is-sold-out .tse-departure-seats { color: var(--tse-no); }
.tse-departure-price { font-weight: 700; }
.tse-departure-note { font-size: .85em; color: var(--tse-muted); }
.tse-departure-btn { margin-left: auto; min-height: 36px; padding: 6px 16px; font-size: .88em; }
.tse-departures--cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tse-departures--cards .tse-departure { flex-direction: column; align-items: flex-start; }
.tse-departures--cards .tse-departure-btn { margin-left: 0; margin-top: auto; }
@media (max-width: 767px) { .tse-departures--cards { grid-template-columns: 1fr; } }

/* ---------- Tabs / accordion / policies ---------- */
.tse-tab-list { display: flex; flex-wrap: wrap; gap: 4px; border-bottom: 1px solid var(--tse-line); margin-bottom: 16px; }
.tse-tab { padding: 10px 16px; font: inherit; font-weight: 600; color: var(--tse-muted); background: none; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; cursor: pointer; transition: color .15s ease, border-color .15s ease; }
.tse-tab:hover { color: var(--tse-text); }
.tse-tab.is-active { color: var(--tse-accent); border-bottom-color: var(--tse-accent); }
.tse-tab:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-tab-panel > :first-child { margin-top: 0; }
.tse-tab-panel:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 4px; }
.tse-acc { border-bottom: 1px solid var(--tse-line); }
.tse-acc-title { display: flex; align-items: center; gap: 12px; padding: 14px 0; font-weight: 600; cursor: pointer; list-style: none; }
.tse-acc-title::-webkit-details-marker { display: none; }
.tse-acc-title:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-acc-body { padding: 0 0 14px; color: var(--tse-muted); }
.tse-acc-body > :last-child { margin-bottom: 0; }
.tse-policies--stacked { display: grid; gap: 20px; }
.tse-policy-title { margin: 0 0 8px; }
.tse-policy-body > :last-child { margin-bottom: 0; }

/* ---------- Reviews ---------- */
.tse-reviews-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 18px; }
.tse-reviews-score { font-size: 2em; font-weight: 700; line-height: 1; }
.tse-reviews-count { color: var(--tse-muted); }
.tse-reviews--grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.tse-reviews--list { display: grid; gap: 16px; }
@media (max-width: 767px) { .tse-reviews--grid { grid-template-columns: 1fr; } }
.tse-review { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 20px; background: var(--tse-surface); border: 1px solid var(--tse-line); border-radius: var(--tse-radius); }
.tse-review-text { margin: 0; padding: 0; border: 0; font-style: normal; color: var(--tse-text); }
.tse-review-text > :last-child { margin-bottom: 0; }
.tse-review-author { display: flex; align-items: center; gap: 10px; margin-top: auto; }
.tse-review-img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.tse-review-meta { display: flex; flex-direction: column; }
.tse-review-name { font-weight: 700; }
.tse-review-city { font-size: .85em; color: var(--tse-muted); }

/* ---------- Booking buttons ---------- */
.tse-book { display: flex; flex-wrap: wrap; gap: 10px; }
.tse-book--column { flex-direction: column; align-items: stretch; }
.tse-book-btn { gap: 8px; }
.tse-book-btn--call { background: #1d2327; color: #fff; }
.tse-book-btn--call:hover { color: #fff; }
.tse-book-btn--whatsapp { background: #25d366; color: #0b3d1f; }
.tse-book-btn--whatsapp:hover { color: #0b3d1f; }
.tse-book-soldout { flex-basis: 100%; padding: 10px 14px; font-weight: 600; color: var(--tse-no); background: var(--tse-soft); border-radius: calc(var(--tse-radius) * .6); }

/* ---------- Media / terms / field ---------- */
.tse-media-btn { gap: 8px; }
.tse-term { display: inline-block; padding: 5px 12px; font-size: .875em; color: var(--tse-text); background: var(--tse-soft); border-radius: 999px; text-decoration: none; transition: background-color .15s ease; }
a.tse-term:hover { background: var(--tse-line); color: var(--tse-text); }
.tse-terms a.tse-term { padding: 5px 12px; }
.tse-field-out { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.tse-field-icon { display: inline-flex; line-height: 1; color: var(--tse-accent); }
.tse-field-icon-after .tse-field-out { flex-direction: row-reverse; justify-content: flex-end; }
.tse-field-icon-top .tse-field-out { flex-direction: column; align-items: flex-start; }
.tse-field-label { font-weight: 600; }

/* Terms grid: text position over image */
.tse-terms-overlay .tse-term-body { top: 0; bottom: 0; justify-content: flex-end; }

@media (prefers-reduced-motion: reduce) {
	.tse-carousel-track { scroll-behavior: auto; }
	.tse-carousel-dot, .tse-dd-caret, .tse-toggle-icon::before, .tse-toggle-icon::after, .tse-vehicle, .tse-price-card { transition: none !important; }
}

/* Range filter jiska min = max ho (sab tours same value) — live site par chhupao */
.tse-filter:has(.tse-filter-empty) { display: none; }

/* ---------- v2.2: icon inside fields ---------- */
.tse-field-wrap { position: relative; }
.tse-field-icon {
	position: absolute; left: 14px; top: 50%; transform: translateY(-50%); z-index: 3;
	display: inline-flex; align-items: center; justify-content: center; line-height: 1;
	font-size: 16px; color: var(--tse-muted); pointer-events: none; transition: color .15s ease;
}
.tse-field-icon svg { width: 1em; height: 1em; fill: currentColor; }
.tse-has-icon .tse-input { padding-left: 42px; }
.tse-has-icon .tse-search-field::before, .tse-has-icon .tse-search-field::after { display: none; }
.tse-has-icon .tse-search-field .tse-input { padding-left: 42px; }
.tse-has-icon:focus-within .tse-field-icon { color: var(--tse-accent); }
/* Custom dropdown panel field ke neeche hi khule (icon wrapper ke andar bhi) */
.tse-has-icon .tse-dd-panel { z-index: 60; }

/* Dropdown prefix: "Sort (Newest)" */
.tse-dd-prefix { flex: none; font-weight: 600; }
.tse-dd-toggle .tse-dd-prefix + .tse-dd-value { flex: 0 1 auto; margin-right: auto; }
.tse-dd-value--brackets:not(.is-placeholder)::before { content: "("; }
.tse-dd-value--brackets:not(.is-placeholder)::after { content: ")"; }

.tse-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* =====================================================================
 * v2.2 Tour Toolbar: [Filters] [Search......] [count] [Sort ⌄] [☰ ▦]
 * =================================================================== */
.tse-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; box-sizing: border-box; }
.tse-tb-search { flex: 1 1 260px; min-width: 0; }
.tse-tb-search .tse-filter, .tse-tb-sort .tse-filter { margin: 0; }
.tse-tb-search .tse-input { border-radius: 999px; background: var(--tse-soft); border-color: transparent; min-height: 46px; }
.tse-tb-search .tse-input:focus { background: var(--tse-surface); }
.tse-tb-right { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 16px; margin-left: auto; }
.tse-tb-sort .tse-dd-toggle { min-height: 46px; padding: 10px 16px; white-space: nowrap; }
.tse-tb-sort .tse-dd { min-width: 200px; }
.tse-tb-sort .tse-dd-panel { left: auto; right: 0; min-width: 220px; }
.tse-tb-count .tse-count { margin: 0; font-size: .9em; color: var(--tse-muted); white-space: nowrap; }
.tse-tb-filters { position: relative; gap: 8px; }
.tse-tb-filters svg { width: 1em; height: 1em; fill: currentColor; }
.tse-tb-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; font-size: 12px; font-weight: 700; line-height: 1; border-radius: 999px; background: var(--tse-accent-contrast); color: var(--tse-accent); }

/* Grid / List buttons (theme ke button styles se bachne ke liye specific) */
.tse-view-switch { display: inline-flex; align-items: center; gap: 4px; }
.tse-view-switch .tse-view-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px;
	min-width: 38px; height: 38px; padding: 6px 8px; margin: 0;
	font: inherit; font-size: 18px; line-height: 1; text-transform: none; letter-spacing: normal;
	color: var(--tse-muted); background: transparent; border: 1px solid transparent; border-radius: 8px;
	box-shadow: none; cursor: pointer; transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}
.tse-view-switch .tse-view-btn:hover, .tse-view-switch .tse-view-btn:focus { color: var(--tse-text); background: var(--tse-soft); border-color: transparent; }
.tse-view-switch .tse-view-btn.is-active { color: var(--tse-text); background: var(--tse-soft); }
.tse-view-switch .tse-view-btn:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-view-btn svg { width: 1em; height: 1em; fill: currentColor; }
.tse-view-text { font-size: 14px; font-weight: 600; }
/* Icon na chuna ho to CSS se bane icons */
.tse-view-ico { display: block; width: 18px; height: 16px; }
.tse-view-ico--list { background: linear-gradient(currentColor 0 0) 0 1px / 100% 2px no-repeat, linear-gradient(currentColor 0 0) 0 7px / 100% 2px no-repeat, linear-gradient(currentColor 0 0) 0 13px / 100% 2px no-repeat; }
.tse-view-ico--grid { background: radial-gradient(circle, currentColor 0 2px, transparent 2.5px) 0 0 / 6px 5.4px; }

@media (max-width: 767px) {
	.tse-tb-stack-yes .tse-tb-search { flex-basis: 100%; order: -1; }
	.tse-tb-stack-yes .tse-tb-right { margin-left: 0; width: 100%; justify-content: space-between; }
	.tse-tb-hideview-yes .tse-view-switch { display: none; }
	.tse-tb-sort .tse-dd { min-width: 0; }
}

/* =====================================================================
 * v2.2 List view (?view=list)
 * =================================================================== */
.tse-listing[data-view="list"] .tse-grid { grid-template-columns: minmax(0, 1fr); }
.tse-listing[data-view="list"] .tse-card { flex-direction: row; }
.tse-listing[data-view="list"] .tse-card-media { flex: 0 0 36%; aspect-ratio: auto; min-height: 220px; }
.tse-listing[data-view="list"] .tse-card-body { justify-content: center; }
@media (max-width: 640px) {
	.tse-listing[data-view="list"] .tse-card { flex-direction: column; }
	.tse-listing[data-view="list"] .tse-card-media { flex-basis: auto; aspect-ratio: 4 / 3; min-height: 0; }
}

/* =====================================================================
 * v2.2 Quick view
 * =================================================================== */
.tse-card { position: relative; }
.tse-card-qv {
	position: absolute; top: 12px; right: 12px; z-index: 3;
	display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 7px 12px;
	font: inherit; font-size: 13px; font-weight: 600; line-height: 1.2; text-transform: none;
	color: var(--tse-text); background: rgba(255, 255, 255, .95); border: 0; border-radius: 999px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .15); cursor: pointer;
	opacity: 0; transform: translateY(-4px); transition: opacity .2s ease, transform .2s ease, background-color .2s ease, color .2s ease;
}
.tse-card-qv svg { width: 1em; height: 1em; fill: currentColor; }
.tse-card:hover .tse-card-qv, .tse-card:focus-within .tse-card-qv, .tse-card-qv:focus-visible { opacity: 1; transform: none; }
@media (hover: none) { .tse-card-qv { opacity: 1; transform: none; } }
.tse-card-qv--inline { position: static; opacity: 1; transform: none; align-self: flex-start; margin: 16px 18px 0; }

html.tse-qv-open { overflow: hidden; }

.tse-qv-dialog {
	--tse-qv-speed: .25s;
	box-sizing: border-box; padding: 0; margin: auto; border: 0; background: transparent; color: var(--tse-text);
	max-width: none; max-height: none; overflow: visible;
}
.tse-qv-dialog::backdrop { background: rgba(15, 23, 30, .62); }
.tse-qv-dialog .tse-qv-box {
	position: relative; box-sizing: border-box;
	width: min(1040px, calc(100vw - 32px)); max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px);
	overflow: auto; overscroll-behavior: contain;
	background: var(--tse-surface); border-radius: 16px; box-shadow: 0 24px 64px rgba(0, 0, 0, .3);
}
/* Animation */
.tse-qv-dialog .tse-qv-box { opacity: 0; transform: translateY(16px) scale(.98); transition: opacity var(--tse-qv-speed) ease, transform var(--tse-qv-speed) ease; }
.tse-qv-dialog.is-visible .tse-qv-box, .tse-qv-dialog.is-preview .tse-qv-box { opacity: 1; transform: none; }

/* Side drawer */
.tse-qv-pos-right, .tse-qv-pos-left { margin: 0; height: 100%; max-height: 100vh; max-height: 100dvh; }
.tse-qv-pos-right { margin-left: auto; }
.tse-qv-pos-right .tse-qv-box, .tse-qv-pos-left .tse-qv-box { width: min(560px, 100vw); height: 100vh; height: 100dvh; max-height: none; border-radius: 0; }
.tse-qv-pos-right .tse-qv-box { transform: translateX(40px); }
.tse-qv-pos-left .tse-qv-box { transform: translateX(-40px); }
.tse-qv-pos-right.is-visible .tse-qv-box, .tse-qv-pos-left.is-visible .tse-qv-box { transform: none; }
.tse-qv-pos-right .tse-qv, .tse-qv-pos-left .tse-qv { grid-template-columns: minmax(0, 1fr) !important; }

/* Close button */
.tse-qv-dialog .tse-qv-close {
	position: absolute; top: 12px; right: 12px; z-index: 5; margin: 0;
	display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0;
	font: inherit; font-size: 22px; line-height: 1; text-transform: none;
	color: var(--tse-text); background: rgba(255, 255, 255, .95); border: 1px solid var(--tse-line); border-radius: 50%;
	box-shadow: 0 2px 10px rgba(0, 0, 0, .12); cursor: pointer; transition: background-color .15s ease, color .15s ease;
}
.tse-qv-dialog .tse-qv-close:hover, .tse-qv-dialog .tse-qv-close:focus { color: var(--tse-accent-contrast); background: var(--tse-accent); border-color: var(--tse-accent); }
.tse-qv-dialog .tse-qv-close:focus-visible { outline: 2px solid var(--tse-accent); outline-offset: 2px; }
.tse-qv-close svg { width: .8em; height: .8em; fill: currentColor; }

/* Content layout */
.tse-qv { display: grid; grid-template-columns: minmax(0, 1fr); }
.tse-qv-layout-split .tse-qv:not(.tse-qv--no-media) { grid-template-columns: 46% minmax(0, 1fr); }
.tse-qv-media { min-width: 0; background: var(--tse-soft); }
.tse-qv-layout-split .tse-qv-media { position: sticky; top: 0; align-self: start; }
.tse-qv-media img { display: block; width: 100%; height: 420px; object-fit: cover; }
.tse-qv-layout-split .tse-qv-media img { height: calc(100vh - 48px); max-height: 820px; }
.tse-qv-media .tse-gallery--grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px; }
.tse-qv-media .tse-gallery--grid img { height: 200px; }
.tse-qv-media .tse-gallery--grid .tse-gallery-item:first-child { grid-column: 1 / -1; }
.tse-qv-media .tse-gallery--grid .tse-gallery-item:first-child img { height: 320px; }
.tse-qv-media .tse-carousel { --tse-spv: 1; --tse-slide-gap: 0px; }
.tse-qv-content { display: flex; flex-direction: column; gap: 20px; padding: 28px 28px 32px; min-width: 0; }
.tse-qv-head { display: flex; flex-direction: column; gap: 8px; padding-right: 48px; }
.tse-qv-head .tse-badges { position: static; }
.tse-qv-title { margin: 0; font-size: 1.6em; line-height: 1.25; }
.tse-qv-meta, .tse-qv-rating { margin: 0; color: var(--tse-muted); font-size: .92em; }
.tse-qv-rating { display: flex; align-items: center; gap: 6px; font-weight: 600; color: var(--tse-text); }
.tse-qv-reviews { color: var(--tse-muted); font-weight: 400; }
.tse-qv-price { padding: 14px 16px; border-radius: 10px; background: var(--tse-soft); }
.tse-qv-price .tse-price-now { font-size: 1.5em; font-weight: 700; }
.tse-qv .tse-facts { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px; }
.tse-qv .tse-fact { padding: 10px 12px; border: 1px solid var(--tse-line); border-radius: 10px; }
.tse-qv .tse-fact dt { font-size: .78em; color: var(--tse-muted); text-transform: uppercase; letter-spacing: .03em; }
.tse-qv .tse-fact dd { margin: 2px 0 0; font-weight: 600; }
.tse-qv-excerpt p { margin: 0 0 .6em; }
.tse-qv-excerpt p:last-child { margin-bottom: 0; }
.tse-qv .tse-book { display: flex; flex-wrap: wrap; gap: 10px; }
.tse-qv .tse-book-btn { flex: 1 1 140px; }
.tse-qv-section { display: flex; flex-direction: column; gap: 10px; padding-top: 18px; border-top: 1px solid var(--tse-line); }
.tse-qv-heading { margin: 0; font-size: 1.1em; }
.tse-qv-section .tse-itinerary { margin: 0; }
.tse-qv-footer { position: sticky; bottom: 0; margin: 0 -28px -32px; padding: 14px 28px; background: var(--tse-surface); border-top: 1px solid var(--tse-line); }
.tse-qv-more { width: 100%; }

/* Loading */
.tse-qv-loading { display: flex; align-items: center; justify-content: center; min-height: 320px; }
.tse-qv-spinner { width: 36px; height: 36px; border: 3px solid var(--tse-line); border-top-color: var(--tse-accent); border-radius: 50%; animation: tse-spin .8s linear infinite; }
@keyframes tse-spin { to { transform: rotate(360deg); } }

/* Elementor editor preview: page ke andar hi dikhe */
.tse-qv-dialog.is-preview { position: relative; display: block; inset: auto; margin: 32px auto 0; height: auto; z-index: 1; }
.tse-qv-dialog.is-preview .tse-qv-box { max-height: none; height: auto; outline: 2px dashed var(--tse-accent); outline-offset: 6px; }
.tse-qv-dialog.is-preview .tse-qv-media img { height: 420px; }

@media (max-width: 767px) {
	.tse-qv-layout-split .tse-qv:not(.tse-qv--no-media) { grid-template-columns: minmax(0, 1fr); }
	.tse-qv-layout-split .tse-qv-media { position: static; }
	.tse-qv-media img, .tse-qv-layout-split .tse-qv-media img { height: 260px; }
	.tse-qv-dialog:not(.tse-qv-pos-left):not(.tse-qv-pos-right) { margin: auto 0 0; width: 100%; }
	.tse-qv-dialog:not(.tse-qv-pos-left):not(.tse-qv-pos-right) .tse-qv-box { width: 100vw; max-height: 92vh; max-height: 92dvh; border-radius: 16px 16px 0 0; }
	.tse-qv-content { padding: 20px 18px 24px; }
	.tse-qv-footer { margin: 0 -18px -24px; padding: 12px 18px; }
}
@media (prefers-reduced-motion: reduce) {
	.tse-qv-dialog .tse-qv-box, .tse-card-qv { transition: none; }
	.tse-qv-spinner { animation-duration: 2s; }
}

/* ---------- v2.2 fixes ---------- */
/* Gallery carousel: .tse-gallery ka 3-column grid carousel par na lage (slides patli ho jaati thi) */
.tse-gallery.tse-carousel { display: block; }
.tse-qv-dialog .tse-qv-media .tse-carousel { --tse-spv: 1; --tse-slide-gap: 0px; }
.tse-qv-media .tse-gallery-item { border-radius: 0; }
.tse-qv-media .tse-carousel-prev { left: 12px; }
.tse-qv-media .tse-carousel-next { right: 12px; }
.tse-qv-media .tse-carousel-dots { position: absolute; left: 0; right: 0; bottom: 14px; margin: 0; z-index: 3; }
.tse-qv-media .tse-carousel-dot { background: rgba(255, 255, 255, .6); }
.tse-qv-media .tse-carousel-dot.is-active { background: #fff; }
/* Khule din par "–" aur toggle icon dono dikh rahe the */
.tse-day details[open] summary::after, .tse-faq[open] summary::after { content: none; }

/* Theme (jaise Hello Elementor) ke pink button styles se bachao */
.tse-carousel .tse-carousel-btn { margin-top: -22px; border: 1px solid var(--tse-line); color: var(--tse-text); background: var(--tse-surface); text-transform: none; }
.tse-carousel .tse-carousel-btn:hover, .tse-carousel .tse-carousel-btn:focus { color: var(--tse-accent-contrast); background: var(--tse-accent); border-color: var(--tse-accent); }
.tse-arrows-top .tse-carousel .tse-carousel-btn, .tse-arrows-bottom .tse-carousel .tse-carousel-btn { margin: 0; }
.tse-carousel .tse-carousel-dot { padding: 0; border: 0; min-height: 0; background: var(--tse-line); }
.tse-carousel .tse-carousel-dot:hover, .tse-carousel .tse-carousel-dot:focus { background: var(--tse-muted); }
.tse-carousel .tse-carousel-dot.is-active { background: var(--tse-accent); }
.tse-qv-media .tse-carousel .tse-carousel-dot { background: rgba(255, 255, 255, .6); }
.tse-qv-media .tse-carousel .tse-carousel-dot.is-active { background: #fff; }
.tse-card .tse-card-qv { color: var(--tse-text); background: rgba(255, 255, 255, .95); border: 0; }
.tse-card .tse-card-qv:hover, .tse-card .tse-card-qv:focus { color: var(--tse-accent-contrast); background: var(--tse-accent); }

/* ---------- v2.2.2 Hero search: button position + plain box ---------- */
.tse-hero-submit { display: flex; }
.tse-hero-btn-bottom .tse-hero-submit, .tse-hero-btn-top .tse-hero-submit { flex: 1 1 100%; max-width: none; }
.tse-hero-btn-top .tse-hero-submit, .tse-hero-btn-start .tse-hero-submit { order: -1; }
.tse-hero-btnalign-left .tse-hero-submit { justify-content: flex-start; }
.tse-hero-btnalign-center .tse-hero-submit { justify-content: center; }
.tse-hero-btnalign-right .tse-hero-submit { justify-content: flex-end; }
.tse-hero-btnalign-left .tse-hero-submit .tse-button,
.tse-hero-btnalign-center .tse-hero-submit .tse-button,
.tse-hero-btnalign-right .tse-hero-submit .tse-button { width: auto; }
.tse-hero-btnalign-stretch .tse-hero-submit > * { flex: 1 1 auto; }
.tse-hero.tse-hero--plain { padding: 0 !important; background: transparent !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important; }

/* Hero: default shadow band (Style > Form box > Box Shadow phir bhi kaam karega) */
.tse-hero.tse-hero--noshadow { box-shadow: none; }

/* ---------- v2.4 Destination / Category image ---------- */
.tse-term-image { overflow: hidden; line-height: 0; }
.tse-term-image a { display: inline-block; max-width: 100%; overflow: hidden; }
.tse-term-image img { display: inline-block; max-width: 100%; width: 100%; height: auto; object-fit: cover; transition: transform .4s ease; }
.tse-term-banner {
	position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: flex-end;
	box-sizing: border-box; width: 100%; min-height: 380px; padding: 48px; overflow: hidden;
	color: #fff; text-decoration: none; background-color: var(--tse-text); background-size: cover; background-position: center; background-repeat: no-repeat;
}
.tse-term-banner::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(0, 0, 0, .05) 20%, rgba(0, 0, 0, .65) 100%); }
a.tse-term-banner:hover { color: #fff; }
.tse-term-banner-inner { display: flex; flex-direction: column; gap: 10px; max-width: 760px; margin: var(--tse-bx, 0); }
.tse-term-banner-parent { font-size: .85em; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; opacity: .9; }
.tse-term-banner-title { margin: 0; font-size: clamp(1.8em, 4vw, 3em); line-height: 1.1; color: inherit; }
.tse-term-banner-desc { font-size: 1.05em; line-height: 1.6; }
.tse-term-banner-desc p { margin: 0 0 .5em; color: inherit; }
.tse-term-banner-desc p:last-child { margin-bottom: 0; }
.tse-term-banner-count { align-self: var(--tse-bself, flex-start); padding: 5px 12px; font-size: .85em; font-weight: 600; border-radius: 999px; background: rgba(255, 255, 255, .18); }
@media (max-width: 767px) { .tse-term-banner { min-height: 280px; padding: 28px 20px; } }

/* Vehicle bina image: car icon placeholder */
.tse-vehicle-img--empty { display: flex; align-items: center; justify-content: center; height: 160px; color: var(--tse-muted); }
.tse-vehicle-ph { display: inline-flex; font-size: 72px; line-height: 1; opacity: .55; }
.tse-vehicle-ph svg { width: 1em; height: auto; fill: currentColor; }

/* =====================================================================
 * v2.6 Destination Hero Slider
 * =================================================================== */
.tse-dh {
	--tse-dh-speed: 900ms; --tse-dh-card-w: 220px; --tse-dh-card-h: 300px; --tse-dh-card-gap: 16px;
	--tse-dh-accent: #f5c451; --tse-dh-justify: flex-start;
	position: relative; isolation: isolate; display: flex; min-height: 88vh; overflow: hidden;
	color: #fff; background: #0e1713; box-sizing: border-box;
}
.tse-dh *, .tse-dh *::before, .tse-dh *::after { box-sizing: border-box; }
.tse-dh-bgs { position: absolute; inset: 0; z-index: -2; }
.tse-dh-bg { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity var(--tse-dh-speed) ease, visibility 0s linear var(--tse-dh-speed); }
.tse-dh-bg.is-active { opacity: 1; visibility: visible; transition: opacity var(--tse-dh-speed) ease, visibility 0s; }
.tse-dh-bg img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; transform: scale(1.02); }
.tse-dh-zoom-yes .tse-dh-bg img { transition: transform 9s ease-out; }
.tse-dh-zoom-yes .tse-dh-bg.is-active img { transform: scale(1.1); }
.tse-dh-bg::after { content: ""; position: absolute; inset: 0; }
.tse-dh-overlay {
	position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: linear-gradient(90deg, rgba(6, 12, 10, .85) 0%, rgba(6, 12, 10, .55) 45%, rgba(6, 12, 10, .1) 100%), linear-gradient(0deg, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 45%);
}
.tse-dh-inner {
	position: relative; display: flex; align-items: flex-end; justify-content: space-between; column-gap: 56px; row-gap: 32px;
	width: 100%; max-width: 1320px; margin: 0 auto; padding: 120px 48px 64px;
}
.tse-dh-main { flex: 0 1 52%; max-width: 52%; min-width: 0; }
.tse-dh-contents { display: grid; }
.tse-dh-content { grid-area: 1 / 1; min-width: 0; visibility: hidden; pointer-events: none; }
.tse-dh-content.is-active { visibility: visible; pointer-events: auto; }
.tse-dh-content > * { opacity: 0; transform: translateY(26px); transition: opacity calc(var(--tse-dh-speed) * .5) ease, transform calc(var(--tse-dh-speed) * .5) ease; }
.tse-dh-content.is-active > * { opacity: 1; transform: none; transition: opacity calc(var(--tse-dh-speed) * .8) ease, transform var(--tse-dh-speed) cubic-bezier(.16, .84, .3, 1); }
.tse-dh-content.is-active > :nth-child(1) { transition-delay: calc(var(--tse-dh-speed) * .25); }
.tse-dh-content.is-active > :nth-child(2) { transition-delay: calc(var(--tse-dh-speed) * .35); }
.tse-dh-content.is-active > :nth-child(3) { transition-delay: calc(var(--tse-dh-speed) * .45); }
.tse-dh-content.is-active > :nth-child(4) { transition-delay: calc(var(--tse-dh-speed) * .55); }
.tse-dh-content.is-active > :nth-child(5) { transition-delay: calc(var(--tse-dh-speed) * .65); }

.tse-dh-eyebrow { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 14px; font-size: .82rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--tse-dh-accent); }
.tse-dh-eyebrow::before { content: ""; width: 36px; height: 2px; background: currentColor; }
:where(.tse-dh) .tse-dh-title { margin: 0 0 18px; font-size: var(--tse-dh-title-fs, clamp(2.5rem, 6.2vw, 5.6rem)); font-weight: 800; line-height: 1; letter-spacing: -.02em; color: #fff; }
.tse-dh-desc { max-width: 560px; font-size: var(--tse-dh-desc-fs, clamp(1rem, 1.15vw, 1.15rem)); line-height: 1.65; color: rgba(255, 255, 255, .88); }
.tse-dh-desc p { margin: 0 0 .6em; color: inherit; }
.tse-dh-desc p:last-child { margin-bottom: 0; }
.tse-dh-meta { display: flex; flex-wrap: wrap; justify-content: var(--tse-dh-justify); gap: 8px; margin: 22px 0 0; }
.tse-dh-meta > span { display: inline-flex; padding: 6px 14px; font-size: var(--tse-dh-meta-fs, .85rem); font-weight: 500; line-height: 1.4; border-radius: 999px; background: rgba(255, 255, 255, .14); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.tse-dh-meta-count { background: var(--tse-dh-accent) !important; color: #1b1405; font-weight: 700 !important; }
.tse-dh-buttons { display: flex; flex-wrap: wrap; justify-content: var(--tse-dh-justify); gap: 12px; margin-top: 30px; }
:where(.tse-dh) .tse-dh-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: var(--tse-dh-btn-h, 52px); padding: 10px var(--tse-dh-btn-px, 26px);
	font-size: var(--tse-dh-btn-fs, 1rem); font-weight: 600; line-height: 1.2; text-decoration: none; border: 1.5px solid transparent; border-radius: 999px;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
:where(.tse-dh) .tse-dh-btn svg { width: var(--tse-dh-btn-icon, 1em); height: var(--tse-dh-btn-icon, 1em); fill: currentColor; }
:where(.tse-dh) .tse-dh-btn i { font-size: var(--tse-dh-btn-icon, 1em); }
:where(.tse-dh) .tse-dh-btn:hover { transform: translateY(-2px); }
:where(.tse-dh) .tse-dh-btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
:where(.tse-dh) .tse-dh-btn--book { background: #fff; color: #10201a; }
:where(.tse-dh) .tse-dh-btn--book:hover { background: var(--tse-dh-accent); color: #1b1405; }
:where(.tse-dh) .tse-dh-btn--call { background: rgba(255, 255, 255, .06); color: #fff; border-color: rgba(255, 255, 255, .65); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
:where(.tse-dh) .tse-dh-btn--call:hover { background: #fff; color: #10201a; border-color: #fff; }
:where(.tse-dh) .tse-dh-btn--whatsapp { background: #25d366; color: #fff; }
:where(.tse-dh) .tse-dh-btn--whatsapp:hover { background: #1da851; color: #fff; }

/* Buttons layout (per device) */
.tse-dh-btns-column .tse-dh-buttons { flex-direction: column; align-items: flex-start; }
.tse-dh-btns-grid .tse-dh-buttons > * { flex: 1 1 0; }

/* Side: cards + nav */
.tse-dh-side { display: flex; flex-direction: column; gap: 22px; flex: 0 1 auto; min-width: 0; max-width: 46%; }
.tse-dh-cards { display: flex; gap: var(--tse-dh-card-gap); overflow-x: auto; padding: 6px 4px 10px; margin: -6px -4px -10px; scrollbar-width: none; scroll-snap-type: x proximity; }
.tse-dh-cards::-webkit-scrollbar { display: none; }
.tse-dh .tse-dh-card {
	position: relative; flex: 0 0 var(--tse-dh-card-w); height: var(--tse-dh-card-h); margin: 0; padding: 0; overflow: hidden;
	font: inherit; color: #fff; text-align: left; text-transform: none; letter-spacing: normal;
	background: #1d2a24; border: 0; border-radius: 18px; box-shadow: 0 18px 40px rgba(0, 0, 0, .35); cursor: pointer; scroll-snap-align: start;
	transition: box-shadow .3s ease, opacity .3s ease;
}
.tse-dh .tse-dh-card:hover, .tse-dh .tse-dh-card:focus { color: #fff; background: #1d2a24; border: 0; }
.tse-dh .tse-dh-card:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.tse-dh .tse-dh-card.is-current { display: none; }
.tse-dh-card img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; transition: transform .7s ease; }
.tse-dh-card:hover img { transform: scale(1.08); }
.tse-dh-card::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, .8) 100%); }
.tse-dh-card-body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; padding: 18px; }
.tse-dh-card-label { display: none; margin-bottom: 6px; padding: 3px 10px; font-size: var(--tse-dh-label-fs, .7rem); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #1b1405; background: var(--tse-dh-accent); border-radius: 999px; }
.tse-dh-card.is-next .tse-dh-card-label { display: inline-block; }
.tse-dh-card-title { font-size: var(--tse-dh-card-title-fs, 1.2rem); font-weight: 700; line-height: 1.2; }
.tse-dh-card-text { font-size: var(--tse-dh-card-text-fs, .85rem); line-height: 1.4; color: rgba(255, 255, 255, .82); }
.tse-dh-card.is-entering { animation: tse-dh-enter calc(var(--tse-dh-speed) * .8) ease both; }
@keyframes tse-dh-enter { from { opacity: 0; transform: translateX(40px) scale(.94); } to { opacity: 1; transform: none; } }

.tse-dh-nav { display: flex; align-items: center; gap: 14px; }
.tse-dh .tse-dh-ctrl {
	display: inline-flex; align-items: center; justify-content: center; flex: none; width: 48px; height: 48px; margin: 0; padding: 0;
	font: inherit; font-size: 16px; line-height: 1; color: #fff; text-transform: none;
	background: rgba(255, 255, 255, .08); border: 1.5px solid rgba(255, 255, 255, .5); border-radius: 50%; cursor: pointer;
	-webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.tse-dh .tse-dh-ctrl:hover, .tse-dh .tse-dh-ctrl:focus { color: #10201a; background: #fff; border-color: #fff; }
.tse-dh .tse-dh-ctrl:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.tse-dh-ctrl svg { width: 1em; height: 1em; fill: currentColor; }
.tse-dh-pause-ico { position: relative; width: 12px; height: 14px; }
.tse-dh-pause-ico::before, .tse-dh-pause-ico::after { content: ""; position: absolute; top: 0; width: 4px; height: 100%; background: currentColor; border-radius: 1px; }
.tse-dh-pause-ico::before { left: 0; }
.tse-dh-pause-ico::after { right: 0; }
.tse-dh.is-paused .tse-dh-pause-ico::after { display: none; }
.tse-dh.is-paused .tse-dh-pause-ico::before { left: 2px; width: 0; height: 0; background: none; border-style: solid; border-width: 7px 0 7px 11px; border-color: transparent transparent transparent currentColor; border-radius: 0; }
.tse-dh-counter { font-size: .95rem; font-weight: 600; letter-spacing: .08em; font-variant-numeric: tabular-nums; color: rgba(255, 255, 255, .75); white-space: nowrap; }
.tse-dh-current { font-size: 1.45em; color: #fff; }
.tse-dh-progress { position: relative; flex: 1 1 100px; min-width: 60px; height: 3px; overflow: hidden; background: rgba(255, 255, 255, .25); border-radius: 3px; }
.tse-dh-progress span { position: absolute; inset: 0 auto 0 0; width: 0; background: #fff; border-radius: inherit; }
.tse-dh.is-running .tse-dh-progress span { animation: tse-dh-progress var(--tse-dh-delay, 6000ms) linear forwards; }
.tse-dh.is-paused .tse-dh-progress span, .tse-dh.is-hover .tse-dh-progress span { animation-play-state: paused; }
@keyframes tse-dh-progress { from { width: 0; } to { width: 100%; } }

/* Cards below content */
.tse-dh-cards-bottom .tse-dh-inner { flex-direction: column; align-items: stretch; justify-content: flex-end; }
.tse-dh-cards-bottom .tse-dh-main, .tse-dh-cards-bottom .tse-dh-side { flex-basis: auto; max-width: 100%; }
.tse-dh-cards-hide .tse-dh-cards { display: none; }

@media (max-width: 1024px) {
	.tse-dh-inner { padding: 110px 32px 48px; column-gap: 32px; }
	.tse-dh-cards-tablet-bottom .tse-dh-inner { flex-direction: column; align-items: stretch; justify-content: flex-end; }
	.tse-dh-cards-tablet-bottom .tse-dh-main, .tse-dh-cards-tablet-bottom .tse-dh-side { flex-basis: auto; max-width: 100%; }
	.tse-dh-cards-tablet-right .tse-dh-inner { flex-direction: row; align-items: flex-end; }
	.tse-dh-cards-tablet-right .tse-dh-main { flex: 0 1 52%; max-width: 52%; }
	.tse-dh-cards-tablet-right .tse-dh-side { max-width: 46%; }
	.tse-dh-cards-tablet-hide .tse-dh-cards { display: none; }
	.tse-dh-btns-tablet-row .tse-dh-buttons { flex-direction: row; align-items: center; }
	.tse-dh-btns-tablet-row .tse-dh-buttons > * { flex: 0 0 auto; }
	.tse-dh-btns-tablet-column .tse-dh-buttons { flex-direction: column; align-items: flex-start; }
	.tse-dh-btns-tablet-grid .tse-dh-buttons > * { flex: 1 1 0; }
	.tse-dh { --tse-dh-card-w: 190px; --tse-dh-card-h: 240px; }
}
@media (max-width: 767px) {
	.tse-dh { --tse-dh-card-w: 150px; --tse-dh-card-h: 190px; --tse-dh-card-gap: 12px; --tse-dh-btn-fs: .95rem; --tse-dh-btn-h: 46px; --tse-dh-btn-px: 18px; --tse-dh-card-title-fs: 1rem; --tse-dh-card-text-fs: .8rem; }
	.tse-dh-inner { padding: 96px 20px 32px; }
	.tse-dh-overlay { background: linear-gradient(0deg, rgba(6, 12, 10, .92) 0%, rgba(6, 12, 10, .6) 55%, rgba(6, 12, 10, .25) 100%); }
	.tse-dh-cards-mobile-bottom .tse-dh-inner { flex-direction: column; align-items: stretch; justify-content: flex-end; }
	.tse-dh-cards-mobile-bottom .tse-dh-main, .tse-dh-cards-mobile-bottom .tse-dh-side { flex-basis: auto; max-width: 100%; }
	.tse-dh-cards-mobile-right .tse-dh-inner { flex-direction: row; }
	.tse-dh-cards-mobile-hide .tse-dh-cards { display: none; }
	.tse-dh-cards-mobile-bottom .tse-dh-cards, .tse-dh-cards-tablet-bottom .tse-dh-cards { margin-right: -20px; padding-right: 20px; }
	.tse-dh-btns-mobile-row .tse-dh-buttons { flex-direction: row; align-items: center; }
	.tse-dh-btns-mobile-row .tse-dh-buttons > * { flex: 0 0 auto; }
	.tse-dh-btns-mobile-column .tse-dh-buttons { flex-direction: column; align-items: stretch; }
	.tse-dh-btns-mobile-grid .tse-dh-buttons > * { flex: 1 1 0; }
	.tse-dh-buttons { margin-top: 22px; gap: 10px; }
	.tse-dh-card-body { padding: 12px; }
	.tse-dh .tse-dh-ctrl { width: 42px; height: 42px; }
}
@media (prefers-reduced-motion: reduce) {
	.tse-dh-bg, .tse-dh-content > *, .tse-dh-bg img, .tse-dh-card, .tse-dh-card img { transition: none !important; animation: none !important; }
	.tse-dh-zoom-yes .tse-dh-bg.is-active img { transform: scale(1.02); }
}

/* v2.6.3 Hero title link */
.tse-dh .tse-dh-title-link, .tse-dh .tse-dh-title-link:hover, .tse-dh .tse-dh-title-link:focus { color: inherit; text-decoration: none; }
.tse-dh .tse-dh-title-link { transition: opacity .2s ease; }
.tse-dh .tse-dh-title-link:hover { opacity: .85; }
.tse-dh .tse-dh-title-link:focus-visible { outline: 2px solid #fff; outline-offset: 4px; border-radius: 4px; }


/* v2.6.4 Hero: how many next destination cards (per device) */
.tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="1"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="2"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-1 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
.tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="2"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-2 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
.tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-3 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
.tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-4 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
.tse-dh-show-5 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-5 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-5 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-5 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-5 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-5 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-5 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
.tse-dh-show-6 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-6 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-6 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-6 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-6 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-6 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
@media (max-width: 1024px) {
	[class*="tse-dh-show-tablet-"] .tse-dh .tse-dh-card:not(.is-current) { display: block; }
	.tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="1"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="2"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-tablet-1 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="2"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-tablet-2 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-tablet-3 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-tablet-4 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-tablet-5 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-tablet-5 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-tablet-5 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-tablet-5 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-tablet-5 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-tablet-5 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-tablet-5 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-tablet-6 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-tablet-6 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-tablet-6 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-tablet-6 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-tablet-6 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-tablet-6 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
}
@media (max-width: 767px) {
	[class*="tse-dh-show-mobile-"] .tse-dh .tse-dh-card:not(.is-current) { display: block; }
	.tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="1"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="2"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-mobile-1 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="2"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-mobile-2 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="3"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-mobile-3 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="4"], .tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-mobile-4 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-mobile-5 .tse-dh .tse-dh-card[data-pos="5"], .tse-dh-show-mobile-5 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-mobile-5 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-mobile-5 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-mobile-5 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-mobile-5 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-mobile-5 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
	.tse-dh-show-mobile-6 .tse-dh .tse-dh-card[data-pos="6"], .tse-dh-show-mobile-6 .tse-dh .tse-dh-card[data-pos="7"], .tse-dh-show-mobile-6 .tse-dh .tse-dh-card[data-pos="8"], .tse-dh-show-mobile-6 .tse-dh .tse-dh-card[data-pos="9"], .tse-dh-show-mobile-6 .tse-dh .tse-dh-card[data-pos="10"], .tse-dh-show-mobile-6 .tse-dh .tse-dh-card[data-pos="11"] { display: none; }
}
