:root{
  --navy:#073d72;
  --blue:#1176cf;
  --sky:#58b9dc;
  --aqua:#55c7c5;
  --ink:#12314d;
  --muted:#63758a;
  --cream:#f7fbfd;
  --white:#fff;
  --radius:26px;
  --shadow:0 18px 50px rgba(7,61,114,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--white);line-height:1.6}
a{text-decoration:none;color:inherit}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;padding:10px 6%;position:sticky;top:0;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);z-index:10;border-bottom:1px solid #edf3f7}
.brand img{width:155px;height:auto;display:block}
.nav nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}
.nav nav a{transition:.2s}.nav nav a:hover{color:var(--blue)}
.nav-cta{padding:11px 19px;border-radius:99px;background:var(--navy);color:white!important}
.menu{display:none;border:0;background:none;font-size:25px}
.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:70px 7%;gap:4vw;background:linear-gradient(135deg,#fff 0%,#f2fbff 100%);overflow:hidden}
.hero-copy{max-width:650px}
.eyebrow{font-size:12px;letter-spacing:.22em;font-weight:700;color:var(--aqua);margin:0 0 15px}
h1,h2,h3{margin:0;font-family:"Playfair Display",serif;line-height:1.05}
h1{font-size:clamp(60px,8vw,112px);letter-spacing:-.05em;color:var(--navy)}
h1 span,h2 em{font-style:normal;color:var(--aqua)}
.hero-text{font-size:18px;max-width:560px;color:var(--muted);margin:25px 0 30px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:99px;padding:14px 23px;font:600 14px "DM Sans";cursor:pointer}
.primary{background:var(--navy);color:white;box-shadow:0 12px 25px rgba(7,61,114,.2)}
.primary:hover{transform:translateY(-2px)}
.ghost{border:1px solid #cbdce8;color:var(--navy);background:white}
.trust{display:flex;gap:35px;margin-top:45px}.trust div{display:flex;flex-direction:column}.trust strong{font-size:24px;color:var(--navy)}.trust span{font-size:11px;color:var(--muted)}
.hero-art{height:560px;position:relative;border-radius:50px;background:linear-gradient(160deg,#e5f8ff,#b9e8ef);overflow:hidden;box-shadow:var(--shadow)}
.sun{width:250px;height:250px;border-radius:50%;background:#fff5c9;position:absolute;right:15%;top:12%}
.mountain{position:absolute;bottom:0;width:0;height:0;border-left:260px solid transparent;border-right:260px solid transparent;border-bottom:360px solid #5eb7d8}.m1{left:-80px}.m2{right:-90px;border-bottom-color:#2e709c;border-left-width:300px;border-right-width:300px;border-bottom-width:300px}
.road{position:absolute;bottom:-100px;left:30%;width:45%;height:360px;background:#fff;transform:rotate(15deg);border-radius:50%}
.floating-card{position:absolute;background:rgba(255,255,255,.93);padding:15px 18px;border-radius:18px;box-shadow:0 15px 35px rgba(7,61,114,.15);font-size:14px;display:flex;gap:9px;align-items:center}
.floating-card small{display:block;color:var(--muted);font-size:10px}.card-one{left:8%;top:20%}.card-two{right:8%;bottom:19%}
.section,.experience-section,.contact{padding:110px 7%}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}
h2{font-size:clamp(42px,5vw,68px);color:var(--navy);letter-spacing:-.035em}
.text-link{font-weight:700;color:var(--blue);font-size:14px}
.trip-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:22px}
.trip-card{border-radius:var(--radius);overflow:hidden;background:var(--cream);box-shadow:0 8px 30px rgba(7,61,114,.06)}
.photo{height:230px;background-size:cover;background-position:center;position:relative}
.tall .photo{height:310px}
.photo-himalaya{background-image:linear-gradient(145deg,#8bd3ec,#225889 75%)} 
.photo-coast{background-image:linear-gradient(145deg,#7fd9d2,#2c78a6)}
.photo-desert{background-image:linear-gradient(145deg,#f4d79b,#b76f4a)}
.photo:after{content:"";position:absolute;inset:25% 15% 0;background:linear-gradient(140deg,transparent 25%,rgba(255,255,255,.8) 26%,transparent 27%);opacity:.5}
.trip-content{padding:24px}.trip-content span{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--aqua);font-weight:800}.trip-content h3{font-size:30px;margin:8px 0}.trip-content p{color:var(--muted);font-size:14px;margin:0 0 17px}.trip-content b{color:var(--navy);font-size:13px}
.experience-section{background:var(--navy);color:white}.experience-section h2{color:white}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:50px}.feature{padding:30px 0;border-top:1px solid rgba(255,255,255,.22)}.feature span{color:var(--aqua);font-weight:800}.feature h3{font-size:28px;margin:25px 0 12px}.feature p{color:#b9cce0;font-size:14px}
.story{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.story-image{background:linear-gradient(145deg,#5dc4d1,#0d4b80);position:relative;overflow:hidden}.story-image:before,.story-image:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.25);border-radius:50%;width:500px;height:500px}.story-image:before{left:-180px;top:70px}.story-image:after{right:-250px;top:-180px}.stamp{position:absolute;left:12%;bottom:12%;font-family:"Playfair Display";font-size:50px;line-height:.85;color:white;transform:rotate(-8deg);border:2px solid white;padding:18px}
.story-copy{padding:90px 10%;align-self:center}.story-copy p:not(.eyebrow){color:var(--muted);max-width:550px}.story-copy .button{margin-top:20px}
.quote{text-align:center;padding:110px 7%;background:#effbfd}.quote p{font:italic 44px "Playfair Display";color:var(--navy);max-width:850px;margin:auto}.quote span{display:block;margin-top:18px;color:var(--muted);font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact>div{align-self:center}.contact>div>p:not(.eyebrow){color:var(--muted);max-width:470px}
form{display:grid;gap:15px;padding:35px;background:var(--cream);border-radius:var(--radius)}
label{font-size:12px;font-weight:700;color:var(--navy)}input{display:block;width:100%;margin-top:7px;border:1px solid #d6e2ea;border-radius:12px;padding:14px 15px;font:14px "DM Sans";outline:none;background:white}input:focus{border-color:var(--aqua)}
.success{display:none;margin:0;color:#218a83;font-size:13px}.success.show{display:block}
footer{padding:45px 7%;background:#062f58;color:#a9bfd2;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}footer img{width:130px;filter:brightness(0) invert(1)}footer div{display:flex;gap:20px}footer a:hover{color:white}
@media(max-width:850px){
 .nav{padding:10px 5%}.menu{display:block}.nav nav{display:none;position:absolute;top:82px;left:0;right:0;padding:20px 5%;background:white;flex-direction:column;align-items:stretch;gap:16px;box-shadow:0 20px 30px rgba(0,0,0,.08)}.nav nav.open{display:flex}.nav-cta{text-align:center}
 .hero{grid-template-columns:1fr;padding:55px 6%}.hero-art{height:430px}.trust{margin-top:30px}
 .trip-grid,.feature-grid{grid-template-columns:1fr 1fr}.tall{grid-row:auto}.story,.contact{grid-template-columns:1fr}.story-image{min-height:400px}.contact{gap:35px}
 footer{flex-direction:column;text-align:center}
}
@media(max-width:560px){
 h1{font-size:64px}.section,.experience-section,.contact{padding:75px 6%}.section-heading{display:block}.text-link{display:inline-block;margin-top:20px}.trip-grid,.feature-grid{grid-template-columns:1fr}.hero-art{height:360px}.floating-card{font-size:12px}.quote p{font-size:32px}.story-copy{padding:65px 7%}
}

.trip-status{position:absolute;top:18px;right:18px;background:rgba(7,61,114,.95);color:#fff;padding:8px 12px;border-radius:99px;font:800 10px "DM Sans";letter-spacing:.12em}
.trip-meta{display:flex;flex-direction:column;gap:8px}
.trip-meta strong{font-size:12px;color:#8a4d4d;letter-spacing:.08em}
.featured-trip{border:2px solid #dceff3}

.trip-poster{background-image:url("assets/kasol-kheerganga-poster.jpeg");background-size:cover;background-position:center}
.trip-details{margin-top:18px;border-top:1px solid #dce7ed;padding-top:15px}
.trip-details summary{cursor:pointer;color:var(--navy);font-size:13px;font-weight:800}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}
.detail-grid div{background:white;border-radius:12px;padding:12px}
.detail-grid small{display:block;font-size:9px;letter-spacing:.12em;color:var(--aqua);font-weight:800;margin-bottom:4px}
.detail-grid b{font-size:12px}
.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:0 15px;margin-top:12px}
.detail-list p{font-size:12px!important;color:var(--muted);margin:5px 0!important}
.next-trip-banner{margin-top:35px;padding:28px 32px;border-radius:22px;background:linear-gradient(120deg,#effbfd,#f8fbff);display:flex;align-items:center;justify-content:space-between;gap:25px}
.next-trip-banner h3{font-size:30px;color:var(--navy);margin-bottom:7px}
.next-trip-banner p:not(.eyebrow){margin:0;color:var(--muted);font-size:13px}
@media(max-width:650px){
 .next-trip-banner{display:block}
 .next-trip-banner .button{margin-top:20px}
 .detail-grid,.detail-list{grid-template-columns:1fr}
}

/* Step 1: outdoorsy homepage with earthy greens and trip-first hierarchy */
:root{--navy:#193f32;--blue:#416c4c;--sky:#9bb9a0;--aqua:#b4c99a;--ink:#20372c;--muted:#65766a;--cream:#f5f4eb}
body{background:#fffef9;color:var(--ink)}
.nav{border-bottom-color:#e5e8dc;background:rgba(255,254,249,.96)}
.nav-cta,.primary{background:#234d39}.primary{box-shadow:0 12px 25px rgba(35,77,57,.18)}
.eyebrow{color:#668b55}h1,h2{color:#193f32}h1 span,h2 em{color:#6b925b}
.hero{background:linear-gradient(130deg,#fffef9 0%,#f2f2e6 55%,#e4ecdc 100%)}
.outdoor-art{background:linear-gradient(180deg,#c9dfd0 0%,#e6e9d6 48%,#c1d0ae 100%)}
.outdoor-sun{position:absolute;width:105px;height:105px;border-radius:50%;background:#e7c77d;top:13%;right:19%;opacity:.95}
.outdoor-peak{position:absolute;bottom:0;width:0;height:0;border-left:260px solid transparent;border-right:260px solid transparent}
.peak-back{left:-45px;border-bottom:340px solid #8cae91}
.peak-front{right:-100px;border-left-width:310px;border-right-width:310px;border-bottom:275px solid #466f50}
.peak-back:after{content:"";position:absolute;top:70px;left:-65px;width:0;height:0;border-left:65px solid transparent;border-right:65px solid transparent;border-bottom:100px solid #f5f4eb}
.trail{position:absolute;bottom:-105px;left:34%;width:32%;height:280px;border-radius:50% 50% 0 0;background:#e9dfc3;transform:rotate(-20deg);border:16px solid rgba(255,255,255,.35)}
.pine{position:absolute;color:#244b37;font-size:110px;line-height:1;z-index:2;transform:scaleX(.75)}
.pine-one{bottom:14%;left:12%}.pine-two{bottom:9%;right:13%;font-size:145px}
.outdoor-note{position:absolute;left:7%;top:12%;display:flex;gap:12px;align-items:center;padding:14px 17px;background:rgba(255,254,249,.94);border-radius:17px;box-shadow:0 12px 30px rgba(25,63,50,.13);font-size:13px}
.outdoor-note>span{font-size:24px;color:#6b925b}.outdoor-note b,.outdoor-note small{display:block}.outdoor-note small{font-size:10px;color:var(--muted)}
.upcoming-strip{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:42px 7%;background:#234d39;color:#fff}
.upcoming-strip .eyebrow{color:#c3d9a8;margin-bottom:8px}.upcoming-strip h2{font-size:clamp(30px,4vw,46px);color:white}.upcoming-strip h2 em{color:#c3d9a8}
.upcoming-strip p:not(.eyebrow){margin:10px 0 0;color:#d9e4d8;max-width:620px;font-size:14px}
.light-button{background:#f5f4eb;color:#234d39;white-space:nowrap}
.section{background:#fffef9}.trip-card{background:#f6f5ed}.photo{background-color:#dbe7d7}.trip-status{background:#234d39}
.next-trip-banner{background:#f0f2e7}.next-trip-banner h3{color:#234d39}
@media(max-width:650px){.upcoming-strip{display:block;padding:35px 6%}.upcoming-strip .button{margin-top:22px}.outdoor-art{height:360px}}

.bir-photo{background-image:linear-gradient(180deg,rgba(25,63,50,.02),rgba(25,63,50,.15)),url("https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=85");background-size:cover;background-position:center}
.upcoming-status{background:#dce8c8;color:#234d39}
.upcoming-label{color:#426c43!important}
.trip-note{font-size:13px;color:var(--muted);margin:12px 0}
.bir-trip{border:2px solid #c9d9b9}

/* Step 2: direct enquiry channels */
.enquiry-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.social-secondary { display: inline-flex; align-items: center; justify-content: center; border: 1px solid currentColor; color: #264b36; background: #fff; text-decoration: none; }
.form-trip-summary { line-height: 1.7; }
.form-help { font-size: .85rem; opacity: .8; }

/* Step 2: direct, working enquiry channels */
.enquiry-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.outline-button { background: transparent; color: #234d3d; border: 1px solid #47725e; text-align: center; }
.enquiry-panel { display: flex; flex-direction: column; gap: 12px; padding: 24px; background: #fffdf7; border-radius: 20px; box-shadow: 0 12px 35px rgba(0,0,0,.08); }
.enquiry-panel h3 { margin: 0; }
.enquiry-panel p { margin: 0 0 8px; }
.enquiry-panel label { font-weight: 700; }
.enquiry-panel input { padding: 14px; border-radius: 10px; border: 1px solid #b4bfb5; font: inherit; width: 100%; box-sizing: border-box; }
.enquiry-panel small { line-height: 1.5; }
.enquiry-panel .button { display: block; text-align: center; cursor: pointer; }
@media (max-width: 620px) { .enquiry-actions .button { width: 100%; text-align: center; } }

/* Step 3: Bir Billing gallery and itinerary */
.bir-details { padding-top: 76px; padding-bottom: 76px; }
.poster-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 28px 0 36px; align-items: start; }
.poster-gallery a { display: block; overflow: hidden; border-radius: 14px; background: #f3f0e6; }
.poster-gallery img { display: block; width: 100%; height: auto; transition: transform .25s ease; }
.poster-gallery a:hover img { transform: scale(1.025); }
.itinerary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.itinerary-card, .inclusions-panel { background: #f8f6ee; border: 1px solid #e1e4d9; border-radius: 18px; padding: 24px; }
.itinerary-card h3, .inclusions-panel h3 { margin-top: 4px; }
.itinerary-card ul, .inclusions-panel ul { padding-left: 20px; }
.itinerary-card li, .inclusions-panel li { margin: 0 0 10px; line-height: 1.55; }
.inclusions-panel { margin-top: 20px; }
.fine-print { color: #66746a; font-size: .9rem; }
@media (max-width: 850px) { .poster-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); } .itinerary-grid { grid-template-columns: 1fr; } }

/* Completed-trip archive */
.past-trips-section { background: #f8f7f0; }
.past-trip-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.past-trip-card { overflow: hidden; border-radius: 20px; background: #fff; border: 1px solid #e4e5dc; box-shadow: 0 8px 28px rgba(25, 55, 42, .07); }
.past-trip-art { display: block; width: 100%; height: 230px; background-color: #dfe9dd; background-size: cover; background-position: center; }
.spiti-art { background-image: linear-gradient(180deg, rgba(20,38,45,.04), rgba(20,38,45,.12)), url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=1200&q=85'); }
.shangarh-art { background-image: linear-gradient(180deg, rgba(20,38,45,.02), rgba(20,38,45,.10)), url('https://images.unsplash.com/photo-1472396961693-142e6e269027?auto=format&fit=crop&w=1200&q=85'); }
.bir-past-art { background-image: linear-gradient(180deg, rgba(20,38,45,.02), rgba(20,38,45,.10)), url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=85'); }
.kasol-past-art { background-image: linear-gradient(180deg, rgba(20,38,45,.02), rgba(20,38,45,.10)), url('assets/kasol-kheerganga-poster.jpeg'); }
.past-trip-content { padding: 22px; }
.past-trip-content h3 { margin: 12px 0 8px; }
.past-trip-content p { line-height: 1.6; }
.past-trip-note { color: #657469; font-size: .9rem; margin-bottom: 0; }
.past-trip-card .trip-status { display: inline-block; }
@media (max-width: 680px) { .past-trip-grid { grid-template-columns: 1fr; } .past-trip-art { height: 210px; } }

/* Real photos uploaded for the completed Spiti Valley trip */
.spiti-photo-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; padding: 5px; background: #edf0e8; }
.spiti-photo-gallery a { display: block; overflow: hidden; aspect-ratio: 4 / 3; background: #dfe5dc; }
.spiti-photo-gallery a:first-child { grid-column: 1 / -1; aspect-ratio: 16 / 9; }
.spiti-photo-gallery img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.spiti-photo-gallery a:hover img { transform: scale(1.03); }
@media (max-width: 680px) { .spiti-photo-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); } .spiti-photo-gallery a:first-child { grid-column: 1 / -1; } }

/* Ensure uploaded Spiti photos render consistently across desktop and mobile */
.past-spiti .spiti-photo-gallery { display:grid; width:100%; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; box-sizing:border-box; }
.past-spiti .spiti-photo-gallery a { display:block; min-width:0; height:auto; aspect-ratio:4/3; overflow:hidden; }
.past-spiti .spiti-photo-gallery a:first-child { grid-column:1/-1; aspect-ratio:16/9; }
.past-spiti .spiti-photo-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:680px) { .past-spiti .spiti-photo-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } .past-spiti .spiti-photo-gallery a:first-child { grid-column:1/-1; } }

/* Main hero photo for Spiti Valley archive */
.past-spiti .spiti-photo-gallery a.spiti-main-photo { grid-column: 1 / -1; aspect-ratio: 4 / 3; }
.past-spiti .spiti-photo-gallery a.spiti-main-photo img { object-position: center 55%; }

/* Spiti archive: show one cover photo; reveal the remaining photos on click */
.spiti-gallery-toggle > summary { position:relative; display:block; cursor:pointer; list-style:none; background:#dfe5dc; }
.spiti-gallery-toggle > summary::-webkit-details-marker { display:none; }
.spiti-gallery-toggle .spiti-main-photo { display:block; width:100%; height:280px; object-fit:cover; object-position:center 55%; }
.spiti-photo-cta { position:absolute; right:14px; bottom:14px; display:flex; gap:10px; align-items:center; padding:10px 14px; border-radius:999px; color:#fff; background:rgba(18,45,34,.88); font-size:.9rem; font-weight:700; }
.spiti-gallery-toggle[open] .spiti-photo-cta { display:none; }
.spiti-photo-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:8px; background:#edf0e8; }
.spiti-photo-gallery a { display:block; min-width:0; aspect-ratio:4/3; overflow:hidden; }
.spiti-photo-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:680px) { .spiti-gallery-toggle .spiti-main-photo { height:240px; } }

/* Spiti: one cover image, then separate photo tiles after clicking View group photos */
.spiti-gallery-toggle { width:100%; }
.spiti-gallery-toggle .spiti-main-photo { display:block; width:100%; height:280px; object-fit:cover; object-position:center 55%; }
.spiti-view-photos { display:inline-flex; align-items:center; gap:8px; margin:12px 0 4px; padding:10px 16px; border:0; border-radius:999px; background:#173f31; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.spiti-view-photos:hover { background:#245843; }
.spiti-photo-gallery[hidden] { display:none !important; }
.spiti-photo-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:12px 0 4px; background:transparent; }
.spiti-photo-gallery a { display:block; min-width:0; overflow:hidden; border-radius:12px; aspect-ratio:4/3; background:#e8ece5; }
.spiti-photo-gallery img { display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:680px) { .spiti-gallery-toggle .spiti-main-photo { height:240px; } .spiti-photo-gallery { grid-template-columns:1fr; } }

/* Definitive Spiti layout: only cover image is visible until button is clicked */
.past-spiti .spiti-cover { display:block; width:100%; overflow:hidden; }
.past-spiti .spiti-cover .spiti-main-photo { display:block; width:100%; height:280px; object-fit:cover; object-position:center 55%; }
.past-spiti .spiti-view-photos { display:inline-block; margin:10px 0 0; padding:10px 16px; border:0; border-radius:999px; background:#173f31; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.past-spiti #spiti-extra-photos[hidden] { display:none !important; }
.past-spiti #spiti-extra-photos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:14px; }
.past-spiti #spiti-extra-photos a { display:block; min-width:0; aspect-ratio:4/3; overflow:hidden; border-radius:12px; }
.past-spiti #spiti-extra-photos img { display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:680px) { .past-spiti .spiti-cover .spiti-main-photo { height:240px; } .past-spiti #spiti-extra-photos { grid-template-columns:1fr; } }

/* Kasol completed trip: one cover photo and separate photos revealed on click */
.past-kasol .kasol-cover { display:block; width:100%; overflow:hidden; }
.past-kasol .kasol-cover .kasol-main-photo { display:block; width:100%; height:280px; object-fit:cover; object-position:center 45%; }
.past-kasol .kasol-view-photos { display:inline-block; margin:10px 0 0; padding:10px 16px; border:0; border-radius:999px; background:#173f31; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.past-kasol #kasol-extra-photos[hidden] { display:none !important; }
.past-kasol #kasol-extra-photos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:14px; }
.past-kasol #kasol-extra-photos a { display:block; min-width:0; aspect-ratio:4/3; overflow:hidden; border-radius:12px; }
.past-kasol #kasol-extra-photos img { display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:680px) { .past-kasol .kasol-cover .kasol-main-photo { height:240px; } .past-kasol #kasol-extra-photos { grid-template-columns:1fr; } }

/* Shangarh completed trip: group cover with individually revealed photos */
.past-shangarh .shangarh-cover { display:block; width:100%; overflow:hidden; }
.past-shangarh .shangarh-cover .shangarh-main-photo { display:block; width:100%; height:280px; object-fit:cover; object-position:center 45%; }
.past-shangarh .shangarh-view-photos { display:inline-block; margin:10px 0 0; padding:10px 16px; border:0; border-radius:999px; background:#173f31; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.past-shangarh #shangarh-extra-photos[hidden] { display:none !important; }
.past-shangarh #shangarh-extra-photos { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:14px; }
.past-shangarh #shangarh-extra-photos a { display:block; min-width:0; aspect-ratio:4/3; overflow:hidden; border-radius:12px; }
.past-shangarh #shangarh-extra-photos img { display:block; width:100%; height:100%; object-fit:cover; }
@media (max-width:680px) { .past-shangarh .shangarh-cover .shangarh-main-photo { height:240px; } .past-shangarh #shangarh-extra-photos { grid-template-columns:1fr; } }

/* Bir Billing completed trip: show the two uploaded photos directly */
.past-bir-billing .bir-billing-archive-photos { display:grid; grid-template-columns:1fr; gap:8px; width:100%; }
.past-bir-billing .bir-billing-archive-photos a { display:block; width:100%; overflow:hidden; border-radius:12px; aspect-ratio:4/3; }
.past-bir-billing .bir-billing-archive-photos img { display:block; width:100%; height:100%; object-fit:cover; }
