PluginProbe
Yatra – Travel Booking & Tour Operator Software / 3.0.2.8
Yatra – Travel Booking & Tour Operator Software v3.0.2.8
3.0.15 3.0.14 3.0.14.1 3.0.14.2 3.0.12 3.0.13 3.0.11 3.0.10 3.0.9 3.0.8 3.0.7 3.0.6 3.0.5 3.0.5.1 3.0.4 3.0.3 3.0.2.9 3.0.2.7 3.0.2.8 3.0.2.6 trunk 1.0.0 2.0.0 2.0.1 2.0.10 All 83 releases
yatra / assets / css / listing.css

listing.css in Yatra – Travel Booking & Tour Operator Software 3.0.2.8, at assets/css/listing.css

3,430 lines 72.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * Listing Pages CSS
3 * Styles for trip, destination, activity, and trip-category listing pages
4 * Uses common.css variables for consistency
5 *
6 * @package Yatra
7 */
8
9 /* List view: left image column — wide enough on desktop, still responsive */
10 :root {
11 --yatra-listing-list-media-width: max(380px, min(560px, 52%));
12 /* Vertical rhythm between stacked list cards (grid gap requires display:grid) */
13 --yatra-listing-list-row-gap: 24px;
14 }
15
16 /* ============================================
17 LISTING PAGE BASE STYLES
18 Uses consistent container widths from common.css
19 ============================================ */
20
21 /* All listing pages use the same wrapper */
22 .yatra-listing-page {
23 width: 100%;
24 min-height: 100vh;
25 padding: 50px 0;
26 }
27
28 .yatra-listing-wrapper {
29 padding-top: 0;
30 }
31
32 /* Consistent container width across all listing pages (align with single-trip 1300) */
33 .yatra-listing-container {
34 width: 100%;
35 max-width: var(--yatra-container-max-width, 1300px);
36 margin-left: auto;
37 margin-right: auto;
38 padding: var(--yatra-space-lg, 24px) var(--yatra-container-padding, 20px);
39 }
40
41 /* ============================================
42 FILTER SIDEBAR STYLES
43 ============================================ */
44
45 /* This old sidebar definition is removed - using the updated one below */
46
47 /* Star Rating Filter Styles */
48 .yatra-rating-filter {
49 display: flex;
50 flex-direction: column;
51 gap: 8px;
52 }
53
54 .yatra-rating-option {
55 display: flex;
56 align-items: center;
57 gap: 8px;
58 padding: 4px 0;
59 cursor: pointer;
60 transition: all 0.2s ease;
61 }
62
63 .yatra-rating-option:hover {
64 background: rgba(59, 130, 246, 0.05);
65 border-radius: 4px;
66 padding-left: 4px;
67 padding-right: 4px;
68 }
69
70 .yatra-rating-option input[type="checkbox"] {
71 margin: 0;
72 width: 16px;
73 height: 16px;
74 accent-color: #3b82f6;
75 }
76
77 .yatra-stars-display {
78 display: flex;
79 align-items: center;
80 gap: 2px;
81 }
82
83 .yatra-star.filled {
84 fill: #fbbf24;
85 }
86
87 .yatra-star.empty {
88 fill: #e5e7eb;
89 }
90
91 .yatra-rating-label {
92 font-size: 13px;
93 color: #374151;
94 margin-left: 4px;
95 font-weight: 400;
96 }
97
98 .yatra-rating-option:hover .yatra-rating-label {
99 color: #1f2937;
100 }
101
102 /* Responsive adjustments for rating filter */
103 @media (max-width: 768px) {
104 .yatra-star {
105 width: 12px;
106 height: 12px;
107 }
108
109 .yatra-rating-label {
110 font-size: 12px;
111 }
112 }
113
114
115 /* Results Header */
116 .yatra-results-header {
117 display: flex;
118 justify-content: space-between;
119 align-items: flex-start;
120 gap: 20px;
121 margin-bottom: 28px;
122 padding-bottom: 20px;
123 border-bottom: 1px solid #e2e8f0;
124 }
125
126 .yatra-results-info h1 {
127 font-size: clamp(1.375rem, 2.5vw, 1.75rem);
128 font-weight: 700;
129 color: #0f172a;
130 letter-spacing: -0.02em;
131 margin-bottom: 8px;
132 line-height: 1.25;
133 }
134
135 .yatra-listing-archive-lede {
136 font-size: 0.9375rem;
137 line-height: 1.55;
138 color: #64748b;
139 margin: 0 0 10px 0;
140 max-width: 42rem;
141 }
142
143 .yatra-archive-listing-lede {
144 font-size: 0.9375rem;
145 line-height: 1.55;
146 color: #64748b;
147 margin: 0 0 8px 0;
148 max-width: 42rem;
149 }
150
151 .yatra-archive-listing-results {
152 font-size: 0.8125rem;
153 color: #475569;
154 margin: 0 0 2px 0;
155 }
156
157 .yatra-archive-card-excerpt {
158 display: -webkit-box;
159 -webkit-line-clamp: 3;
160 -webkit-box-orient: vertical;
161 overflow: hidden;
162 line-clamp: 3;
163 margin: 0 0 8px 0;
164 font-size: 0.875rem;
165 line-height: 1.45;
166 color: #4b5563;
167 }
168
169 .yatra-results-count {
170 font-size: 14px;
171 line-height: 1.5;
172 color: #475569;
173 margin-top: 4px;
174 }
175
176 .yatra-results-count strong {
177 color: #0f172a;
178 font-weight: 600;
179 }
180
181 .yatra-results-controls {
182 display: flex;
183 align-items: center;
184 gap: 12px;
185 flex-wrap: wrap;
186 background: #f8fafc;
187 border: 1px solid #e5e7eb;
188 border-radius: 12px;
189 padding: 10px 12px;
190 }
191
192 .yatra-sort-control {
193 display: flex;
194 align-items: center;
195 gap: 8px;
196 }
197
198 .yatra-sort-control label {
199 font-size: 14px;
200 font-weight: 500;
201 color: #374151;
202 white-space: nowrap;
203 }
204
205 .yatra-sort-control select {
206 padding: 9px 14px;
207 border: 1px solid #d1d5db;
208 border-radius: 10px;
209 background: #ffffff;
210 font-size: 14px;
211 color: #374151;
212 cursor: pointer;
213 transition: all 0.2s ease;
214 min-width: 180px;
215 }
216
217 .yatra-sort-control select:hover {
218 border-color: #9ca3af;
219 }
220
221 .yatra-sort-control select:focus {
222 outline: none;
223 border-color: #3b82f6;
224 box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
225 }
226
227 /* Grid / list toggle: gray “track”, inactive = muted icon, active = white inset + blue ring (clear at a glance) */
228 .yatra-view-toggle {
229 display: inline-flex;
230 align-items: stretch;
231 background: #e2e8f0;
232 border-radius: 10px;
233 padding: 3px;
234 gap: 0;
235 border: 1px solid #cbd5e1;
236 }
237
238 .yatra-view-btn {
239 display: flex;
240 align-items: center;
241 justify-content: center;
242 min-width: 40px;
243 min-height: 36px;
244 padding: 8px 12px;
245 border: none;
246 background: transparent;
247 border-radius: 8px;
248 cursor: pointer;
249 transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
250 color: #64748b;
251 font-weight: 500;
252 }
253
254 .yatra-view-btn:hover:not(.active) {
255 background: rgba(255, 255, 255, 0.45);
256 color: #334155;
257 }
258
259 .yatra-view-btn:focus-visible {
260 outline: none;
261 box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #3b82f6;
262 }
263
264 .yatra-view-btn.active {
265 background: #ffffff;
266 color: #1d4ed8;
267 box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12), 0 0 0 1px #93c5fd;
268 }
269
270 .yatra-view-btn svg {
271 width: 18px;
272 height: 18px;
273 flex-shrink: 0;
274 }
275
276 /* Grid View Styles (Default) — same columns on trip, destination, activity, category listings */
277 .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
278 .yatra-listing-content-full .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
279 .yatra-listing-page .yatra-destination-grid:not(.list-view),
280 .yatra-listing-page .yatra-activity-grid:not(.list-view),
281 .yatra-listing-page .yatra-category-grid:not(.list-view) {
282 display: grid;
283 gap: 24px;
284 grid-template-columns: 1fr;
285 transition: all 0.3s ease;
286 }
287
288 .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
289 .yatra-listing-content-full .yatra-trip-grid:not(.list-view):not(.yatra-list-view) {
290 margin-bottom: 32px;
291 }
292
293 @media (min-width: 768px) {
294 .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
295 .yatra-listing-content-full .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
296 .yatra-listing-page .yatra-destination-grid:not(.list-view),
297 .yatra-listing-page .yatra-activity-grid:not(.list-view),
298 .yatra-listing-page .yatra-category-grid:not(.list-view) {
299 grid-template-columns: repeat(2, minmax(0, 1fr));
300 }
301 }
302
303 @media (min-width: 1024px) {
304 /*
305 * Trip archive with left filter sidebar: main column is narrow — use 2 cards per row.
306 * Full-width listings (e.g. taxonomy trip list) keep 3 per row.
307 */
308 .yatra-listing-content:not(.yatra-listing-content-full) .yatra-trip-grid:not(.list-view):not(.yatra-list-view) {
309 grid-template-columns: repeat(2, minmax(0, 1fr));
310 }
311
312 .yatra-listing-content-full .yatra-trip-grid:not(.list-view):not(.yatra-list-view) {
313 grid-template-columns: repeat(3, minmax(0, 1fr));
314 }
315
316 .yatra-listing-page .yatra-destination-grid:not(.list-view),
317 .yatra-listing-page .yatra-activity-grid:not(.list-view),
318 .yatra-listing-page .yatra-category-grid:not(.list-view) {
319 grid-template-columns: repeat(3, minmax(0, 1fr));
320 }
321 }
322
323 .yatra-trip-card {
324 background: #ffffff;
325 border-radius: 12px;
326 overflow: hidden;
327 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
328 transition: all 0.3s ease;
329 cursor: pointer;
330 display: flex;
331 flex-direction: column;
332 height: 100%;
333 }
334
335 .yatra-trip-card:hover {
336 transform: translateY(-4px);
337 box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
338 }
339
340 .yatra-trip-card-image {
341 position: relative;
342 width: 100%;
343 height: 240px;
344 overflow: hidden;
345 }
346
347 .yatra-trip-card-image img {
348 width: 100%;
349 height: 100%;
350 object-fit: cover;
351 }
352
353 .yatra-trip-content {
354 padding: 20px;
355 display: flex;
356 flex-direction: column;
357 gap: 12px;
358 flex: 1;
359 }
360
361 .yatra-trip-title {
362 font-size: 1.25rem;
363 font-weight: 600;
364 color: #1f2937;
365 margin: 0;
366 line-height: 1.4;
367 -webkit-line-clamp: 2;
368 line-clamp: 2;
369 display: -webkit-box;
370 -webkit-box-orient: vertical;
371 overflow: hidden;
372 }
373
374 /* List View Styles — must be CSS grid so gap separates cards (non-list uses display:grid above) */
375 .yatra-trip-grid.list-view,
376 .yatra-trip-grid.yatra-list-view {
377 display: grid;
378 grid-template-columns: 1fr;
379 gap: var(--yatra-listing-list-row-gap);
380 align-content: start;
381 }
382
383 .yatra-trip-grid.list-view .yatra-trip-card {
384 display: flex;
385 flex-direction: row;
386 height: auto;
387 min-height: 240px;
388 max-height: none;
389 }
390
391 .yatra-trip-grid.list-view .yatra-trip-card-image {
392 width: var(--yatra-listing-list-media-width);
393 min-width: var(--yatra-listing-list-media-width);
394 height: auto;
395 min-height: 240px;
396 flex-shrink: 0;
397 align-self: stretch;
398 }
399
400 .yatra-trip-grid.list-view .yatra-trip-content {
401 flex: 1;
402 padding: 20px;
403 display: flex;
404 flex-direction: column;
405 justify-content: space-between;
406 gap: 12px;
407 }
408
409 .yatra-trip-grid.list-view .yatra-trip-title {
410 font-size: 1.1rem;
411 margin-bottom: 8px;
412 -webkit-line-clamp: 1;
413 line-clamp: 1;
414 }
415
416 .yatra-trip-grid.list-view .yatra-trip-destinations {
417 margin: -8px -20px 12px -20px;
418 padding: 12px 20px;
419 background: #f8fafc;
420 width: calc(100% + 40px);
421 border-radius: 0;
422 }
423
424 /* Trip Info and Metadata Styling */
425 .yatra-trip-info-row {
426 display: flex;
427 align-items: center;
428 gap: 12px;
429 flex-wrap: wrap;
430 margin-bottom: 10px;
431 }
432
433 .yatra-info-badge {
434 display: flex;
435 align-items: center;
436 gap: 4px;
437 font-size: 0.75rem;
438 color: #6b7280;
439 background: #f3f4f6;
440 padding: 4px 8px;
441 border-radius: 6px;
442 font-weight: 500;
443 }
444
445 .yatra-info-badge svg {
446 width: 12px;
447 height: 12px;
448 color: #9ca3af;
449 }
450
451 .yatra-trip-duration,
452 .yatra-trip-difficulty {
453 display: flex;
454 align-items: center;
455 gap: 6px;
456 font-size: 0.875rem;
457 color: #6b7280;
458 }
459
460 .yatra-trip-activities {
461 display: flex;
462 flex-wrap: wrap;
463 gap: 6px;
464 margin-bottom: 10px;
465 }
466
467 .yatra-tag {
468 background: #e0e7ff;
469 color: #3730a3;
470 padding: 3px 8px;
471 border-radius: 12px;
472 font-size: 0.7rem;
473 font-weight: 500;
474 text-decoration: none;
475 transition: background-color 0.2s ease, color 0.2s ease;
476 }
477
478 .yatra-tag:hover {
479 background: #c7d2fe;
480 color: #312e81;
481 text-decoration: none;
482 }
483
484 .yatra-activity-tag {
485 background: #f3f4f6;
486 color: #374151;
487 padding: 4px 8px;
488 border-radius: 6px;
489 font-size: 0.75rem;
490 font-weight: 500;
491 }
492
493 .yatra-trip-rating {
494 display: flex;
495 align-items: center;
496 gap: 8px;
497 margin-bottom: 3px;
498 }
499
500 .yatra-rating-stars {
501 display: flex;
502 align-items: center;
503 gap: 4px;
504 }
505
506 .yatra-rating-value {
507 font-size: 0.875rem;
508 font-weight: 600;
509 color: #1f2937;
510 }
511
512 .yatra-reviews-count {
513 font-size: 0.75rem;
514 color: #9ca3af;
515 }
516
517 .yatra-rating-text {
518 font-size: 0.875rem;
519 color: #6b7280;
520 }
521
522 .yatra-trip-footer {
523 margin-top: auto;
524 display: flex;
525 justify-content: space-between;
526 align-items: center;
527 padding-top: 16px;
528 }
529
530 .yatra-trip-card-price {
531 display: flex;
532 flex-direction: column;
533 align-items: flex-start;
534 }
535
536 .yatra-trip-price {
537 font-size: 1.25rem;
538 font-weight: 700;
539 color: #059669;
540 }
541
542 .yatra-original-price {
543 font-size: 0.875rem;
544 color: #9ca3af;
545 text-decoration: line-through;
546 margin-left: 8px;
547 }
548
549 .yatra-view-details-btn {
550 background: #2563eb;
551 color: #ffffff;
552 padding: 10px 20px;
553 border-radius: 8px;
554 text-decoration: none;
555 font-weight: 500;
556 transition: all 0.2s ease;
557 }
558
559 .yatra-view-details-btn:hover {
560 background: #1d4ed8;
561 transform: translateY(-1px);
562 }
563
564 /* Grid view specific styling */
565 .yatra-trip-grid:not(.list-view) .yatra-trip-destinations {
566 margin: -14px -20px 12px -20px;
567 padding: 12px 20px;
568 background: #f8fafc;
569 width: calc(100% + 40px);
570 }
571
572 /* Responsive Design */
573 @media (max-width: 767px) {
574 .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
575 .yatra-listing-content-full .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
576 .yatra-listing-page .yatra-destination-grid:not(.list-view),
577 .yatra-listing-page .yatra-activity-grid:not(.list-view),
578 .yatra-listing-page .yatra-category-grid:not(.list-view) {
579 gap: 16px;
580 }
581
582 .yatra-trip-grid.list-view .yatra-trip-card {
583 flex-direction: column;
584 min-height: auto;
585 }
586
587 .yatra-trip-grid.list-view .yatra-trip-card-image {
588 width: 100%;
589 min-width: 100%;
590 height: 200px;
591 min-height: 200px;
592 }
593
594 .yatra-trip-grid.list-view .yatra-trip-destinations {
595 margin: -14px -20px 12px -20px;
596 width: calc(100% + 40px);
597 }
598
599 .yatra-trip-footer {
600 flex-direction: column;
601 align-items: stretch;
602 gap: 12px;
603 }
604
605 .yatra-view-details-btn {
606 width: 100%;
607 text-align: center;
608 }
609 }
610
611 /* Categories Styling */
612 .yatra-trip-categories-compact {
613 display: flex;
614 align-items: center;
615 gap: 6px;
616 margin-bottom: 12px;
617 font-size: 0.75rem;
618 color: #6b7280;
619 }
620
621 .yatra-category-icon {
622 display: flex;
623 align-items: center;
624 color: #9ca3af;
625 }
626
627 .yatra-category-link {
628 color: #6b7280;
629 text-decoration: none;
630 transition: color 0.2s ease;
631 }
632
633 .yatra-category-link:hover {
634 color: #374151;
635 text-decoration: none;
636 }
637
638 /* Overlays and Badges */
639 .yatra-discount-badge {
640 position: absolute;
641 top: 12px;
642 left: 12px;
643 background: #dc2626;
644 color: #ffffff;
645 padding: 4px 8px;
646 border-radius: 6px;
647 font-size: 0.75rem;
648 font-weight: 600;
649 z-index: 2;
650 }
651
652 .yatra-favorite-btn {
653 position: absolute;
654 top: 12px;
655 right: 12px;
656 background: rgba(255, 255, 255, 0.9);
657 border: none;
658 border-radius: 50%;
659 width: 36px;
660 height: 36px;
661 display: flex;
662 align-items: center;
663 justify-content: center;
664 cursor: pointer;
665 transition: all 0.2s ease;
666 z-index: 2;
667 }
668
669 .yatra-favorite-btn:hover {
670 background: #ffffff;
671 transform: scale(1.1);
672 }
673
674 .yatra-difficulty-overlay {
675 position: absolute;
676 bottom: 12px;
677 right: 12px;
678 background: rgba(0, 0, 0, 0.8);
679 color: #ffffff;
680 padding: 6px 10px;
681 border-radius: 6px;
682 font-size: 0.75rem;
683 font-weight: 500;
684 display: flex;
685 align-items: center;
686 gap: 4px;
687 z-index: 2;
688 }
689
690 /* List view specific adjustments */
691 .yatra-trip-grid.list-view .yatra-trip-info-row {
692 margin-bottom: 8px;
693 }
694
695 .yatra-trip-grid.list-view .yatra-trip-activities {
696 margin-bottom: 8px;
697 }
698
699 .yatra-trip-grid.list-view .yatra-trip-rating {
700 margin-bottom: 10px;
701 }
702
703 .yatra-trip-grid.list-view .yatra-trip-categories-compact {
704 margin-bottom: 10px;
705 }
706
707 .yatra-trip-grid.list-view .yatra-trip-footer {
708 margin-top: auto;
709 padding-top: 12px;
710 }
711
712 .yatra-trip-grid.list-view .yatra-trip-price {
713 font-size: 1.1rem;
714 }
715
716
717 @media (max-width: 768px) {
718 .yatra-trip-grid.list-view .yatra-trip-card {
719 grid-template-columns: 1fr;
720 grid-auto-rows: auto;
721 }
722
723 .yatra-trip-grid.list-view .yatra-trip-card-image {
724 width: 100%;
725 height: 200px;
726 }
727 }
728
729 /* Additional responsive styles */
730 @media (max-width: 768px) {
731 .yatra-results-controls {
732 flex-direction: column;
733 align-items: stretch;
734 gap: 12px;
735 }
736
737 .yatra-sort-control {
738 justify-content: space-between;
739 }
740
741 .yatra-sort-control select {
742 min-width: auto;
743 flex: 1;
744 }
745 }
746
747 .yatra-sort-control select:focus {
748 outline: none;
749 border-color: #3b82f6;
750 box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
751 }
752
753 /* Listing Layout */
754 .yatra-listing-wrapper--overlay-host {
755 position: relative;
756 }
757
758 /* Loading overlay: hidden by default (markup lives in template for filter/sort navigation) */
759 .yatra-listing-loading-overlay {
760 position: absolute;
761 inset: 0;
762 z-index: 40;
763 display: flex;
764 align-items: center;
765 justify-content: center;
766 background: rgba(255, 255, 255, 0.82);
767 backdrop-filter: blur(2px);
768 opacity: 0;
769 visibility: hidden;
770 pointer-events: none;
771 transition: opacity 0.2s ease, visibility 0.2s ease;
772 }
773
774 .yatra-listing-loading-overlay.yatra-listing-loading-overlay--visible {
775 opacity: 1;
776 visibility: visible;
777 pointer-events: auto;
778 }
779
780 .yatra-listing-loading-card {
781 text-align: center;
782 padding: 24px 32px;
783 background: #fff;
784 border-radius: 12px;
785 box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
786 border: 1px solid #e5e7eb;
787 }
788
789 .yatra-listing-loading-spinner {
790 display: inline-block;
791 width: 36px;
792 height: 36px;
793 border: 3px solid #e5e7eb;
794 border-top-color: #3b82f6;
795 border-radius: 50%;
796 animation: yatra-listing-spin 0.75s linear infinite;
797 margin-bottom: 12px;
798 }
799
800 @keyframes yatra-listing-spin {
801 to {
802 transform: rotate(360deg);
803 }
804 }
805
806 .yatra-listing-loading-text {
807 margin: 0;
808 font-size: 14px;
809 color: #374151;
810 font-weight: 500;
811 }
812
813 .yatra-listing-layout {
814 display: flex;
815 gap: 28px;
816 align-items: flex-start;
817 }
818
819 .yatra-filter-sidebar {
820 flex-shrink: 0;
821 }
822
823 .yatra-listing-content {
824 flex: 1;
825 min-width: 0;
826 }
827
828 /* Full Width Content (no sidebar) */
829 .yatra-listing-content-full {
830 width: 100%;
831 }
832
833 .yatra-listing-content-full .yatra-trip-grid {
834 margin-bottom: 32px;
835 }
836
837 .yatra-listing-content-full .yatra-trip-grid.list-view {
838 display: grid;
839 grid-template-columns: 1fr;
840 gap: var(--yatra-listing-list-row-gap);
841 }
842
843 .yatra-listing-content-full .yatra-trip-grid.list-view .yatra-trip-card,
844 .yatra-trip-grid.yatra-list-view .yatra-trip-card {
845 flex-direction: row;
846 max-height: none;
847 }
848
849 .yatra-listing-content-full .yatra-trip-grid.list-view .yatra-trip-image {
850 width: var(--yatra-listing-list-media-width);
851 min-width: var(--yatra-listing-list-media-width);
852 height: auto;
853 min-height: 240px;
854 flex-shrink: 0;
855 align-self: stretch;
856 }
857
858 /* Filter Sidebar */
859 .yatra-filter-sidebar {
860 width: 100%;
861 max-width: 320px;
862 background: #fff;
863 border-radius: 12px;
864 padding: 24px;
865 height: auto;
866 border: 1px solid #e5e7eb;
867 box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
868 overflow: visible;
869 box-sizing: border-box;
870 }
871
872 .yatra-filter-header {
873 display: flex;
874 justify-content: space-between;
875 align-items: center;
876 margin-bottom: 24px;
877 padding-bottom: 16px;
878 border-bottom: 1px solid #e2e8f0;
879 }
880
881 .yatra-filter-header h2 {
882 font-size: 15px;
883 font-weight: 700;
884 color: #0f172a;
885 letter-spacing: -0.01em;
886 margin: 0;
887 }
888
889 .yatra-clear-filters {
890 font-size: 13px;
891 color: #1d4ed8;
892 background: #eff6ff;
893 border: 1px solid #bfdbfe;
894 border-radius: 8px;
895 cursor: pointer;
896 padding: 6px 12px;
897 font-weight: 600;
898 font-family: inherit;
899 line-height: 1.2;
900 transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
901 appearance: none;
902 -webkit-appearance: none;
903 }
904
905 .yatra-clear-filters:hover {
906 color: #1e40af;
907 background: #dbeafe;
908 border-color: #93c5fd;
909 text-decoration: none;
910 }
911
912 .yatra-filter-section {
913 margin-bottom: 24px;
914 border-bottom: 1px solid #f3f4f6;
915 padding-bottom: 20px;
916 /* visible: range slider thumbs must not clip at section edges */
917 overflow: visible;
918 width: 100%;
919 box-sizing: border-box;
920 }
921
922 .yatra-filter-section:last-child {
923 border-bottom: none;
924 margin-bottom: 0;
925 padding-bottom: 0;
926 }
927
928 .yatra-filter-title {
929 display: flex;
930 justify-content: space-between;
931 align-items: center;
932 cursor: pointer;
933 font-size: 15px;
934 font-weight: 600;
935 color: #111827;
936 margin-bottom: 16px;
937 user-select: none;
938 padding: 4px 0;
939 transition: color 0.2s;
940 }
941
942 .yatra-filter-actions {
943 display: flex;
944 align-items: center;
945 gap: 8px;
946 }
947
948 .yatra-clear-section {
949 display: inline-flex;
950 align-items: center;
951 justify-content: center;
952 color: #94a3b8;
953 cursor: pointer;
954 padding: 4px;
955 border-radius: 6px;
956 transition: color 0.2s ease, background-color 0.2s ease;
957 text-decoration: none;
958 width: 28px;
959 height: 28px;
960 }
961
962 .yatra-clear-section:hover {
963 color: #dc2626;
964 background-color: #fef2f2;
965 }
966
967 .yatra-clear-section:active {
968 transform: scale(0.95);
969 }
970
971 .yatra-clear-section svg {
972 width: 14px;
973 height: 14px;
974 stroke-width: 2;
975 }
976
977 .yatra-filter-title-content {
978 display: flex;
979 align-items: center;
980 gap: 10px;
981 }
982
983 .yatra-filter-icon {
984 width: 18px;
985 height: 18px;
986 flex-shrink: 0;
987 color: #6b7280;
988 transition: color 0.2s;
989 }
990
991 .yatra-filter-title:hover .yatra-filter-icon {
992 color: #3b82f6;
993 }
994
995 .yatra-filter-title:hover {
996 color: #3b82f6;
997 }
998
999 .yatra-filter-arrow {
1000 transition: transform 0.2s;
1001 color: #6b7280;
1002 flex-shrink: 0;
1003 }
1004
1005 .yatra-filter-section.open .yatra-filter-arrow {
1006 transform: rotate(180deg);
1007 color: #3b82f6;
1008 }
1009
1010 .yatra-filter-content {
1011 display: block;
1012 overflow: visible;
1013 width: 100%;
1014 box-sizing: border-box;
1015 padding: 16px 0;
1016 }
1017
1018 /* Attribute items within Trip Attributes filter (stacked layout; trip.css grid uses same class names horizontally) */
1019 .yatra-filter-content .yatra-attribute-item {
1020 display: flex;
1021 flex-direction: column;
1022 align-items: stretch;
1023 width: 100%;
1024 min-width: 0;
1025 box-sizing: border-box;
1026 margin-bottom: 16px;
1027 padding: 14px 16px;
1028 background: #fff;
1029 border: 1px solid #e5e7eb;
1030 border-radius: 8px;
1031 }
1032
1033 .yatra-filter-content .yatra-attribute-item:last-child {
1034 margin-bottom: 0;
1035 }
1036
1037 .yatra-filter-content .yatra-attribute-label {
1038 display: flex;
1039 align-items: center;
1040 gap: 10px;
1041 margin-bottom: 12px;
1042 flex-shrink: 0;
1043 max-width: 100%;
1044 }
1045
1046 .yatra-filter-content .yatra-attribute-icon {
1047 width: 18px;
1048 height: 18px;
1049 flex-shrink: 0;
1050 display: inline-flex;
1051 align-items: center;
1052 justify-content: center;
1053 }
1054
1055 .yatra-filter-content .yatra-attribute-icon img {
1056 width: 18px !important;
1057 height: 18px !important;
1058 object-fit: contain !important;
1059 display: block;
1060 }
1061
1062 .yatra-filter-content .yatra-attribute-icon svg {
1063 width: 18px !important;
1064 height: 18px !important;
1065 color: #6b7280;
1066 }
1067
1068 .yatra-filter-content .yatra-attribute-name {
1069 font-size: 14px;
1070 font-weight: 600;
1071 color: #374151;
1072 line-height: 1.5;
1073 overflow-wrap: break-word;
1074 word-break: break-word;
1075 }
1076
1077 .yatra-filter-content .yatra-attribute-content {
1078 width: 100%;
1079 max-width: 100%;
1080 min-width: 0;
1081 display: block;
1082 flex: 1 1 auto;
1083 }
1084
1085 .yatra-filter-content .yatra-attribute-content input.yatra-filter-input {
1086 width: 100% !important;
1087 max-width: 100% !important;
1088 min-width: 0 !important;
1089 box-sizing: border-box !important;
1090 }
1091
1092 .yatra-filter-content .yatra-input-group {
1093 width: 100%;
1094 display: flex;
1095 flex-direction: column;
1096 gap: 12px;
1097 }
1098
1099 .yatra-filter-content .yatra-input-group input {
1100 width: 100% !important;
1101 max-width: 100% !important;
1102 min-width: 0 !important;
1103 box-sizing: border-box !important;
1104 }
1105
1106 /* Dark mode */
1107 .dark .yatra-filter-content .yatra-attribute-item {
1108 background: #1f2937;
1109 border-color: #374151;
1110 }
1111
1112 .dark .yatra-filter-content .yatra-attribute-icon svg {
1113 color: #9ca3af;
1114 }
1115
1116 .dark .yatra-filter-content .yatra-attribute-name {
1117 color: #e5e7eb;
1118 }
1119
1120 .yatra-filter-section:not(.open) .yatra-filter-content {
1121 display: none;
1122 }
1123
1124 /* Filter Toggle Animation */
1125 .yatra-filter-content {
1126 transition: all 0.3s ease;
1127 }
1128
1129 .yatra-filter-section.open .yatra-filter-content {
1130 animation: slideDown 0.3s ease;
1131 }
1132
1133 @keyframes slideDown {
1134 from {
1135 opacity: 0;
1136 max-height: 0;
1137 }
1138 to {
1139 opacity: 1;
1140 max-height: 500px;
1141 }
1142 }
1143
1144 /* Loading State */
1145 .yatra-filters-loading {
1146 position: relative;
1147 pointer-events: none;
1148 opacity: 0.6;
1149 }
1150
1151 .yatra-filters-loading::after {
1152 content: '';
1153 position: absolute;
1154 top: 0;
1155 left: 0;
1156 right: 0;
1157 bottom: 0;
1158 background: rgba(255, 255, 255, 0.8);
1159 display: flex;
1160 align-items: center;
1161 justify-content: center;
1162 z-index: 10;
1163 }
1164
1165 /* Price Range - dual slider (see .yatra-clear-filters in filter header block above) */
1166 .yatra-price-range {
1167 display: flex;
1168 flex-direction: column;
1169 gap: 24px;
1170 overflow: visible;
1171 }
1172
1173 .yatra-price-inputs {
1174 display: flex;
1175 align-items: center;
1176 gap: 16px;
1177 padding: 0;
1178 }
1179
1180 .yatra-price-input-group {
1181 flex: 1;
1182 display: flex;
1183 flex-direction: column;
1184 gap: 8px;
1185 }
1186
1187 .yatra-price-input-label {
1188 font-size: 12px;
1189 font-weight: 500;
1190 color: #6b7280;
1191 margin-bottom: 4px;
1192 }
1193
1194 .yatra-price-inputs input {
1195 width: 100%;
1196 padding: 10px 12px;
1197 border: 1px solid #cbd5e1;
1198 border-radius: 8px;
1199 font-size: 14px;
1200 font-weight: 500;
1201 color: #1e293b;
1202 background: #fff;
1203 transition: border-color 0.2s ease, box-shadow 0.2s ease;
1204 text-align: left;
1205 }
1206
1207 .yatra-price-inputs input:hover {
1208 border-color: #94a3b8;
1209 }
1210
1211 .yatra-price-inputs input:focus {
1212 outline: none;
1213 border-color: #3b82f6;
1214 box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
1215 }
1216
1217 .yatra-price-inputs input::placeholder {
1218 color: #9ca3af;
1219 font-weight: 400;
1220 }
1221
1222 .yatra-price-separator {
1223 color: #64748b;
1224 font-weight: 600;
1225 font-size: 14px;
1226 margin-top: 28px;
1227 flex-shrink: 0;
1228 align-self: flex-end;
1229 padding-bottom: 10px;
1230 }
1231
1232 /* Price dual-range: match trip-search layout; high specificity resists theme input/range rules */
1233 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider {
1234 position: relative !important;
1235 height: 36px !important;
1236 margin: 12px 0 10px !important;
1237 padding: 0 6px !important;
1238 box-sizing: border-box !important;
1239 background: transparent !important;
1240 border: none !important;
1241 border-radius: 0 !important;
1242 overflow: visible !important;
1243 }
1244
1245 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider-track {
1246 position: absolute !important;
1247 z-index: 0 !important;
1248 width: calc(100% - 16px) !important;
1249 height: 6px !important;
1250 left: 8px !important;
1251 top: 50% !important;
1252 transform: translateY(-50%) !important;
1253 background: #e5e7eb !important;
1254 border-radius: 3px !important;
1255 box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.08) !important;
1256 pointer-events: none !important;
1257 }
1258
1259 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider-range {
1260 position: absolute !important;
1261 z-index: 1 !important;
1262 height: 6px !important;
1263 top: 50% !important;
1264 transform: translateY(-50%) !important;
1265 background: linear-gradient(90deg, #3b82f6 0%, #2563eb 100%) !important;
1266 border-radius: 3px !important;
1267 box-shadow: 0 2px 6px rgba(59, 130, 246, 0.28) !important;
1268 pointer-events: none !important;
1269 }
1270
1271 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"] {
1272 position: absolute !important;
1273 left: 0 !important;
1274 width: 100% !important;
1275 max-width: none !important;
1276 min-width: 0 !important;
1277 height: 6px !important;
1278 margin: 0 !important;
1279 padding: 0 !important;
1280 border: 0 !important;
1281 background: transparent !important;
1282 -webkit-appearance: none !important;
1283 appearance: none !important;
1284 pointer-events: none !important;
1285 top: 50% !important;
1286 transform: translateY(-50%) !important;
1287 cursor: pointer !important;
1288 box-sizing: border-box !important;
1289 }
1290
1291 /* z-index intentionally not !important so listing-filters.js can raise the active thumb */
1292 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider .yatra-range-min {
1293 z-index: 3;
1294 }
1295
1296 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider .yatra-range-max {
1297 z-index: 4;
1298 }
1299
1300 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"]::-webkit-slider-runnable-track {
1301 height: 6px !important;
1302 background: transparent !important;
1303 border-radius: 3px !important;
1304 }
1305
1306 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"]::-webkit-slider-thumb {
1307 -webkit-appearance: none !important;
1308 appearance: none !important;
1309 width: 20px !important;
1310 height: 20px !important;
1311 border-radius: 50% !important;
1312 background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%) !important;
1313 border: 3px solid #3b82f6 !important;
1314 cursor: grab !important;
1315 pointer-events: all !important;
1316 box-shadow: 0 3px 8px rgba(59, 130, 246, 0.3), 0 1px 3px rgba(0, 0, 0, 0.1) !important;
1317 margin-top: -7px !important;
1318 }
1319
1320 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"]::-webkit-slider-thumb:hover {
1321 transform: scale(1.06) !important;
1322 box-shadow: 0 4px 12px rgba(59, 130, 246, 0.35) !important;
1323 }
1324
1325 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"]::-webkit-slider-thumb:active {
1326 cursor: grabbing !important;
1327 }
1328
1329 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"]::-moz-range-track {
1330 height: 6px !important;
1331 background: transparent !important;
1332 border-radius: 3px !important;
1333 }
1334
1335 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"]::-moz-range-thumb {
1336 width: 20px !important;
1337 height: 20px !important;
1338 border-radius: 50% !important;
1339 background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%) !important;
1340 border: 3px solid #3b82f6 !important;
1341 cursor: grab !important;
1342 pointer-events: all !important;
1343 box-shadow: 0 3px 8px rgba(59, 130, 246, 0.3), 0 1px 3px rgba(0, 0, 0, 0.1) !important;
1344 }
1345
1346 body .yatra-filter-sidebar .yatra-price-range .yatra-price-slider input[type="range"]::-moz-range-thumb:hover {
1347 transform: scale(1.06) !important;
1348 }
1349
1350 .yatra-price-display {
1351 font-size: 14px;
1352 font-weight: 600;
1353 color: #334155;
1354 text-align: center;
1355 padding: 10px 0 4px;
1356 margin-top: 4px;
1357 letter-spacing: 0.01em;
1358 }
1359
1360 /* Checkbox Group */
1361 .yatra-checkbox-group {
1362 display: flex;
1363 flex-direction: column;
1364 gap: 12px;
1365 width: 100%;
1366 box-sizing: border-box;
1367 }
1368
1369 /* Long sidebar checkbox lists: show first N, then "Show more" */
1370 .yatra-filter-collapsible.has-more:not(.is-expanded) .yatra-filter-option-more {
1371 display: none;
1372 }
1373
1374 .yatra-filter-show-more-toggle {
1375 margin-top: 2px;
1376 padding: 6px 12px;
1377 align-self: flex-start;
1378 background: transparent;
1379 border: none;
1380 color: #3b82f6;
1381 font-size: 13px;
1382 font-weight: 500;
1383 cursor: pointer;
1384 border-radius: 6px;
1385 font-family: inherit;
1386 line-height: 1.3;
1387 text-align: left;
1388 }
1389
1390 .yatra-filter-show-more-toggle:hover {
1391 background: rgba(59, 130, 246, 0.08);
1392 color: #2563eb;
1393 }
1394
1395 .yatra-filter-collapsible.is-expanded .yatra-filter-show-more-label {
1396 display: none;
1397 }
1398
1399 .yatra-filter-collapsible:not(.is-expanded) .yatra-filter-show-less-label {
1400 display: none;
1401 }
1402
1403 .yatra-checkbox-label {
1404 display: flex;
1405 align-items: center;
1406 gap: 12px;
1407 cursor: pointer;
1408 font-size: 14px;
1409 color: #374151;
1410 transition: all 0.2s ease;
1411 padding: 8px 12px;
1412 border-radius: 8px;
1413 margin: -4px -12px;
1414 width: calc(100% + 24px);
1415 box-sizing: border-box;
1416 word-wrap: break-word;
1417 overflow: hidden;
1418 }
1419
1420 .yatra-checkbox-label:hover {
1421 background: rgba(59, 130, 246, 0.05);
1422 color: #1e293b;
1423 }
1424
1425 .yatra-checkbox-label input[type="checkbox"] {
1426 width: 16px;
1427 height: 16px;
1428 cursor: pointer;
1429 accent-color: #3b82f6;
1430 margin: 0;
1431 flex-shrink: 0;
1432 }
1433
1434 .yatra-checkbox-label span:not(.yatra-filter-count) {
1435 flex: 1;
1436 }
1437
1438 .yatra-filter-count {
1439 margin-left: auto;
1440 font-size: 12px;
1441 color: #9ca3af;
1442 font-weight: 500;
1443 }
1444
1445 .yatra-rating-display {
1446 display: flex;
1447 align-items: center;
1448 gap: 6px;
1449 flex: 1;
1450 }
1451
1452 .yatra-rating-display svg {
1453 flex-shrink: 0;
1454 }
1455
1456 /* Main Content Area */
1457 .yatra-listing-content {
1458 min-width: 0;
1459 }
1460
1461 .yatra-trip-card {
1462 background: white;
1463 border-radius: 12px;
1464 overflow: hidden;
1465 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
1466 transition: transform 0.2s, box-shadow 0.2s;
1467 cursor: pointer;
1468 display: flex;
1469 flex-direction: column;
1470 height: 100%;
1471 }
1472
1473 .yatra-trip-card:hover {
1474 transform: translateY(-2px);
1475 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
1476 }
1477
1478 .yatra-trip-grid.list-view .yatra-trip-card {
1479 flex-direction: row;
1480 max-height: none;
1481 }
1482
1483 .yatra-destination-card {
1484 background: #fff;
1485 border-radius: 12px;
1486 overflow: hidden;
1487 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
1488 transition: transform 0.2s, box-shadow 0.2s;
1489 cursor: pointer;
1490 display: flex;
1491 flex-direction: column;
1492 }
1493
1494 .yatra-destination-grid.list-view .yatra-destination-card {
1495 flex-direction: row;
1496 align-items: stretch;
1497 max-height: none;
1498 min-height: 240px;
1499 width: 100%;
1500 }
1501
1502 .yatra-activity-grid.list-view .yatra-activity-card {
1503 flex-direction: row;
1504 align-items: stretch;
1505 max-height: none;
1506 min-height: 240px;
1507 width: 100%;
1508 }
1509
1510 .yatra-destination-grid.list-view .yatra-destination-image,
1511 .yatra-activity-grid.list-view .yatra-activity-image {
1512 width: var(--yatra-listing-list-media-width);
1513 min-width: var(--yatra-listing-list-media-width);
1514 height: auto;
1515 min-height: 240px;
1516 flex-shrink: 0;
1517 align-self: stretch;
1518 }
1519
1520 .yatra-destination-grid.list-view .yatra-destination-content {
1521 padding: 20px;
1522 flex: 1;
1523 display: flex;
1524 flex-direction: column;
1525 justify-content: space-between;
1526 }
1527
1528 .yatra-trip-card:hover {
1529 transform: translateY(-2px);
1530 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
1531 }
1532
1533 .yatra-trip-image {
1534 position: relative;
1535 width: 100%;
1536 height: 220px;
1537 overflow: hidden;
1538 background: #e5e7eb;
1539 flex-shrink: 0;
1540 }
1541
1542 .yatra-trip-grid.list-view .yatra-trip-image,
1543 .yatra-trip-grid.yatra-list-view .yatra-trip-image {
1544 width: var(--yatra-listing-list-media-width);
1545 min-width: var(--yatra-listing-list-media-width);
1546 height: auto;
1547 min-height: 240px;
1548 flex-shrink: 0;
1549 align-self: stretch;
1550 }
1551
1552 .yatra-trip-image img {
1553 width: 100%;
1554 height: 100%;
1555 object-fit: cover;
1556 }
1557
1558
1559 .yatra-discount-badge {
1560 position: absolute;
1561 top: 12px;
1562 left: 12px;
1563 background: #ef4444;
1564 color: #fff;
1565 padding: 4px 10px;
1566 border-radius: 4px;
1567 font-size: 12px;
1568 font-weight: 600;
1569 z-index: 2;
1570 }
1571
1572 .yatra-favorite-btn {
1573 position: absolute !important;
1574 top: 12px !important;
1575 right: 12px !important;
1576 width: 40px !important;
1577 height: 40px !important;
1578 background: #ffffff !important;
1579 border: 1px solid rgba(0, 0, 0, 0.1) !important;
1580 border-radius: 50% !important;
1581 cursor: pointer !important;
1582 display: flex !important;
1583 align-items: center !important;
1584 justify-content: center !important;
1585 color: #6b7280 !important;
1586 transition: all 0.2s !important;
1587 z-index: 100 !important;
1588 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
1589 padding: 0 !important;
1590 margin: 0 !important;
1591 opacity: 1 !important;
1592 visibility: visible !important;
1593 }
1594
1595 .yatra-favorite-btn:hover {
1596 background: #ffffff !important;
1597 color: #ef4444 !important;
1598 transform: scale(1.1) !important;
1599 border-color: #ef4444 !important;
1600 box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3) !important;
1601 }
1602
1603 .yatra-favorite-btn svg {
1604 width: 20px !important;
1605 height: 20px !important;
1606 stroke-width: 2 !important;
1607 display: block !important;
1608 }
1609
1610 .yatra-favorite-btn.saved,
1611 .yatra-favorite-btn.is-saved {
1612 background: #ffffff !important;
1613 color: #ef4444 !important;
1614 border-color: #ef4444 !important;
1615 }
1616
1617 .yatra-favorite-btn.saved svg,
1618 .yatra-favorite-btn.is-saved svg {
1619 fill: #ef4444 !important;
1620 stroke: #ef4444 !important;
1621 }
1622
1623 .yatra-favorite-btn.saved:hover,
1624 .yatra-favorite-btn.is-saved:hover {
1625 background: #fee2e2 !important;
1626 color: #dc2626 !important;
1627 border-color: #dc2626 !important;
1628 }
1629
1630 .yatra-trip-content {
1631 padding: 20px;
1632 display: flex;
1633 flex-direction: column;
1634 flex: 1;
1635 }
1636
1637 .yatra-trip-grid.list-view .yatra-trip-content,
1638 .yatra-trip-grid.yatra-list-view .yatra-trip-content {
1639 padding: 24px;
1640 }
1641
1642 .yatra-trip-meta {
1643 display: flex;
1644 align-items: center;
1645 gap: 8px;
1646 margin-bottom: 12px;
1647 font-size: 13px;
1648 color: #6b7280;
1649 flex-wrap: wrap;
1650 }
1651
1652 .yatra-trip-separator {
1653 color: #d1d5db;
1654 }
1655
1656 .yatra-trip-title {
1657 font-size: 18px;
1658 font-weight: 600;
1659 color: #1f2937;
1660 margin-bottom: 12px;
1661 line-height: 1.4;
1662 }
1663
1664 .yatra-trip-highlights {
1665 display: flex;
1666 flex-wrap: wrap;
1667 gap: 6px;
1668 margin-bottom: 12px;
1669 }
1670
1671 .yatra-highlight-badge {
1672 padding: 4px 10px;
1673 background: #eff6ff;
1674 color: #1e40af;
1675 border-radius: 4px;
1676 font-size: 12px;
1677 font-weight: 500;
1678 text-decoration: none;
1679 transition: all 0.2s ease;
1680 }
1681
1682 a.yatra-highlight-link {
1683 cursor: pointer;
1684 }
1685
1686 a.yatra-highlight-link:hover {
1687 background: #dbeafe;
1688 color: #1d4ed8;
1689 text-decoration: none;
1690 }
1691
1692
1693 .yatra-rating-stars {
1694 display: flex;
1695 align-items: center;
1696 gap: 4px;
1697 }
1698
1699 .yatra-rating-value {
1700 font-size: 14px;
1701 font-weight: 600;
1702 color: #1f2937;
1703 }
1704
1705 .yatra-reviews-count {
1706 font-size: 13px;
1707 }
1708
1709 .yatra-trip-footer {
1710 display: flex;
1711 align-items: center;
1712 justify-content: space-between;
1713 margin-top: auto;
1714 padding-top: 16px;
1715 border-top: 1px solid #f3f4f6;
1716 }
1717
1718 .yatra-trip-price {
1719 display: flex;
1720 flex-direction: row;
1721 }
1722
1723 .yatra-original-price {
1724 text-decoration: line-through;
1725 text-decoration-thickness: 2px;
1726 text-decoration-color: #ef4444;
1727 color: #6b7280;
1728 font-size: 0.95rem;
1729 font-weight: 500;
1730 background: rgba(239, 68, 68, 0.08);
1731 padding: 1px 4px;
1732 border-radius: 3px;
1733 border: 1px solid rgba(239, 68, 68, 0.15);
1734 line-height: 1;
1735 }
1736
1737 .yatra-current-price {
1738 font-size: 22px;
1739 font-weight: 700;
1740 color: #3b82f6;
1741 line-height: 1;
1742 }
1743
1744 .yatra-price-note {
1745 font-size: 11px;
1746 color: #9ca3af;
1747 margin-top: 4px;
1748 }
1749
1750 /* Complete Trip Card Styling */
1751 .yatra-trip-card {
1752 background: #ffffff;
1753 border-radius: 12px;
1754 overflow: hidden;
1755 transition: all 0.3s ease;
1756 height: 100%;
1757 display: flex;
1758 flex-direction: column;
1759 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
1760 }
1761
1762 .yatra-trip-card:hover {
1763 box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
1764 transform: translateY(-2px);
1765 }
1766
1767 /* Image Section */
1768 .yatra-trip-card-image {
1769 position: relative;
1770 width: 100%;
1771 height: 280px;
1772 overflow: hidden;
1773 background: #f8fafc;
1774 }
1775
1776 .yatra-trip-card-image img {
1777 width: 100%;
1778 height: 100%;
1779 object-fit: cover;
1780 }
1781
1782 /* Discount Badge */
1783 .yatra-discount-badge {
1784 position: absolute;
1785 top: 12px;
1786 left: 12px;
1787 background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
1788 color: white;
1789 padding: 4px 8px;
1790 border-radius: 12px;
1791 font-size: 0.75rem;
1792 font-weight: 600;
1793 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
1794 z-index: 2;
1795 }
1796
1797 /* Destination Section */
1798 .yatra-trip-destinations {
1799 background: #f8fafc;
1800 padding: 10px 16px;
1801 display: flex;
1802 align-items: center;
1803 gap: 6px;
1804 }
1805
1806 /* List view override for destination row spacing */
1807 .yatra-trip-grid.list-view .yatra-trip-destinations {
1808 margin: 8px -16px 8px -16px;
1809 padding: 10px 20px;
1810 background: #f8fafc;
1811 width: calc(100% + 32px);
1812 border-radius: 0;
1813 }
1814
1815 .yatra-trip-destinations .location-icon {
1816 color: #6366f1;
1817 flex-shrink: 0;
1818 }
1819
1820 .yatra-trip-destinations .destination-link {
1821 color: #374151;
1822 text-decoration: none;
1823 font-size: 0.875rem;
1824 font-weight: 500;
1825 transition: color 0.2s ease;
1826 }
1827
1828 .yatra-trip-destinations .destination-link:hover {
1829 color: #6366f1;
1830 text-decoration: none;
1831 }
1832
1833 .yatra-trip-destinations .yatra-trip-card-location-text {
1834 color: #374151;
1835 font-size: 0.875rem;
1836 font-weight: 500;
1837 }
1838
1839 .yatra-trip-traveler-types {
1840 display: flex;
1841 align-items: flex-start;
1842 gap: 8px;
1843 margin: 0 0 12px 0;
1844 padding-top: 10px;
1845 border-top: 1px solid #f1f5f9;
1846 }
1847
1848 .yatra-trip-traveler-types-icon {
1849 color: #6366f1;
1850 flex-shrink: 0;
1851 margin-top: 2px;
1852 }
1853
1854 .yatra-trip-traveler-types-inner {
1855 display: flex;
1856 flex-direction: column;
1857 gap: 6px;
1858 min-width: 0;
1859 }
1860
1861 .yatra-trip-traveler-types-label {
1862 font-size: 0.65rem;
1863 font-weight: 600;
1864 text-transform: uppercase;
1865 letter-spacing: 0.05em;
1866 color: #64748b;
1867 }
1868
1869 .yatra-trip-traveler-types-pills {
1870 display: flex;
1871 flex-wrap: wrap;
1872 gap: 6px;
1873 }
1874
1875 .yatra-traveler-tier-pill {
1876 display: inline-block;
1877 padding: 3px 10px;
1878 border-radius: 999px;
1879 font-size: 0.75rem;
1880 font-weight: 500;
1881 background: #eef2ff;
1882 color: #4338ca;
1883 border: 1px solid #c7d2fe;
1884 }
1885
1886 /* Content Section */
1887 .yatra-trip-content {
1888 padding: 16px;
1889 }
1890
1891 .yatra-trip-title {
1892 font-size: 1.25rem;
1893 font-weight: 600;
1894 color: #1f2937;
1895 margin-bottom: 12px;
1896 line-height: 1.4;
1897 display: -webkit-box;
1898 -webkit-line-clamp: 2;
1899 line-clamp: 2;
1900 -webkit-box-orient: vertical;
1901 overflow: hidden;
1902 }
1903
1904 .yatra-trip-title-link {
1905 color: inherit;
1906 text-decoration: none;
1907 transition: color 0.2s ease;
1908 }
1909
1910 .yatra-trip-title-link:hover {
1911 color: #2563eb;
1912 text-decoration: none;
1913 }
1914
1915 .yatra-trip-card-meta {
1916 display: flex;
1917 flex-wrap: wrap;
1918 align-items: center;
1919 gap: 8px;
1920 margin: -4px 0 12px 0;
1921 }
1922
1923 .yatra-trip-type-chip {
1924 display: inline-block;
1925 padding: 2px 10px;
1926 border-radius: 6px;
1927 font-size: 0.7rem;
1928 font-weight: 600;
1929 text-transform: uppercase;
1930 letter-spacing: 0.04em;
1931 background: #f1f5f9;
1932 color: #475569;
1933 }
1934
1935 .yatra-trip-primary-category-chip {
1936 display: inline-block;
1937 padding: 2px 10px;
1938 border-radius: 6px;
1939 font-size: 0.75rem;
1940 font-weight: 500;
1941 background: #eff6ff;
1942 color: #1d4ed8;
1943 text-decoration: none;
1944 border: 1px solid #bfdbfe;
1945 transition: background-color 0.2s ease, color 0.2s ease;
1946 }
1947
1948 .yatra-trip-primary-category-chip:hover {
1949 background: #dbeafe;
1950 color: #1e40af;
1951 }
1952
1953 .yatra-trip-primary-category-chip--text {
1954 border-style: dashed;
1955 cursor: default;
1956 }
1957
1958 /* Trip Info Row */
1959 .yatra-trip-info-row {
1960 display: flex;
1961 align-items: center;
1962 gap: 8px;
1963 margin-bottom: 16px;
1964 flex-wrap: wrap;
1965 }
1966
1967 .yatra-info-badge {
1968 display: inline-flex;
1969 align-items: center;
1970 gap: 4px;
1971 padding: 4px 8px;
1972 background: #f3f4f6;
1973 color: #374151;
1974 border-radius: 12px;
1975 font-size: 0.75rem;
1976 font-weight: 500;
1977 }
1978
1979 .yatra-info-badge.duration {
1980 background: #dbeafe;
1981 color: #1d4ed8;
1982 }
1983
1984 .yatra-info-badge svg {
1985 width: 12px;
1986 height: 12px;
1987 }
1988
1989 /* Activities Section */
1990 .yatra-trip-activities {
1991 display: flex;
1992 flex-wrap: wrap;
1993 gap: 6px;
1994 margin-bottom: 16px;
1995 align-items: center;
1996 }
1997
1998 /* Categories Compact Section */
1999 .yatra-trip-categories-compact {
2000 display: flex;
2001 align-items: center;
2002 gap: 6px;
2003 margin-bottom: 16px;
2004 }
2005
2006 .yatra-category-icon {
2007 width: 16px;
2008 height: 16px;
2009 display: flex;
2010 align-items: center;
2011 justify-content: center;
2012 color: #6366f1;
2013 flex-shrink: 0;
2014 }
2015
2016 .yatra-category-icon svg {
2017 width: 14px;
2018 height: 14px;
2019 }
2020
2021 .yatra-categories-text {
2022 font-size: 0.8rem;
2023 color: #6b7280;
2024 line-height: 1.2;
2025 }
2026
2027 .yatra-category-link {
2028 color: #6b7280;
2029 text-decoration: none;
2030 transition: color 0.2s ease;
2031 }
2032
2033 .yatra-category-link:hover {
2034 color: #6366f1;
2035 text-decoration: none;
2036 }
2037
2038 .yatra-tag {
2039 display: inline-block;
2040 padding: 5px 12px;
2041 border-radius: 16px;
2042 font-size: 0.8rem;
2043 font-weight: 500;
2044 text-decoration: none;
2045 /* Avoid transition: all — only animate stable properties (no transform on hover; moving the link breaks hit-testing and causes flicker). */
2046 transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
2047 border: 1px solid transparent;
2048 box-shadow: 0 0 0 rgba(29, 78, 216, 0);
2049 }
2050
2051 .yatra-tag.activity-tag {
2052 background: #eff6ff;
2053 color: #1d4ed8;
2054 border-color: #bfdbfe;
2055 }
2056
2057 .yatra-tag.activity-tag:hover {
2058 background: #dbeafe;
2059 color: #1e40af;
2060 text-decoration: none;
2061 box-shadow: 0 2px 8px rgba(29, 78, 216, 0.14);
2062 }
2063
2064 /* Difficulty Overlay */
2065 .yatra-difficulty-overlay {
2066 position: absolute;
2067 bottom: 12px;
2068 right: 12px;
2069 background: rgba(34, 197, 94, 0.9);
2070 color: white;
2071 padding: 6px 10px;
2072 border-radius: 16px;
2073 font-size: 0.75rem;
2074 font-weight: 600;
2075 display: flex;
2076 align-items: center;
2077 gap: 4px;
2078 backdrop-filter: blur(4px);
2079 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
2080 }
2081
2082 .yatra-difficulty-overlay svg {
2083 width: 14px;
2084 height: 14px;
2085 opacity: 0.9;
2086 }
2087
2088 .yatra-difficulty-overlay .difficulty-icon {
2089 width: 14px;
2090 height: 14px;
2091 }
2092
2093 /* Rating Section - consolidated with main rule above */
2094
2095 .yatra-rating-stars {
2096 display: flex;
2097 align-items: center;
2098 gap: 4px;
2099 }
2100
2101 .yatra-rating-value {
2102 font-weight: 600;
2103 color: #1f2937;
2104 font-size: 0.875rem;
2105 }
2106
2107 .yatra-reviews-count {
2108 color: #6b7280;
2109 font-size: 0.8rem;
2110 }
2111
2112 /* Footer */
2113 .yatra-trip-footer {
2114 display: flex;
2115 align-items: center;
2116 justify-content: space-between;
2117 padding-top: 12px;
2118 }
2119
2120 .yatra-trip-price {
2121 font-size: 1.125rem;
2122 font-weight: 700;
2123 color: #2563eb;
2124 display: flex;
2125 align-items: baseline;
2126 gap: 8px;
2127 flex-wrap: wrap;
2128 }
2129
2130 /* Wishlist/Favorite Button Styles */
2131 .yatra-favorite-btn {
2132 position: absolute;
2133 top: 12px;
2134 right: 12px;
2135 background: rgba(255, 255, 255, 0.9);
2136 border: none;
2137 border-radius: 50%;
2138 width: 36px;
2139 height: 36px;
2140 display: flex;
2141 align-items: center;
2142 justify-content: center;
2143 cursor: pointer;
2144 transition: all 0.2s ease;
2145 color: #6b7280;
2146 z-index: 2;
2147 }
2148
2149 .yatra-favorite-btn:hover {
2150 background: rgba(255, 255, 255, 1);
2151 transform: scale(1.1);
2152 color: #ef4444;
2153 }
2154
2155 .yatra-favorite-btn.saved {
2156 color: #ef4444;
2157 background: rgba(255, 255, 255, 1);
2158 }
2159
2160 .yatra-favorite-btn.loading {
2161 opacity: 0.6;
2162 cursor: not-allowed;
2163 }
2164
2165 .yatra-favorite-btn:disabled {
2166 opacity: 0.6;
2167 cursor: not-allowed;
2168 }
2169
2170 /* Pagination */
2171 .yatra-listing-pagination {
2172 display: flex;
2173 justify-content: center;
2174 align-items: center;
2175 gap: 8px;
2176 margin-top: 40px;
2177 }
2178
2179 /* Trip listing: pagination lives in the main column (not below the full sidebar+content row). */
2180 .yatra-trip-listing .yatra-listing-content > .yatra-listing-pagination--trip-content {
2181 width: 100%;
2182 margin-top: 24px;
2183 flex-wrap: wrap;
2184 }
2185
2186 .yatra-pagination-btn {
2187 padding: 8px 16px;
2188 border: 1px solid #e5e7eb;
2189 background: #fff;
2190 border-radius: 6px;
2191 cursor: pointer;
2192 font-size: 14px;
2193 transition: all 0.2s;
2194 color: #374151;
2195 }
2196
2197 .yatra-pagination-btn:hover:not(:disabled) {
2198 border-color: #3b82f6;
2199 color: #3b82f6;
2200 }
2201
2202 .yatra-pagination-btn.active {
2203 border-color: #3b82f6;
2204 background: #3b82f6;
2205 color: #fff;
2206 font-weight: 600;
2207 }
2208
2209 .yatra-pagination-btn:disabled {
2210 opacity: 0.5;
2211 cursor: not-allowed;
2212 }
2213
2214 .yatra-pagination-btn.disabled {
2215 opacity: 0.5;
2216 cursor: default;
2217 pointer-events: none;
2218 }
2219
2220 a.yatra-pagination-btn,
2221 span.yatra-pagination-btn.disabled {
2222 display: inline-flex;
2223 align-items: center;
2224 justify-content: center;
2225 gap: 6px;
2226 }
2227
2228 .yatra-pagination-btn .yatra-btn-icon {
2229 width: 0.875rem;
2230 height: 0.875rem;
2231 flex-shrink: 0;
2232 }
2233
2234 /* -------------------------------------------------------------------------
2235 Unified primary CTAs (PHP: yatra-btn + yatra-btn-primary + yatra-archive-card-cta + yatra_svg_icon)
2236 trip.css defines base .yatra-btn; icons use .yatra-btn-icon
2237 ------------------------------------------------------------------------- */
2238 .yatra-btn .yatra-btn-icon {
2239 width: 1.125rem;
2240 height: 1.125rem;
2241 flex-shrink: 0;
2242 }
2243
2244 .yatra-archive-card-cta.yatra-btn {
2245 display: inline-flex;
2246 align-items: center;
2247 justify-content: center;
2248 gap: 0.5rem;
2249 text-decoration: none !important;
2250 }
2251
2252 .yatra-destination-content .yatra-archive-card-cta.yatra-btn,
2253 .yatra-activity-content .yatra-archive-card-cta.yatra-btn,
2254 .yatra-category-content .yatra-archive-card-cta.yatra-btn {
2255 width: 100%;
2256 margin-top: 4px;
2257 box-sizing: border-box;
2258 }
2259
2260 .yatra-category-content .yatra-archive-card-cta.yatra-btn:disabled {
2261 opacity: 0.55;
2262 cursor: not-allowed;
2263 }
2264
2265 .yatra-trip-footer .yatra-archive-card-cta.yatra-btn {
2266 padding: 10px 18px;
2267 font-size: 14px;
2268 white-space: nowrap;
2269 flex-shrink: 0;
2270 }
2271
2272 /* Destination / taxonomy archives: align toggle with trip listing (gray track + white active segment) */
2273 .yatra-destination-listing .yatra-results-controls .yatra-view-toggle,
2274 .yatra-taxonomy-page .yatra-results-controls .yatra-view-toggle {
2275 margin-left: 8px;
2276 }
2277
2278 .yatra-destination-listing .yatra-results-controls .yatra-view-btn.active,
2279 .yatra-taxonomy-page .yatra-results-controls .yatra-view-btn.active {
2280 background: #ffffff !important;
2281 color: #1d4ed8 !important;
2282 box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12), 0 0 0 1px #93c5fd !important;
2283 }
2284
2285 .yatra-destination-listing .yatra-results-controls .yatra-view-btn:not(.active),
2286 .yatra-taxonomy-page .yatra-results-controls .yatra-view-btn:not(.active) {
2287 color: #64748b !important;
2288 background: transparent !important;
2289 opacity: 1;
2290 }
2291
2292 /* Responsive Styles */
2293 @media (max-width: 1024px) {
2294 .yatra-listing-layout {
2295 display: grid;
2296 grid-template-columns: minmax(220px, 280px) 1fr;
2297 gap: 20px;
2298 }
2299 }
2300
2301 @media (max-width: 768px) {
2302 .yatra-listing-container {
2303 padding: 16px;
2304 }
2305
2306 .yatra-search-form {
2307 flex-wrap: wrap;
2308 }
2309
2310 .yatra-search-field {
2311 min-width: calc(50% - 6px);
2312 }
2313
2314 .yatra-search-btn {
2315 width: 100%;
2316 justify-content: center;
2317 }
2318
2319 .yatra-results-header {
2320 flex-direction: column;
2321 align-items: flex-start;
2322 gap: 16px;
2323 }
2324
2325 .yatra-results-controls {
2326 width: 100%;
2327 justify-content: space-between;
2328 }
2329
2330 .yatra-listing-layout {
2331 display: grid;
2332 grid-template-columns: 1fr;
2333 }
2334
2335 .yatra-filter-sidebar {
2336 position: static;
2337 margin-bottom: 24px;
2338 max-width: none;
2339 }
2340
2341 .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
2342 .yatra-listing-content-full .yatra-trip-grid:not(.list-view):not(.yatra-list-view),
2343 .yatra-listing-page .yatra-destination-grid:not(.list-view),
2344 .yatra-listing-page .yatra-activity-grid:not(.list-view),
2345 .yatra-listing-page .yatra-category-grid:not(.list-view) {
2346 grid-template-columns: 1fr;
2347 }
2348
2349 .yatra-trip-grid.list-view .yatra-trip-card,
2350 .yatra-listing-content-full .yatra-trip-grid.list-view .yatra-trip-card {
2351 flex-direction: column;
2352 max-height: none;
2353 }
2354
2355 .yatra-trip-grid.list-view .yatra-trip-image,
2356 .yatra-listing-content-full .yatra-trip-grid.list-view .yatra-trip-image {
2357 width: 100%;
2358 height: 220px;
2359 }
2360
2361 .yatra-destination-grid.list-view .yatra-destination-card,
2362 .yatra-activity-grid.list-view .yatra-activity-card,
2363 .yatra-category-grid.list-view .yatra-category-card {
2364 flex-direction: column;
2365 max-height: none;
2366 min-height: auto;
2367 }
2368
2369 .yatra-destination-grid.list-view .yatra-destination-image,
2370 .yatra-activity-grid.list-view .yatra-activity-image,
2371 .yatra-category-grid.list-view .yatra-category-image {
2372 width: 100%;
2373 min-width: 100%;
2374 height: 220px;
2375 min-height: 220px;
2376 }
2377
2378 .yatra-destination-grid.list-view .yatra-destination-stats,
2379 .yatra-activity-grid.list-view .yatra-activity-stats {
2380 flex-direction: column;
2381 gap: 12px;
2382 }
2383
2384 .yatra-destination-grid.list-view .yatra-destination-stat,
2385 .yatra-activity-grid.list-view .yatra-activity-stat {
2386 border-right: none;
2387 border-bottom: 1px solid #e5e7eb;
2388 padding-bottom: 12px;
2389 justify-content: flex-start;
2390 }
2391
2392 .yatra-destination-grid.list-view .yatra-destination-stat:last-child,
2393 .yatra-activity-grid.list-view .yatra-activity-stat:last-child {
2394 border-bottom: none;
2395 padding-bottom: 0;
2396 }
2397
2398 .yatra-destination-grid.list-view .yatra-archive-card-cta.yatra-btn,
2399 .yatra-activity-grid.list-view .yatra-archive-card-cta.yatra-btn {
2400 width: 100%;
2401 }
2402
2403 .yatra-destination-stats,
2404 .yatra-activity-stats {
2405 flex-direction: row;
2406 justify-content: space-around;
2407 }
2408
2409 .yatra-trip-footer {
2410 flex-direction: column;
2411 align-items: flex-start;
2412 gap: 12px;
2413 }
2414
2415 }
2416
2417 /* Category Header */
2418 .yatra-category-header {
2419 display: flex;
2420 justify-content: space-between;
2421 align-items: flex-start;
2422 margin-bottom: 32px;
2423 padding-bottom: 20px;
2424 border-bottom: 1px solid #e5e7eb;
2425 }
2426
2427 .yatra-category-header-content h1 {
2428 font-size: 32px;
2429 font-weight: 700;
2430 color: #1f2937;
2431 margin-bottom: 8px;
2432 }
2433
2434 .yatra-category-header-content p {
2435 font-size: 16px;
2436 color: #6b7280;
2437 }
2438
2439 /* Destination Header */
2440 .yatra-destination-header {
2441 display: flex;
2442 justify-content: space-between;
2443 align-items: flex-start;
2444 margin-bottom: 32px;
2445 padding-bottom: 20px;
2446 border-bottom: 1px solid #e5e7eb;
2447 }
2448
2449 .yatra-destination-header-content h1 {
2450 font-size: 32px;
2451 font-weight: 700;
2452 color: #1f2937;
2453 margin-bottom: 8px;
2454 }
2455
2456 .yatra-destination-header-content p {
2457 font-size: 16px;
2458 color: #6b7280;
2459 }
2460
2461 /* Activity Header */
2462 .yatra-activity-header {
2463 display: flex;
2464 justify-content: space-between;
2465 align-items: flex-start;
2466 margin-bottom: 32px;
2467 padding-bottom: 20px;
2468 border-bottom: 1px solid #e5e7eb;
2469 }
2470
2471 .yatra-activity-header-content h1 {
2472 font-size: 32px;
2473 font-weight: 700;
2474 color: #1f2937;
2475 margin-bottom: 8px;
2476 }
2477
2478 .yatra-activity-header-content p {
2479 font-size: 16px;
2480 color: #6b7280;
2481 }
2482
2483 /* Destination, Activity, Category Listing Styles (grid columns: unified block near top of file) */
2484
2485 .yatra-destination-grid.list-view,
2486 .yatra-activity-grid.list-view,
2487 .yatra-category-grid.list-view {
2488 display: grid;
2489 grid-template-columns: 1fr;
2490 gap: var(--yatra-listing-list-row-gap);
2491 align-content: start;
2492 }
2493
2494 .yatra-destination-card,
2495 .yatra-activity-card,
2496 .yatra-category-card {
2497 background: #fff;
2498 border-radius: 12px;
2499 overflow: hidden;
2500 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
2501 transition: all 0.3s ease;
2502 cursor: pointer;
2503 }
2504
2505 .yatra-destination-card:hover,
2506 .yatra-activity-card:hover,
2507 .yatra-category-card:hover {
2508 transform: translateY(-4px);
2509 box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
2510 }
2511
2512
2513 .yatra-destination-image img,
2514 .yatra-activity-image img {
2515 transition: transform 0.4s ease;
2516 }
2517
2518 .yatra-destination-image,
2519 .yatra-activity-image,
2520 .yatra-category-image {
2521 position: relative;
2522 width: 100%;
2523 height: 300px;
2524 overflow: hidden;
2525 }
2526
2527 .yatra-destination-grid.list-view .yatra-destination-overlay h3 {
2528 font-size: 24px;
2529 text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
2530 }
2531
2532 .yatra-destination-grid.list-view .yatra-destination-content p {
2533 font-size: 15px;
2534 margin-bottom: 20px;
2535 line-height: 1.7;
2536 color: #4b5563;
2537 }
2538
2539 .yatra-destination-grid.list-view .yatra-destination-stats,
2540 .yatra-activity-grid.list-view .yatra-activity-stats {
2541 flex-direction: row;
2542 gap: 24px;
2543 padding: 16px 20px;
2544 background: #f9fafb;
2545 border-radius: 10px;
2546 margin-bottom: 20px;
2547 }
2548
2549 .yatra-destination-grid.list-view .yatra-destination-stat,
2550 .yatra-activity-grid.list-view .yatra-activity-stat {
2551 flex: 1;
2552 justify-content: center;
2553 padding: 0;
2554 border-right: 1px solid #e5e7eb;
2555 }
2556
2557 .yatra-destination-grid.list-view .yatra-destination-stat:last-child,
2558 .yatra-activity-grid.list-view .yatra-activity-stat:last-child {
2559 border-right: none;
2560 }
2561
2562 .yatra-destination-grid.list-view .yatra-archive-card-cta.yatra-btn,
2563 .yatra-activity-grid.list-view .yatra-archive-card-cta.yatra-btn {
2564 align-self: flex-start;
2565 padding: 12px 28px;
2566 }
2567
2568 /* List view - Activity specific */
2569 .yatra-activity-grid.list-view .yatra-activity-content h3 {
2570 font-size: 22px;
2571 margin-bottom: 10px;
2572 color: #111827;
2573 }
2574
2575 .yatra-activity-grid.list-view .yatra-activity-content p {
2576 font-size: 15px;
2577 margin-bottom: 20px;
2578 line-height: 1.7;
2579 color: #4b5563;
2580 flex: none;
2581 }
2582
2583 .yatra-category-grid.list-view .yatra-category-card {
2584 display: flex;
2585 flex-direction: row;
2586 align-items: stretch;
2587 max-height: none;
2588 min-height: 240px;
2589 }
2590
2591 .yatra-category-grid.list-view .yatra-category-image {
2592 width: var(--yatra-listing-list-media-width);
2593 min-width: var(--yatra-listing-list-media-width);
2594 height: auto;
2595 min-height: 240px;
2596 flex-shrink: 0;
2597 align-self: stretch;
2598 }
2599
2600 .yatra-category-grid.list-view .yatra-category-content {
2601 flex: 1;
2602 display: flex;
2603 flex-direction: column;
2604 justify-content: space-between;
2605 }
2606
2607 .yatra-category-grid.list-view .yatra-category-stats {
2608 flex-direction: row;
2609 justify-content: space-around;
2610 margin-bottom: 16px;
2611 }
2612
2613 .yatra-destination-card,
2614 .yatra-activity-card,
2615 .yatra-category-card {
2616 background: #fff;
2617 border-radius: 12px;
2618 overflow: hidden;
2619 box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
2620 transition: all 0.3s ease;
2621 cursor: pointer;
2622 }
2623
2624 .yatra-destination-card:hover,
2625 .yatra-activity-card:hover,
2626 .yatra-category-card:hover {
2627 transform: translateY(-4px);
2628 box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
2629 }
2630
2631
2632 .yatra-destination-image img,
2633 .yatra-activity-image img {
2634 transition: transform 0.4s ease;
2635 }
2636
2637 .yatra-destination-image,
2638 .yatra-activity-image,
2639 .yatra-category-image {
2640 position: relative;
2641 width: 100%;
2642 height: 300px;
2643 overflow: hidden;
2644 }
2645
2646 .yatra-destination-image img,
2647 .yatra-activity-image img,
2648 .yatra-category-image img {
2649 width: 100%;
2650 height: 100%;
2651 object-fit: cover;
2652 }
2653
2654 /* Overrides base grid height:300px / width:100% — list view needs a wide left column */
2655 .yatra-destination-grid.list-view .yatra-destination-image,
2656 .yatra-activity-grid.list-view .yatra-activity-image,
2657 .yatra-category-grid.list-view .yatra-category-image {
2658 width: var(--yatra-listing-list-media-width);
2659 min-width: var(--yatra-listing-list-media-width);
2660 height: auto;
2661 min-height: 240px;
2662 flex-shrink: 0;
2663 align-self: stretch;
2664 }
2665
2666 .yatra-destination-overlay,
2667 .yatra-category-overlay {
2668 position: absolute;
2669 top: 0;
2670 left: 0;
2671 right: 0;
2672 bottom: 0;
2673 background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
2674 display: flex;
2675 align-items: flex-end;
2676 padding: 24px;
2677 }
2678
2679 .yatra-destination-overlay h3 {
2680 font-size: 28px;
2681 font-weight: 700;
2682 color: #fff;
2683 margin: 0;
2684 }
2685
2686 .yatra-destination-content {
2687 padding: 24px;
2688 background: #fff;
2689 }
2690
2691 .yatra-destination-content p {
2692 font-size: 14px;
2693 color: #6b7280;
2694 margin-bottom: 16px;
2695 line-height: 1.6;
2696 }
2697
2698 .yatra-destination-stats {
2699 display: flex;
2700 flex-direction: column;
2701 gap: 12px;
2702 margin-bottom: 20px;
2703 padding: 16px;
2704 background: #f9fafb;
2705 border-radius: 10px;
2706 }
2707
2708 .yatra-destination-stat {
2709 display: flex;
2710 align-items: center;
2711 gap: 10px;
2712 font-size: 14px;
2713 color: #374151;
2714 }
2715
2716 .yatra-destination-stat svg {
2717 flex-shrink: 0;
2718 color: #6b7280;
2719 }
2720
2721 .yatra-destination-stat span {
2722 font-weight: 600;
2723 color: #1f2937;
2724 }
2725
2726 .yatra-activity-content {
2727 padding: 24px;
2728 background: #fff;
2729 display: flex;
2730 flex-direction: column;
2731 flex: 1;
2732 }
2733
2734 .yatra-activity-content h3 {
2735 font-size: 22px;
2736 font-weight: 600;
2737 color: #1f2937;
2738 margin-bottom: 12px;
2739 }
2740
2741 .yatra-activity-content p {
2742 font-size: 14px;
2743 color: #6b7280;
2744 margin-bottom: 16px;
2745 line-height: 1.6;
2746 flex: 1;
2747 }
2748
2749 .yatra-activity-stats {
2750 display: flex;
2751 flex-direction: column;
2752 gap: 12px;
2753 margin-bottom: 20px;
2754 padding: 16px;
2755 background: #f9fafb;
2756 border-radius: 8px;
2757 }
2758
2759 .yatra-activity-stat {
2760 display: flex;
2761 align-items: center;
2762 gap: 8px;
2763 font-size: 14px;
2764 color: #374151;
2765 }
2766
2767 .yatra-activity-stat svg {
2768 flex-shrink: 0;
2769 }
2770
2771 .yatra-activity-stat span {
2772 font-weight: 500;
2773 }
2774
2775 .yatra-category-content {
2776 padding: 24px;
2777 }
2778
2779 .yatra-category-content p {
2780 font-size: 14px;
2781 color: #6b7280;
2782 margin-bottom: 16px;
2783 line-height: 1.6;
2784 }
2785
2786 .yatra-category-stats {
2787 display: flex;
2788 flex-direction: column;
2789 gap: 12px;
2790 margin-bottom: 20px;
2791 padding: 16px;
2792 background: #f9fafb;
2793 border-radius: 8px;
2794 }
2795
2796 .yatra-category-stat {
2797 display: flex;
2798 align-items: center;
2799 gap: 8px;
2800 font-size: 14px;
2801 color: #374151;
2802 }
2803
2804 .yatra-category-stat svg {
2805 flex-shrink: 0;
2806 }
2807
2808 .yatra-category-stat span {
2809 font-weight: 500;
2810 }
2811
2812
2813 .yatra-category-overlay {
2814 position: absolute;
2815 top: 0;
2816 left: 0;
2817 right: 0;
2818 bottom: 0;
2819 background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
2820 display: flex;
2821 flex-direction: column;
2822 align-items: center;
2823 justify-content: flex-end;
2824 padding: 24px;
2825 text-align: center;
2826 }
2827
2828 .yatra-category-overlay h3 {
2829 font-size: 28px;
2830 font-weight: 700;
2831 color: #fff;
2832 margin: 0;
2833 }
2834
2835 /* Trip Category Grid — list layout rules live with .yatra-category-grid.list-view above */
2836
2837 /* ============================================
2838 SINGLE TAXONOMY PAGE STYLES
2839 (Destination, Activity, Category single pages)
2840 ============================================ */
2841
2842 /* Taxonomy Hero Section */
2843 .yatra-taxonomy-hero {
2844 position: relative;
2845 height: 350px;
2846 background-size: cover;
2847 /* Ensure background scrolls with page and is nicely centered */
2848 background-attachment: scroll;
2849 background-position: center center;
2850 border-radius: 0;
2851 display: flex;
2852 align-items: center;
2853 justify-content: center;
2854 margin-bottom: 0;
2855 }
2856
2857 .yatra-taxonomy-hero-overlay {
2858 position: absolute;
2859 inset: 0;
2860 background: linear-gradient(to bottom, rgba(0,0,0,0.5), rgba(0,0,0,0.8));
2861 }
2862
2863 .yatra-taxonomy-hero-content {
2864 position: relative;
2865 z-index: 10;
2866 text-align: center;
2867 max-width: 800px;
2868 padding: 0 20px;
2869 }
2870
2871 .yatra-taxonomy-hero-content,
2872 .yatra-taxonomy-hero-content * {
2873 color: #ffffff !important;
2874 }
2875
2876 .yatra-taxonomy-page .yatra-breadcrumb {
2877 margin-bottom: 16px;
2878 font-size: 14px;
2879 }
2880
2881 .yatra-taxonomy-page .yatra-breadcrumb a {
2882 color: rgba(255,255,255,0.9) !important;
2883 text-decoration: none;
2884 transition: color 0.2s ease;
2885 }
2886
2887 .yatra-taxonomy-page .yatra-breadcrumb a:hover {
2888 color: #ffffff !important;
2889 text-decoration: underline;
2890 }
2891
2892 .yatra-taxonomy-page .yatra-breadcrumb-sep {
2893 margin: 0 8px;
2894 color: rgba(255,255,255,0.7) !important;
2895 }
2896
2897 .yatra-taxonomy-page .yatra-breadcrumb-current {
2898 color: rgba(255,255,255,0.9) !important;
2899 }
2900
2901 .yatra-taxonomy-title {
2902 font-size: 48px;
2903 font-weight: 700;
2904 margin: 0 0 16px;
2905 color: #ffffff !important;
2906 text-shadow: 0 3px 10px rgba(0,0,0,0.6);
2907 line-height: 1.2;
2908 }
2909
2910 .yatra-taxonomy-description {
2911 font-size: 18px;
2912 line-height: 1.6;
2913 color: rgba(255,255,255,0.95) !important;
2914 margin: 0 0 20px;
2915 }
2916
2917 .yatra-taxonomy-stats {
2918 display: flex;
2919 gap: 24px;
2920 justify-content: center;
2921 }
2922
2923 .yatra-taxonomy-trip-count {
2924 display: flex;
2925 align-items: center;
2926 gap: 8px;
2927 background: rgba(255,255,255,0.2);
2928 backdrop-filter: blur(8px);
2929 padding: 10px 20px;
2930 border-radius: 50px;
2931 font-weight: 500;
2932 color: #ffffff !important;
2933 }
2934
2935 .yatra-taxonomy-trip-count svg {
2936 color: #ffffff !important;
2937 stroke: #ffffff !important;
2938 }
2939
2940 /* No Trips Found - Taxonomy Page */
2941 .yatra-taxonomy-page .yatra-no-trips-found {
2942 text-align: center;
2943 padding: 80px 20px;
2944 background: #f9fafb;
2945 border-radius: 16px;
2946 margin-top: 20px;
2947 }
2948
2949 .yatra-taxonomy-page .yatra-no-trips-icon {
2950 color: #9ca3af;
2951 margin-bottom: 20px;
2952 }
2953
2954 .yatra-taxonomy-page .yatra-no-trips-found h3 {
2955 font-size: 24px;
2956 font-weight: 600;
2957 color: #111827;
2958 margin: 0 0 12px;
2959 }
2960
2961 .yatra-taxonomy-page .yatra-no-trips-found p {
2962 color: #6b7280;
2963 font-size: 16px;
2964 margin: 0 0 24px;
2965 max-width: 400px;
2966 margin-left: auto;
2967 margin-right: auto;
2968 }
2969
2970 .yatra-btn-primary {
2971 display: inline-block;
2972 background: #059669;
2973 color: #fff !important;
2974 padding: 12px 28px;
2975 border-radius: 8px;
2976 font-weight: 600;
2977 text-decoration: none;
2978 transition: background 0.2s ease;
2979 }
2980
2981 .yatra-btn-primary:hover {
2982 background: #047857;
2983 color: #fff !important;
2984 }
2985
2986 /* Responsive - Taxonomy Page */
2987 @media (max-width: 768px) {
2988 .yatra-taxonomy-hero {
2989 height: 280px;
2990 }
2991
2992 .yatra-taxonomy-title {
2993 font-size: 32px;
2994 }
2995
2996 .yatra-taxonomy-description {
2997 font-size: 16px;
2998 }
2999 }
3000
3001 /* Trip Stats Row - Clean Modern Design */
3002 .yatra-trip-stats-row {
3003 display: flex;
3004 gap: 20px;
3005 margin: 20px 0;
3006 padding: 0;
3007 }
3008
3009 .yatra-trip-stat {
3010 display: flex;
3011 align-items: center;
3012 gap: 12px;
3013 flex: 1;
3014 min-width: 0;
3015 }
3016
3017 .yatra-stat-icon {
3018 width: 16px;
3019 height: 16px;
3020 border-radius: 4px;
3021 display: flex;
3022 align-items: center;
3023 justify-content: center;
3024 flex-shrink: 0;
3025 }
3026
3027 .yatra-stat-icon svg {
3028 width: 16px;
3029 height: 16px;
3030 }
3031
3032 .yatra-stat-icon.duration {
3033 background: linear-gradient(135deg, #3b82f6, #2563eb);
3034 color: white;
3035 }
3036
3037 .yatra-stat-icon.difficulty {
3038 background: linear-gradient(135deg, #f59e0b, #d97316);
3039 color: white;
3040 }
3041
3042 .yatra-stat-icon.group {
3043 background: linear-gradient(135deg, #10b981, #059669);
3044 color: white;
3045 }
3046
3047 .yatra-stat-icon.rating {
3048 background: linear-gradient(135deg, #fbbf24, #f59e0b);
3049 color: white;
3050 }
3051
3052 .yatra-stat-content {
3053 display: flex;
3054 flex-direction: column;
3055 }
3056
3057 .yatra-stat-value {
3058 font-size: 16px;
3059 font-weight: 700;
3060 color: #1f2937;
3061 line-height: 1;
3062 }
3063
3064 .yatra-stat-label {
3065 font-size: 12px;
3066 color: #6b7280;
3067 font-weight: 500;
3068 line-height: 1;
3069 }
3070
3071
3072 /* Responsive design */
3073 @media (max-width: 768px) {
3074 .yatra-trip-stats-row {
3075 gap: 12px;
3076 margin: 16px 0;
3077 }
3078
3079 .yatra-stat-icon {
3080 width: 16px;
3081 height: 16px;
3082 }
3083
3084 .yatra-stat-value {
3085 font-size: 14px;
3086 }
3087
3088 .yatra-stat-label {
3089 font-size: 11px;
3090 }
3091 }
3092
3093 @media (max-width: 480px) {
3094 .yatra-trip-stats-row {
3095 flex-direction: column;
3096 gap: 8px;
3097 padding: 8px 0;
3098 }
3099
3100 .yatra-trip-stat {
3101 justify-content: flex-start;
3102 }
3103
3104 .yatra-stat-content {
3105 flex-direction: row;
3106 align-items: center;
3107 gap: 4px;
3108 }
3109
3110 .yatra-stat-label {
3111 margin-top: 0;
3112 }
3113 }
3114
3115 /* Trip Card Content Area - Enhanced Design */
3116 .yatra-trip-content {
3117 padding: 20px 24px;
3118 background: #ffffff;
3119 }
3120
3121 /* Trip card image overlay */
3122 .yatra-trip-card-image {
3123 position: relative;
3124 overflow: hidden;
3125 display: block;
3126 height: 240px;
3127 }
3128
3129 .yatra-trip-card-image::before {
3130 content: '';
3131 position: absolute;
3132 top: 0;
3133 left: 0;
3134 right: 0;
3135 bottom: 0;
3136 background: linear-gradient(to bottom,
3137 rgba(0, 0, 0, 0.2) 0%,
3138 rgba(0, 0, 0, 0.5) 100%);
3139 z-index: 1;
3140 pointer-events: none;
3141 }
3142
3143 .yatra-trip-card-image img {
3144 display: block;
3145 width: 100%;
3146 height: 100%;
3147 object-fit: cover;
3148 position: relative;
3149 z-index: 0;
3150 transition: opacity 0.3s ease;
3151 }
3152
3153 .yatra-trip-card-image:hover img {
3154 opacity: 0.9;
3155 }
3156
3157 .yatra-trip-card-image .yatra-discount-badge,
3158 .yatra-trip-card-image .yatra-group-discount-badge,
3159 .yatra-trip-card-image .yatra-favorite-btn,
3160 .yatra-trip-card-image .yatra-difficulty-overlay {
3161 position: absolute;
3162 z-index: 3;
3163 }
3164
3165 .yatra-trip-title {
3166 color: #000000 !important;
3167 font-weight: 700;
3168 font-size: 20px;
3169 line-height: 1.3;
3170 margin-bottom: 12px;
3171 letter-spacing: -0.02em;
3172 }
3173
3174 .yatra-trip-title-link {
3175 color: #000000 !important;
3176 text-decoration: none;
3177 transition: all 0.2s ease;
3178 display: block;
3179 }
3180
3181 .yatra-trip-title-link:hover {
3182 color: #000000 !important;
3183 transform: translateY(-1px);
3184 }
3185
3186 .yatra-trip-short-description {
3187 color: #000000;
3188 line-height: 1.6;
3189 font-size: 14px;
3190 margin-bottom: 16px;
3191
3192 }
3193
3194 /* Enhanced taxonomy sections */
3195 .yatra-trip-destinations,
3196 .yatra-trip-activities,
3197 .yatra-trip-categories {
3198 color: #000000 !important;
3199 margin-bottom: 14px;
3200 padding: 8px 0;
3201 border-bottom: 1px solid #f1f5f9;
3202 font-size: 13px;
3203 }
3204
3205 .yatra-trip-destinations:last-child,
3206 .yatra-trip-activities:last-child,
3207 .yatra-trip-categories:last-child {
3208 border-bottom: none;
3209 margin-bottom: 0;
3210 }
3211
3212 .destination-link,
3213 .activity-link,
3214 .category-link {
3215 color: #000000 !important;
3216 text-decoration: none;
3217 font-weight: 500;
3218 transition: all 0.2s ease;
3219 }
3220
3221 .destination-link:hover,
3222 .activity-link:hover,
3223 .category-link:hover {
3224 color: #000000 !important;
3225 text-decoration: underline;
3226 background: rgba(0, 0, 0, 0.02);
3227 padding: 2px 4px;
3228 border-radius: 3px;
3229 }
3230
3231 /* Enhanced rating section */
3232 .yatra-trip-rating-row {
3233 color: #000000 !important;
3234 display: flex;
3235 align-items: center;
3236 gap: 8px;
3237 margin-bottom: 16px;
3238 padding: 8px 0;
3239 }
3240
3241 .yatra-rating-value {
3242 color: #000000 !important;
3243 font-weight: 600;
3244 font-size: 16px;
3245 }
3246
3247 .yatra-rating-count {
3248 color: #000000 !important;
3249 font-size: 12px;
3250 opacity: 0.7;
3251 }
3252
3253 /* Enhanced pricing section */
3254 .yatra-trip-price {
3255 color: #000000 !important;
3256 margin-bottom: 16px;
3257 padding: 12px 0;
3258
3259 }
3260
3261 .yatra-price-current {
3262 color: #000000 !important;
3263 font-weight: 800;
3264 font-size: 24px;
3265 line-height: 1;
3266 }
3267
3268 .yatra-price-original {
3269 color: #000000 !important;
3270 text-decoration: line-through;
3271 font-size: 16px;
3272 opacity: 0.6;
3273 margin-left: 8px;
3274 }
3275
3276 .yatra-price-prefix {
3277 color: #000000 !important;
3278 font-size: 14px;
3279 opacity: 0.7;
3280 margin-right: 4px;
3281 }
3282
3283 /* Clean and minimal stats row */
3284 .yatra-trip-stats-row {
3285 display: flex;
3286 flex-wrap: wrap;
3287 gap: 20px;
3288 padding: 16px 0;
3289 margin: 16px 0;
3290 }
3291
3292 .yatra-trip-stat {
3293 display: flex;
3294 align-items: center;
3295 gap: 8px;
3296 min-width: 0;
3297 }
3298
3299
3300 .yatra-stat-content {
3301 display: flex;
3302 flex-direction: column;
3303 min-width: 0;
3304 }
3305
3306 .yatra-stat-value {
3307 color: #000000 !important;
3308 font-weight: 600;
3309 font-size: 14px;
3310 line-height: 1.2;
3311 }
3312
3313 .yatra-stat-label {
3314 color: #000000 !important;
3315 font-size: 12px;
3316 line-height: 1.2;
3317 margin-top: 1px;
3318 opacity: 0.6;
3319 }
3320
3321 /* Footer elements - Keep original colors */
3322 .yatra-trip-footer {
3323 color: #475569 !important;
3324 }
3325
3326 /* Badge colors */
3327 .yatra-discount-badge {
3328 background: linear-gradient(135deg, #dc2626, #b91c1c);
3329 color: #ffffff !important;
3330 font-weight: 600;
3331 font-size: 12px;
3332 padding: 4px 8px;
3333 border-radius: 4px;
3334 }
3335
3336 .yatra-group-discount-badge {
3337 background: linear-gradient(135deg, #10b981, #059669);
3338 color: #ffffff !important;
3339 font-weight: 500;
3340 font-size: 11px;
3341 padding: 4px 8px;
3342 border-radius: 4px;
3343 }
3344
3345 /* Favorite button */
3346 .yatra-favorite-btn {
3347 color: #64748b !important;
3348 background: rgba(255, 255, 255, 0.9);
3349 border: 1px solid #e2e8f0;
3350 border-radius: 6px;
3351 padding: 6px;
3352 transition: all 0.2s ease;
3353 }
3354
3355 .yatra-favorite-btn:hover {
3356 color: #dc2626 !important;
3357 border-color: #dc2626;
3358 background: rgba(255, 255, 255, 1);
3359 }
3360
3361 .yatra-favorite-btn.active {
3362 color: #dc2626 !important;
3363 background: #fef2f2;
3364 border-color: #dc2626;
3365 }
3366
3367 /* Difficulty overlay */
3368 .yatra-difficulty-overlay {
3369 background: rgba(59, 130, 246, 0.9);
3370 backdrop-filter: blur(4px);
3371 color: #ffffff !important;
3372 font-weight: 600;
3373 font-size: 12px;
3374 padding: 6px 10px;
3375 border-radius: 6px;
3376 border: 1px solid rgba(255, 255, 255, 0.2);
3377 box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
3378 }
3379
3380 /* Gutenberg: live listing preview (ServerSideRender) */
3381 .yatra-block-editor-preview {
3382 min-height: 48px;
3383 }
3384
3385 .yatra-block-editor-preview .components-placeholder {
3386 min-height: 120px;
3387 }
3388
3389 /**
3390 * Listing block section titles — same look in the editor (theme/iframe) as on the page.
3391 * Trip uses .yatra-tour-header like activity/destination; these rules beat theme h2 resets.
3392 */
3393 .wp-block-yatra-tour .yatra-tour-header .yatra-tour-title,
3394 .wp-block-yatra-activity .yatra-activity-header .yatra-activity-title,
3395 .wp-block-yatra-destination .yatra-destination-header .yatra-destination-title,
3396 .editor-styles-wrapper .yatra-tour-header .yatra-tour-title,
3397 .editor-styles-wrapper .yatra-activity-header .yatra-activity-title,
3398 .editor-styles-wrapper .yatra-destination-header .yatra-destination-title,
3399 .block-editor-block-list__layout .yatra-tour-header .yatra-tour-title,
3400 .block-editor-block-list__layout .yatra-activity-header .yatra-activity-title,
3401 .block-editor-block-list__layout .yatra-destination-header .yatra-destination-title {
3402 margin: 0;
3403 padding: 0;
3404 color: #1f2937;
3405 font-size: 1.875rem;
3406 font-weight: 600;
3407 line-height: 1.25;
3408 letter-spacing: normal;
3409 text-transform: none;
3410 font-style: normal;
3411 font-family: inherit;
3412 }
3413
3414 .wp-block-yatra-tour .yatra-tour-header .yatra-tour-count,
3415 .wp-block-yatra-activity .yatra-activity-header .yatra-activity-count,
3416 .wp-block-yatra-destination .yatra-destination-header .yatra-destination-count,
3417 .editor-styles-wrapper .yatra-tour-header .yatra-tour-count,
3418 .editor-styles-wrapper .yatra-activity-header .yatra-activity-count,
3419 .editor-styles-wrapper .yatra-destination-header .yatra-destination-count,
3420 .block-editor-block-list__layout .yatra-tour-header .yatra-tour-count,
3421 .block-editor-block-list__layout .yatra-activity-header .yatra-activity-count,
3422 .block-editor-block-list__layout .yatra-destination-header .yatra-destination-count {
3423 margin: 0;
3424 color: #6b7280;
3425 font-size: 0.875rem;
3426 font-weight: 400;
3427 line-height: 1.5;
3428 }
3429
3430