:root{
  --ink:#0c1a29; --ink-2:#12294a; --ink-3:#1d3a66; --slate:#56636d; --snow:#fbf3e1; --mist:#f3e4c3; --white:#fff;
  --marigold:#ee8a1b; --marigold-d:#b9650a; --timber:#8e2f1c; --gold:#c9b85c; --olive:#6b6127;
  --text:#1d2630; --muted:#5a5446; --line:#e3d2ad;
  --display:'Yatra One','Young Serif',Georgia,serif; --body:'Instrument Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --ease:cubic-bezier(.22,.8,.24,1); --r:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--body);font-size:17px;line-height:1.65;color:var(--text);background:var(--snow);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;line-height:1.08;letter-spacing:-.012em}
p{max-width:64ch}
:focus-visible{outline:3px solid var(--marigold);outline-offset:3px;border-radius:4px}
.wrap{width:min(1240px,100% - 48px);margin-inline:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--marigold);color:#1b1000;padding:12px 18px;border-radius:8px;font-weight:600;text-decoration:none}
.skip:focus{top:12px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;border-radius:999px;font:600 16px/1 var(--body);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .2s var(--ease),background .2s,color .2s,border-color .2s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-gold{background:var(--marigold);color:#1b1000}.btn-gold:hover{background:#ffa13c}
.btn-ghost{border-color:rgba(255,255,255,.7);color:#fff}.btn-ghost:hover{background:rgba(255,255,255,.14)}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:var(--ink-3)}
.btn-line{border-color:var(--ink);color:var(--ink)}.btn-line:hover{background:var(--ink);color:#fff}
.btn[disabled]{opacity:.6;cursor:wait;transform:none}
.link{font-weight:600;text-decoration:none;border-bottom:2px solid var(--marigold);padding-bottom:2px;transition:color .2s}
.link:hover{color:var(--marigold-d)}

/* nav */
.nav{position:fixed;inset:0 0 auto 0;z-index:100;transition:background .3s,box-shadow .3s}
.nav.solid,.nav.open{background:rgba(13,27,38,.97);box-shadow:0 2px 24px rgba(0,0,0,.3)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:78px;gap:24px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:#fff}
.brand img{width:58px;height:auto}
.brand span{font:400 15px/1.2 var(--body);opacity:.85;border-left:1px solid rgba(255,255,255,.3);padding-left:14px;display:block}
.links{display:flex;align-items:center;gap:30px}
.links a{color:#fff;text-decoration:none;font-size:15.5px;font-weight:500;opacity:.88;position:relative;padding:6px 0}
.links a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--marigold);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.links a:hover,.links a[aria-current="page"]{opacity:1}
.links a:hover::after,.links a[aria-current="page"]::after{transform:scaleX(1)}
.links a.btn{min-height:44px;padding:0 22px;opacity:1;font-size:15px}
.burger{display:none;background:none;border:0;color:#fff;width:48px;height:48px;cursor:pointer}
.burger i{display:block;width:26px;height:2px;background:#fff;margin:6px auto;transition:transform .25s,opacity .25s}
.nav.open .burger i:nth-child(1){transform:translateY(8px) rotate(45deg)}
.nav.open .burger i:nth-child(2){opacity:0}
.nav.open .burger i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:var(--ink);overflow:hidden}
.reel{position:absolute;inset:0}
.reel .clip{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.6s ease}
.reel .clip.on{opacity:1}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(13,27,38,.78) 0%,rgba(13,27,38,.42) 38%,rgba(13,27,38,0) 72%),linear-gradient(0deg,rgba(13,27,38,.9) 0%,rgba(13,27,38,0) 42%),linear-gradient(180deg,rgba(13,27,38,.55) 0%,rgba(13,27,38,0) 22%)}
.hero-in{position:relative;z-index:3;padding:150px 0 220px}
.chip{display:inline-flex;align-items:center;gap:10px;padding:8px 18px 8px 14px;border-radius:999px;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);font-size:14.5px;font-weight:500;border:1px solid rgba(255,255,255,.3);margin-bottom:26px}
.chip i{width:9px;height:9px;border-radius:50%;background:var(--marigold);animation:ping 2.4s infinite}
@keyframes ping{70%{box-shadow:0 0 0 10px rgba(238,138,27,0)}0%{box-shadow:0 0 0 0 rgba(238,138,27,.7)}}
.hero h1{font-size:clamp(46px,7.4vw,112px);max-width:11ch;text-shadow:0 2px 40px rgba(0,0,0,.35);line-height:.98}
.hero .sub{margin-top:26px;max-width:540px;font-size:clamp(17px,1.4vw,20px);color:#e9eff3}
.hero-meta{position:absolute;right:0;bottom:200px;z-index:3;text-align:right;font-size:14.5px;color:#e4ecf0;line-height:1.5}
.hero-meta b{display:block;font:400 clamp(40px,4.6vw,64px)/1 var(--display);color:#fff}
.reel-ctl{position:absolute;z-index:4;right:max(24px,calc((100% - 1240px)/2));bottom:150px;display:flex;gap:8px;align-items:center}
.reel-ctl button{border:0;cursor:pointer;background:rgba(255,255,255,.4);height:8px;width:8px;border-radius:99px;padding:0;position:relative;transition:width .3s,background .3s}
.reel-ctl button::before{content:"";position:absolute;inset:-16px -5px}
.reel-ctl button[aria-current="true"]{width:32px;background:var(--marigold)}

/* booking bar */
.book{position:absolute;z-index:6;left:50%;bottom:34px;transform:translateX(-50%);width:min(1100px,100% - 48px);background:#fff;color:var(--text);border-radius:18px;padding:14px;display:grid;grid-template-columns:1.1fr 1.1fr .8fr auto;gap:10px;box-shadow:0 30px 70px -20px rgba(0,0,0,.55)}
.book label{display:flex;flex-direction:column;gap:2px;padding:8px 18px;border-radius:12px;background:var(--snow);cursor:pointer;transition:background .2s}
.book label:hover,.book label:focus-within{background:var(--mist)}
.book label span{font-size:13px;color:var(--muted);font-weight:500}
.book input,.book select{border:0;background:transparent;font:600 17px/1.3 var(--body);color:var(--text);width:100%;padding:2px 0;outline:none;min-height:30px}
.book .btn{min-height:64px;border-radius:12px;padding:0 34px}

/* flags */
.flags{position:relative;z-index:5;height:150px;margin-top:-1px;margin-bottom:-30px;pointer-events:none}
.flags svg{position:absolute;left:0;top:0;width:100%;height:100%}
.flags path{fill:none;stroke:#e9dfca;stroke-width:2.2;vector-effect:non-scaling-stroke}
.flag{position:absolute;pointer-events:auto;width:118px;height:76px;margin-left:-59px;display:grid;place-items:center;background:var(--c);color:var(--t);font:400 18px/1 var(--display);text-decoration:none;border-radius:2px;transform-origin:50% 0;animation:sway 5.5s ease-in-out infinite;animation-delay:var(--d);box-shadow:0 10px 16px -8px rgba(0,0,0,.4);transition:filter .2s}
.flag::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.07) 0 2px,rgba(0,0,0,.05) 2px 4px)}
.flag span{position:relative}
.flag:hover{animation-duration:1.5s;filter:brightness(1.08)}
@keyframes sway{0%,100%{transform:rotate(-2.6deg) skewX(0)}50%{transform:rotate(3deg) skewX(-2.5deg)}}

/* sections */
.sec{position:relative;padding:112px 0}
.sec h2{font-size:clamp(36px,4.8vw,66px)}
.lede{margin-top:20px;font-size:clamp(18px,1.5vw,21px);color:var(--muted);max-width:56ch}
.dark{background:var(--ink);color:#fff}.dark .lede{color:#b9c9d4}
.dark2{background:var(--ink-2);color:#fff}.dark2 .lede{color:#b9c9d4}
.mist{background:var(--mist)}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:28px;margin-bottom:56px}

/* intro */
.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.intro h2{max-width:13ch}
.intro .body p+p{margin-top:16px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;padding-top:34px;border-top:1px solid var(--line)}
.facts b{display:block;white-space:nowrap;font:400 clamp(30px,3vw,44px)/1 var(--display);color:var(--ink)}
.facts span{display:block;margin-top:8px;font-size:15px;color:var(--muted);line-height:1.4}
.collage{position:relative;height:640px}
.collage figure{position:absolute;border-radius:12px;overflow:hidden;box-shadow:0 30px 60px -28px rgba(13,27,38,.55);background:var(--mist)}
.collage img{width:100%;height:100%;object-fit:cover}
.collage .c1{left:0;top:30px;width:56%;height:430px;transform:rotate(-3deg)}
.collage .c2{right:0;top:0;width:46%;height:300px;transform:rotate(2.5deg)}
.collage .c3{right:6%;bottom:0;width:50%;height:300px;transform:rotate(-1.5deg)}
.collage figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 12px;font-size:13.5px;color:#fff;background:linear-gradient(0deg,rgba(13,27,38,.8),transparent)}

/* peak finder */
.pf{position:relative;color:#fff;background:var(--ink)}
.pf-stage{position:relative;aspect-ratio:16/9;overflow:hidden}
.pf-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pf-stage::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--ink) 0%,rgba(13,27,38,0) 30%),linear-gradient(180deg,rgba(13,27,38,.5) 0%,rgba(13,27,38,0) 25%);pointer-events:none}
.pin{position:absolute;z-index:3;transform:translate(-50%,-9px);display:flex;flex-direction:column;align-items:center;background:none;border:0;color:#fff;cursor:pointer;font:inherit}
.pin .dot{width:18px;height:18px;border-radius:50%;background:var(--marigold);border:3px solid #fff;box-shadow:0 0 0 0 rgba(238,138,27,.6);animation:ping 2.6s infinite;order:1}
.pin .stem{width:2px;height:22px;background:#fff;order:2;opacity:.9}
.pin .tag{order:3;background:rgba(13,27,38,.82);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3);border-radius:10px;padding:8px 14px;text-align:left;white-space:nowrap;transition:background .2s,transform .3s var(--ease)}
.pin .tag b{display:block;font:400 18px/1.15 var(--display)}
.pin .tag small{display:block;font-size:13.5px;color:#d3dfe6}
.pin[aria-expanded="true"] .tag,.pin:hover .tag{background:var(--marigold);color:#1b1000;transform:translateY(-3px)}
.pin[aria-expanded="true"] .tag small,.pin:hover .tag small{color:#3a2200}
.pf-note{position:relative;z-index:3;margin-top:-60px;padding-bottom:110px}
.pf-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:start}
.pf-copy h2{max-width:14ch}
.pf-copy .lede{max-width:48ch}
.pf-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:var(--r);padding:28px 30px;min-height:190px}
.pf-card h3{font-size:28px;margin-bottom:10px}
.pf-card p{color:#cbd9e2;font-size:16.5px}
.pf-card .ht{display:inline-block;margin-bottom:12px;font-size:14px;color:var(--marigold);font-weight:600}
.pf-hint{margin-top:14px;font-size:14px;color:#9fb2bf}

/* rooms */
.rooms-tabs{display:inline-flex;padding:5px;border-radius:999px;background:#fff;border:1px solid var(--line)}
.rooms-tabs button{border:0;background:none;min-height:46px;padding:0 26px;border-radius:999px;font:600 16px/1 var(--body);color:var(--text);cursor:pointer;transition:background .25s,color .25s}
.rooms-tabs button[aria-selected="true"]{background:var(--ink);color:#fff}
.rstage{position:relative;display:grid;grid-template-columns:1.35fr 1fr;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 40px 80px -40px rgba(13,27,38,.5)}
.rstage .ph{position:relative;min-height:540px;background:var(--ink)}
.rstage .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s}
.rstage .ph img.on{opacity:1}
.rstage .info{padding:44px 44px 40px;display:flex;flex-direction:column}
.rstage h3{font-size:clamp(30px,3vw,42px);margin-bottom:6px}
.price{font-size:15px;color:var(--muted)}
.price b{font:400 30px/1 var(--display);color:var(--ink);margin:0 4px}
.specs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.specs li{list-style:none;padding:7px 14px;border-radius:999px;background:var(--mist);font-size:14.5px;font-weight:500}
.rstage p{color:var(--muted)}
.ticks{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:22px 0 28px}
.ticks li{position:relative;padding-left:26px;font-size:15.5px;line-height:1.4}
.ticks li::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:var(--olive) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.4 2.4 4.6-4.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.rstage .actions{margin-top:auto;display:flex;gap:12px;flex-wrap:wrap}
.room-note{margin-top:22px;font-size:15px;color:var(--muted);max-width:none}

/* dining */
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.split.rev>:first-child{order:2}
.frame{position:relative;border-radius:18px;overflow:hidden}
.frame img{width:100%;height:100%;object-fit:cover}
.frame.tall{aspect-ratio:4/5}.frame.wide{aspect-ratio:4/3}
.tag-stamp{position:absolute;left:20px;bottom:20px;background:var(--marigold);color:#1b1000;padding:10px 18px;border-radius:10px;font:400 20px/1.1 var(--display)}
.hours{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:34px}
.hours div{padding:18px 20px;border-radius:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
.hours b{display:block;font:400 22px/1.1 var(--display);margin-bottom:6px}
.hours span{font-size:15px;color:#c3d2dc;display:block;line-height:1.45}
.dark .body p{color:#c3d2dc}
.body p+p{margin-top:16px}

/* experiences rail */
.rail-wrap{position:relative}
.rail{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;padding:20px max(24px,calc((100% - 1240px)/2)) 50px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.rail::-webkit-scrollbar{display:none}
.card{flex:0 0 min(340px,78vw);scroll-snap-align:center;position:relative;border-radius:16px;overflow:hidden;background:var(--ink);color:#fff;aspect-ratio:3/4.2;transition:transform .5s var(--ease);text-decoration:none;display:block}
.card:nth-child(odd){transform:rotate(-1.8deg)}.card:nth-child(even){transform:rotate(1.6deg) translateY(18px)}
.card:hover{transform:rotate(0) translateY(-6px)}
.card img,.card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.card:hover img{transform:scale(1.05)}
.card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,27,38,.92) 0%,rgba(13,27,38,.15) 55%,rgba(13,27,38,0) 100%)}
.card .t{position:absolute;z-index:2;left:22px;right:22px;bottom:22px}
.card h3{font-size:26px;margin-bottom:8px}
.card p{font-size:15px;color:#d5e1e8;line-height:1.45}
.card .m{display:inline-block;margin-bottom:10px;padding:4px 12px;border-radius:99px;background:var(--marigold);color:#1b1000;font-size:13px;font-weight:600}
.rail-ctl{display:flex;gap:10px}
.rail-ctl button{width:52px;height:52px;border-radius:50%;border:2px solid var(--ink);background:none;color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s}
.rail-ctl button:hover{background:var(--ink);color:#fff}
.rail-ctl svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}
.dark .rail-ctl button,.dark2 .rail-ctl button{border-color:#fff;color:#fff}.dark .rail-ctl button:hover,.dark2 .rail-ctl button:hover{background:#fff;color:var(--ink)}

/* trek band */
.trek{position:relative;color:#fff;background:var(--ink);overflow:hidden}
.trek video,.trek>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.trek::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,27,38,.92),rgba(13,27,38,.35))}
.trek .wrap{position:relative;z-index:2;padding:110px 0}
.trek h2{max-width:14ch}
.routes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:36px 0;max-width:900px}
.routes div{padding:20px;border-radius:12px;background:rgba(255,255,255,.1);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.2)}
.routes b{display:block;font:400 21px/1.15 var(--display);margin-bottom:6px}
.routes span{font-size:14.5px;color:#d3dfe7;line-height:1.45;display:block}

/* culture */
.culture{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}
.mosaic{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:92px;gap:12px}
.mosaic figure{border-radius:12px;overflow:hidden;background:var(--mist);position:relative}
.mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.mosaic figure:hover img{transform:scale(1.05)}
.m1{grid-column:1/4;grid-row:1/5}.m2{grid-column:4/7;grid-row:1/4}.m3{grid-column:4/7;grid-row:4/7}.m4{grid-column:1/4;grid-row:5/7}
.quote-big{font:400 clamp(26px,2.6vw,36px)/1.25 var(--display);margin:28px 0 8px;max-width:20ch}

/* reviews */
.rate{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-bottom:60px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.18)}
.rate b{display:block;font:400 clamp(34px,3.6vw,52px)/1 var(--display);color:var(--gold)}
.rate span{display:block;margin-top:8px;color:#b9c9d4;font-size:15px;line-height:1.4}
.rv{position:relative;min-height:330px}
.rv blockquote{position:absolute;inset:0;opacity:0;transform:translateY(14px);transition:opacity .7s var(--ease),transform .7s var(--ease);pointer-events:none}
.rv blockquote.on{opacity:1;transform:none;pointer-events:auto;position:relative}
.rv p{font:400 clamp(24px,3vw,40px)/1.28 var(--display);max-width:30ch}
.rv footer{margin-top:26px;font-size:16px;color:#c3d2dc}
.rv footer b{color:#fff;font-weight:600}
.rv-ctl{display:flex;gap:8px;align-items:center;margin-top:34px;flex-wrap:wrap}
.rv-ctl button{border:0;cursor:pointer;background:rgba(255,255,255,.35);height:8px;width:8px;border-radius:99px;padding:0;position:relative;transition:width .3s,background .3s}
.rv-ctl button::before{content:"";position:absolute;inset:-16px -5px}
.rv-ctl button[aria-current="true"]{width:32px;background:var(--marigold)}
.rv-links{margin-left:auto;display:flex;gap:22px;font-size:15px}
.rv-links a{color:#e3ecf1}

/* amenities */
.am{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.am li{list-style:none;padding:30px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .3s}
.am li:hover{background:#fff}
.am svg{width:34px;height:34px;stroke:var(--olive);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-bottom:16px}
.am b{display:block;font:400 20px/1.2 var(--display);margin-bottom:6px}
.am span{font-size:15px;color:var(--muted);line-height:1.5;display:block}

/* journey */
.journey{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}
.route{position:relative}
.route svg{width:100%;height:auto;overflow:visible}
.route .trail{fill:none;stroke:var(--marigold);stroke-width:3.4;stroke-dasharray:3 10;stroke-linecap:round;animation:march 30s linear infinite}
@keyframes march{to{stroke-dashoffset:-260}}
.route text{font:400 22px var(--display);fill:var(--ink)}
.route .sm{font:500 14px var(--body);fill:var(--muted)}
.sisters{display:grid;gap:14px;margin-top:30px}
.sis{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 24px;border-radius:14px;background:#fff;border:1px solid var(--line);text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s}
.sis:hover{transform:translateX(6px);box-shadow:0 16px 30px -18px rgba(13,27,38,.5)}
.sis b{display:block;font:400 22px/1.15 var(--display)}
.sis span{font-size:15px;color:var(--muted);display:block;line-height:1.4}
.sis svg{width:22px;height:22px;flex:none;stroke:var(--marigold-d);fill:none;stroke-width:2}

/* contact / enquiry */
.bk{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.bk-side h2{max-width:12ch}
.ci{list-style:none;margin-top:34px;display:grid;gap:18px}
.ci li{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;font-size:16.5px}
.ci svg{width:24px;height:24px;stroke:var(--marigold);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-top:2px}
.ci a{text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}.ci a:hover{border-color:var(--marigold)}
.formcard{position:relative;background:#fff;color:var(--text);border-radius:22px;padding:44px 42px;box-shadow:0 40px 80px -40px rgba(0,0,0,.6)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.f{display:flex;flex-direction:column;gap:6px}.f.full{grid-column:1/-1}
.f label,.f legend{font-size:15px;font-weight:600}
.f label em,.f legend em{font-style:normal;font-weight:400;color:var(--muted)}
.f input[type=text],.f input[type=email],.f input[type=tel],.f input[type=date],.f select,.f textarea{width:100%;min-height:52px;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font:400 16px/1.4 var(--body);color:var(--text);background:#fbfdfe;transition:border-color .15s,box-shadow .15s}
.f textarea{min-height:110px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--marigold);box-shadow:0 0 0 4px rgba(238,138,27,.22)}
.f .msg{display:none;font-size:13.5px;color:#b3261e;font-weight:500}
.f.invalid .msg{display:block}.f.invalid input,.f.invalid select,.f.invalid textarea{border-color:#b3261e}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.submit{margin-top:26px;width:100%;min-height:58px;font-size:18px}
.err{display:none;margin-top:16px;padding:14px 16px;border-radius:10px;background:#fdecea;color:#7a1a14;font-size:15px}.err.show{display:block}
.done{display:none;text-align:center;padding:26px 6px}.done.show{display:block}
.done h3{font-size:32px;margin-bottom:12px}.done p{color:var(--muted);margin:0 auto 24px}
.done .row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:300;overflow:hidden}
.confetti i{position:absolute;top:-14px;width:10px;height:15px;animation:fall var(--dur) var(--del) ease-in forwards}
@keyframes fall{to{transform:translate(var(--dx),105vh) rotate(var(--rot))}}
.map{margin-top:34px;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.2);aspect-ratio:16/10;background:var(--ink-2)}
.map iframe{width:100%;height:100%;border:0;filter:saturate(.85)}

/* steps */
.steps{display:grid;gap:0;max-width:760px;counter-reset:s}
.steps li{list-style:none;position:relative;padding:0 0 38px 70px;counter-increment:s}
.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:46px;height:46px;border-radius:50%;background:var(--marigold);color:#1b1000;display:grid;place-items:center;font:700 19px/1 var(--body)}
.steps li::after{content:"";position:absolute;left:22px;top:54px;bottom:6px;width:2px;background:repeating-linear-gradient(180deg,var(--marigold) 0 4px,transparent 4px 10px)}
.steps li:last-child::after{display:none}
.steps b{display:block;font:400 23px/1.2 var(--display);margin-bottom:4px}
.steps span{color:var(--muted)}
.dark .steps span{color:#b9c9d4}

/* faq */
.faq{max-width:820px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:22px 44px 22px 0;font:400 22px/1.3 var(--display);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:16px;font:400 32px/1 var(--body);color:var(--marigold-d);transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 44px 24px 0;color:var(--muted)}

/* inner page hero */
.phero{position:relative;min-height:62svh;display:flex;align-items:flex-end;color:#fff;background:var(--ink);overflow:hidden}
.phero>img,.phero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,27,38,.88) 0%,rgba(13,27,38,.1) 60%),linear-gradient(180deg,rgba(13,27,38,.55),rgba(13,27,38,0) 28%)}
.phero .wrap{position:relative;z-index:2;padding:150px 0 80px}
.phero h1{font-size:clamp(42px,6vw,88px);max-width:14ch}
.phero p{margin-top:18px;font-size:clamp(17px,1.4vw,20px);color:#e4ecf0;max-width:52ch}

/* gallery */
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}
.filters button{border:1.5px solid var(--line);background:#fff;border-radius:999px;min-height:44px;padding:0 22px;font:600 15px/1 var(--body);cursor:pointer;color:var(--text);transition:all .2s}
.filters button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.gal{columns:3;column-gap:16px}
.gal figure{break-inside:avoid;margin-bottom:16px;border-radius:12px;overflow:hidden;position:relative;cursor:zoom-in;background:var(--mist)}
.gal figure.hide{display:none}
.gal img,.gal video{width:100%;height:auto;display:block;transition:transform .8s var(--ease)}
.gal figure:hover img{transform:scale(1.04)}
.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 16px 14px;color:#fff;font-size:14.5px;background:linear-gradient(0deg,rgba(13,27,38,.85),transparent);opacity:0;transition:opacity .3s}
.gal figure:hover figcaption,.gal figure:focus-visible figcaption{opacity:1}
.gal .vid::before{content:"";position:absolute;right:14px;top:14px;z-index:2;width:38px;height:38px;border-radius:50%;background:rgba(13,27,38,.7) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 6.5l9 5.5-9 5.5z' fill='%23fff'/%3E%3C/svg%3E") center/22px no-repeat}
.lb{position:fixed;inset:0;z-index:400;background:rgba(7,14,20,.94);display:none;align-items:center;justify-content:center;padding:30px}
.lb.open{display:flex}
.lb img,.lb video{max-width:min(1300px,100%);max-height:86vh;border-radius:8px;object-fit:contain}
.lb p{position:absolute;left:0;right:0;bottom:18px;text-align:center;color:#d3dfe6;font-size:15px;max-width:none}
.lb button{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;width:52px;height:52px;border-radius:50%;cursor:pointer;font-size:26px;display:grid;place-items:center}
.lb .x{top:18px;right:18px}.lb .pv{left:18px;top:50%}.lb .nx{right:18px;top:50%}

/* footer */
.band{display:block;width:100%;height:22px}
footer.ft{background:#08121a;color:#a9b9c5;padding:72px 0 110px;font-size:15.5px}
.ft-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:44px}
.ft h4{font:400 19px/1.2 var(--display);color:#fff;margin-bottom:16px}
.ft a{text-decoration:none}.ft a:hover{color:#fff;text-decoration:underline}
.ft li{list-style:none;margin-bottom:9px}
.ft .brand{margin-bottom:18px}.ft .brand img{width:88px}
.ft p{max-width:36ch}
.ft-copy{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);font-size:13.5px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.stick{position:fixed;left:14px;right:14px;bottom:14px;z-index:90;display:none;gap:10px;transform:translateY(140%);transition:transform .35s var(--ease)}
.stick.show{transform:none}
.stick .btn{flex:1;box-shadow:0 12px 30px rgba(0,0,0,.4)}
.wa{position:fixed;right:22px;bottom:22px;z-index:90;width:58px;height:58px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 10px 26px rgba(0,0,0,.35);transition:transform .25s var(--ease)}
.wa:hover{transform:scale(1.08)}.wa svg{width:30px;height:30px;fill:#fff}

/* reveal */
.rv-up{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv-up.in{opacity:1;transform:none}

/* responsive */
@media (max-width:1120px){
  .links{gap:20px}.brand span{display:none}
  .intro,.culture,.split,.journey,.bk,.pf-grid{grid-template-columns:1fr;gap:54px}
  .split.rev>:first-child{order:0}
  .collage{height:560px}
  .am{grid-template-columns:repeat(2,1fr)}
  .ft-grid{grid-template-columns:1fr 1fr}
  .gal{columns:2}
}
@media (max-width:980px){
  .links{position:absolute;top:78px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:rgba(13,27,38,.98);padding:6px 24px 26px;display:none}
  .nav.open .links{display:flex}
  .links a{padding:16px 0;font-size:18px;border-bottom:1px solid rgba(255,255,255,.1)}
  .links a::after{display:none}.links a.btn{margin-top:18px;border:0;justify-content:center}
  .burger{display:block}
  .book{grid-template-columns:1fr 1fr;bottom:20px}.book .btn{grid-column:1/-1;min-height:56px}
  .hero-in{padding:130px 0 330px}
  .hero-meta{display:none}
  .reel-ctl{bottom:300px;left:24px;right:auto}
  .rstage{grid-template-columns:1fr}.rstage .ph{min-height:340px}
  .rate{grid-template-columns:1fr 1fr}
  .routes{grid-template-columns:1fr}
}
@media (max-width:720px){
  body{font-size:16.5px}
  .wrap{width:calc(100% - 40px)}
  .sec{padding:76px 0}
  .brand img{width:48px}
  .hero h1{font-size:clamp(44px,13vw,64px)}
  .hero-in{padding:120px 0 360px}
  .book{padding:10px;gap:8px;width:calc(100% - 24px);bottom:12px}.book label{padding:7px 14px}
  .reel-ctl{bottom:350px}
  .flags{height:120px;margin-bottom:-20px}.flag{width:76px;height:54px;margin-left:-38px;font-size:14px}
  .facts{grid-template-columns:1fr 1fr 1fr;gap:12px}.facts b{font-size:28px}.facts span{font-size:13.5px}
  .collage{height:470px}.collage .c1{height:320px}.collage .c2{height:220px}.collage .c3{height:220px}
  .pin .tag{padding:6px 10px}.pin .tag b{font-size:15px}.pin .tag small{font-size:12px}.pin .stem{height:12px}
  .pf-note{margin-top:-40px;padding-bottom:70px}
  .rstage .info{padding:30px 22px}.ticks{grid-template-columns:1fr}
  .hours{grid-template-columns:1fr}
  .mosaic{grid-auto-rows:70px}
  .am{grid-template-columns:1fr}.am li{padding:24px 20px}
  .formcard{padding:30px 20px}.grid2{grid-template-columns:1fr}
  .ft-grid{grid-template-columns:1fr}
  .gal{columns:2;column-gap:10px}.gal figure{margin-bottom:10px}
  .stick{display:flex}.wa{display:none}
  .rv{min-height:380px}.rv-links{margin-left:0;width:100%}
  .rate b{font-size:30px}
  .sec-head{margin-bottom:36px}
  .filters button{padding:0 16px;font-size:14px}
  .trek .wrap{padding:80px 0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
  .rv-up{opacity:1;transform:none}
  .card:nth-child(odd),.card:nth-child(even){transform:none}
  .flag{animation:none}
}
[hidden]{display:none!important}
.pf h2{font-size:clamp(36px,4.8vw,66px)}
.pf .lede{color:#b9c9d4}
.trek h2{font-size:clamp(36px,4.8vw,66px)}
.rv{min-height:260px}
@media (max-width:720px){.rv{min-height:380px}}
.book label,.book input,.book select{min-width:0}
.book input[type=date]{-webkit-appearance:none;appearance:none}
@media (max-width:720px){
  .pin:nth-of-type(1) .tag{position:relative;left:34px}
  .pin .tag small{display:none}
  .pin .tag{padding:5px 10px}
  .pf-note{margin-top:-20px}
}
@media (min-width:1121px){.am.five{grid-template-columns:repeat(5,1fr)}}

/* ===================== v2: colour, culture, type ===================== */
:root{--indigo:#0a1f44;--cream:#fbf3e1;--sand:#f3e4c3;--sun:#f5a01a;--vermilion:#c8321f;--crimson:#7a1522;--turq:#0f9d9a;--pine:#10382b;--gold:#f2c14e;--sky:#bfe3f1;
 --dhaka:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='24'%3E%3Crect width='48' height='24' fill='%237a1522'/%3E%3Cpath d='M0 24L12 0l12 24z' fill='%23f5a01a'/%3E%3Cpath d='M24 0l12 24 12-24z' fill='%23fbf3e1'/%3E%3Cpath d='M7 24l5-10 5 10zM31 0l5 10 5-10z' fill='%230f9d9a'/%3E%3C/svg%3E")}
body{background:var(--cream)}
h1,h2,h3,h4{letter-spacing:0;line-height:1.12}
.sec h2,.pf h2,.trek h2{font-size:clamp(34px,4.4vw,60px)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:700 13.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--vermilion);margin-bottom:18px}
.eyebrow::before{content:"";width:34px;height:12px;background:linear-gradient(90deg,#2f7bd0 0 20%,#fff 20% 40%,#c8321f 40% 60%,#2f9a55 60% 80%,#f5a01a 80%);border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.s-crimson .eyebrow,.dark .eyebrow,.dark2 .eyebrow,.s-pine .eyebrow,.pf .eyebrow,.trek .eyebrow{color:var(--gold)}
.s-sun .eyebrow{color:var(--crimson)}
.dhaka{height:18px;background:var(--dhaka) repeat-x;background-size:auto 18px}
.ridge{display:block;width:100%;height:clamp(40px,6vw,90px);margin:-1px 0}
.ridge path{fill:currentColor}

/* hero v2 */
.hero{display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch}
.hero-in{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:56px;align-items:end;padding:128px 0 34px;width:min(1240px,100% - 48px);margin-inline:auto;position:relative;z-index:3}
.hero h1{font-size:clamp(36px,4.6vw,68px);max-width:15ch;line-height:1.06}
.hero .kick{display:block;margin:0 0 16px;font:600 clamp(16px,1.3vw,19px)/1.3 var(--body);color:var(--gold);letter-spacing:.02em}
.hero .sub{margin-top:20px;max-width:560px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-cta .btn{min-height:56px;padding:0 30px;font-size:17px}
.perks{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:26px;list-style:none;font-size:15px;color:#f4ecdb}
.perks li{display:flex;align-items:center;gap:8px}
.perks li::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--sun) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.4 2.4 4.6-4.8' fill='none' stroke='%231b1000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.reel-ctl{position:static;margin-top:26px}
.hero-rv{position:relative;background:rgba(251,243,225,.96);color:var(--text);border-radius:22px 22px 22px 6px;padding:26px 28px 22px;box-shadow:0 30px 70px -26px rgba(0,0,0,.65);border-top:6px solid var(--sun)}
.hero-rv::before{content:"\201C";position:absolute;right:20px;top:-6px;font:400 110px/1 var(--display);color:var(--vermilion);opacity:.18}
.stars{display:flex;gap:3px;margin-bottom:12px}
.stars svg{width:20px;height:20px;fill:var(--sun)}
.hero-rv .tag{display:block;font:700 12.5px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--vermilion);margin-bottom:12px}
.hrv{position:relative;min-height:190px}
.hrv blockquote{position:absolute;inset:0;opacity:0;transform:translateY(10px);transition:opacity .6s var(--ease),transform .6s var(--ease);pointer-events:none}
.hrv blockquote.on{opacity:1;transform:none;pointer-events:auto;position:relative}
.hrv p{font:400 clamp(19px,1.7vw,24px)/1.35 var(--display);color:var(--ink)}
.hrv footer{margin-top:14px;font-size:14.5px;color:var(--muted)}.hrv footer b{color:var(--ink)}
.hero-rv .rv-ctl{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.hero-rv .rv-ctl button{background:#d7c391}
.hero-rv .rv-ctl button[aria-current="true"]{background:var(--vermilion)}
.scores{display:flex;gap:14px;flex-wrap:wrap;margin-left:auto;font-size:13.5px;color:var(--muted)}
.scores b{color:var(--ink)}
.book{position:relative;left:auto;bottom:auto;transform:none;margin:0 auto 48px;z-index:6;border-top:5px solid var(--sun)}
.flags{margin-top:-28px}

/* sections */
.sec{padding:104px 0}
.s-sand{background:var(--sand)}
.s-crimson{background:radial-gradient(1200px 500px at 85% -10%,#a52233 0,transparent 60%),var(--crimson);color:#fff4df}
.s-crimson .lede,.s-crimson .body p{color:#f1d9c8}
.s-crimson h2,.s-crimson h3{color:var(--gold)}
.s-pine{background:radial-gradient(900px 500px at 10% 110%,#1d5b45 0,transparent 60%),var(--pine);color:#f3ecd8}
.s-pine h2,.s-pine h3{color:var(--gold)}
.s-pine .body p,.s-pine .lede{color:#cfe0d3}
.s-sun{background:var(--sun);color:#2a1700}
.s-sun h2{color:#2a1700}.s-sun .lede{color:#4a2d05}
.s-sun .rail-ctl button{border-color:#2a1700;color:#2a1700}.s-sun .rail-ctl button:hover{background:#2a1700;color:var(--sun)}
.dark,.dark2{background:var(--indigo)}
.dark h2,.dark2 h2{color:#fff}
.pf{background:linear-gradient(180deg,var(--indigo),#0b2a55 80%)}
.pf-card{background:rgba(255,255,255,.08);border-color:rgba(242,193,78,.4)}
.pf-card h3{color:var(--gold)}
.pf-card .ht{color:var(--sun);font-size:15px}
.pin .dot{background:var(--sun)}
.pin[aria-expanded="true"] .tag,.pin:hover .tag{background:var(--sun)}
.intro{position:relative}
.sunburst{position:absolute;right:-6%;top:6%;width:min(560px,60%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--sun) 0 38%,rgba(245,160,26,.0) 39%),repeating-conic-gradient(from 0deg,rgba(245,160,26,.22) 0 6deg,transparent 6deg 15deg);z-index:0;opacity:.8;pointer-events:none}
.collage{z-index:1}
.collage figure{border:6px solid #fff;border-radius:6px;box-shadow:0 26px 50px -24px rgba(60,20,0,.55)}
.facts b{color:var(--crimson)}
.facts{border-top:2px dashed var(--sun)}

/* rooms */
.rooms-tabs{background:#fff;border:2px solid var(--ink)}
.rooms-tabs button[aria-selected="true"]{background:var(--turq);color:#fff}
.rstage{border-radius:10px;border:3px solid var(--ink);box-shadow:12px 12px 0 var(--sun)}
.rstage .info{position:relative}
.rstage .info::before{content:"";position:absolute;left:0;top:0;right:0;height:14px;background:var(--dhaka) repeat-x;background-size:auto 14px}
.rstage .info{padding-top:58px}
.rstage h3{color:var(--crimson)}
.specs li{background:var(--sand)}
.ticks li::before{background-color:var(--turq)}
.btn-dark{background:var(--crimson)}.btn-dark:hover{background:#9c1c2d}
.btn-gold{background:var(--sun);box-shadow:0 6px 0 #b86a00}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 0 #b86a00;background:#ffb029}
.btn-gold:active{transform:translateY(3px);box-shadow:0 2px 0 #b86a00}
.nav .btn-gold{box-shadow:none}

/* hospitality */
.host{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;margin-bottom:60px}
.host .quote-big{color:#fff;max-width:22ch}
.arches{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;align-items:end}
.arch{border-radius:999px 999px 10px 10px;overflow:hidden;border:4px solid var(--gold);background:var(--crimson);position:relative}
.arch img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--ease)}
.arch:hover img{transform:scale(1.05)}
.arch:nth-child(1){aspect-ratio:3/4.3}.arch:nth-child(2){aspect-ratio:3/5.2}.arch:nth-child(3){aspect-ratio:3/4.6}.arch:nth-child(4){aspect-ratio:3/3.9}
.arch figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 12px 12px;text-align:center;font-size:13.5px;color:#fff;background:linear-gradient(0deg,rgba(60,6,14,.88),transparent)}
.pair{display:grid;grid-template-columns:1.4fr 1fr;gap:22px;margin-top:26px}
.pair figure{position:relative;border-radius:10px;overflow:hidden;border:4px solid var(--gold);min-height:260px}
.pair img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pair figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 16px 12px;font-size:14px;color:#fff;background:linear-gradient(0deg,rgba(60,6,14,.88),transparent)}

/* dining */
.s-pine .frame{border:4px solid var(--gold);border-radius:200px 200px 10px 10px}
.s-pine .frame.wide{border-radius:10px}
.s-pine .tag-stamp{background:var(--sun)}
.s-pine .hours div{background:rgba(255,255,255,.08);border-color:rgba(242,193,78,.35)}
.s-pine .hours b{color:var(--gold)}
.garland{display:block;width:100%;height:60px;margin-bottom:34px}

/* rail on sun */
.s-sun .card{box-shadow:0 20px 40px -20px rgba(60,20,0,.7);border:4px solid #fff}
.card .m{background:var(--crimson);color:#fff}

/* trek */
.trek::after{background:linear-gradient(90deg,rgba(10,31,68,.94),rgba(15,157,154,.35))}
.routes div{border-color:rgba(242,193,78,.5)}
.routes b{color:var(--gold)}

/* amenities in colour */
.am{border:0;gap:18px}
.am li{border:0;border-radius:14px;background:#fff;box-shadow:0 14px 30px -22px rgba(60,30,0,.6);border-top:6px solid var(--c)}
.am li:nth-child(5n+1){--c:#2f7bd0}.am li:nth-child(5n+2){--c:#e9e1cf}.am li:nth-child(5n+3){--c:var(--vermilion)}.am li:nth-child(5n+4){--c:#2f9a55}.am li:nth-child(5n+5){--c:var(--sun)}
.am svg{stroke:var(--crimson)}
.am li:hover{transform:translateY(-5px);background:#fff;transition:transform .3s var(--ease)}

/* journey + jeep */
.s-sky{background:linear-gradient(180deg,#d9f0f8 0,#fbf3e1 100%)}
.route{border-radius:24px;overflow:hidden;border:3px solid var(--ink);box-shadow:12px 12px 0 var(--turq);background:#cfeaf5}
.route svg{display:block}
.route .trail{stroke:#fff;stroke-width:5;stroke-dasharray:2 12;animation:march 30s linear infinite}
.route .road{fill:none;stroke:#8b5a2b;stroke-width:12;stroke-linecap:round;opacity:.35}
.route text{font:400 21px var(--display);fill:var(--ink);paint-order:stroke;stroke:#fff;stroke-width:5px;stroke-linejoin:round}
.route .sm{font:600 13px var(--body);fill:var(--crimson);stroke-width:4px}
.wheel{transform-box:fill-box;transform-origin:center;animation:spin .5s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.bob{animation:bob .45s ease-in-out infinite alternate}
@keyframes bob{to{transform:translateY(-1.6px)}}
.steps li::before{background:var(--vermilion);color:#fff}
.steps li::after{background:repeating-linear-gradient(180deg,var(--sun) 0 4px,transparent 4px 10px)}
.sis{border:2px solid var(--ink);border-radius:12px;box-shadow:5px 5px 0 var(--sun)}
.sis:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--sun)}

/* CTA */
.cta-band{position:relative;background:linear-gradient(135deg,var(--crimson) 0,#b3261e 55%,var(--sun) 120%);color:#fff;overflow:hidden;text-align:center}
.cta-band h2{color:#fff}
.cta-band .lede{color:#ffe9cf;margin-inline:auto}
.cta-band svg.mtn{position:absolute;left:0;right:0;bottom:0;width:100%;height:46%;opacity:.28;pointer-events:none}
.cta-band .wrap{position:relative;z-index:2}

footer.ft{background:#081428}
.band{display:none}
.ft .dhaka{margin-bottom:0}

/* page hero */
.phero::after{background:linear-gradient(0deg,rgba(10,31,68,.92) 0%,rgba(10,31,68,.15) 62%),linear-gradient(180deg,rgba(10,31,68,.55),rgba(10,31,68,0) 28%)}
.phero h1{font-size:clamp(38px,5.4vw,78px)}

@media (max-width:1120px){
  .hero-in{grid-template-columns:1fr;gap:34px}
  .host{grid-template-columns:1fr;gap:34px}
  .arches{grid-template-columns:repeat(2,1fr)}
  .sunburst{display:none}
}
@media (max-width:720px){
  .sec{padding:72px 0}
  .hero h1{font-size:clamp(34px,10.4vw,48px)}
  .hero-in{padding:104px 0 26px;width:calc(100% - 40px)}
  .hero-cta .btn{flex:1 1 100%}
  .perks{font-size:14px;gap:6px 16px}
  .hero-rv{padding:22px 20px 18px}
  .hrv{min-height:230px}
  .book{margin-bottom:40px}
  .pair{grid-template-columns:1fr}.pair figure{min-height:200px}
  .rstage{box-shadow:6px 6px 0 var(--sun)}
  .route{box-shadow:6px 6px 0 var(--turq)}
}
@media (prefers-reduced-motion:reduce){.wheel,.bob{animation:none}}

.pf-stage::after{background:linear-gradient(0deg,#0a1f44 0%,rgba(10,31,68,0) 30%),linear-gradient(180deg,rgba(10,31,68,.5),rgba(10,31,68,0) 25%)}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.trio figure{border-radius:8px;overflow:hidden;border:5px solid #fff;box-shadow:0 22px 40px -24px rgba(60,20,0,.6);aspect-ratio:3/4;background:var(--sand)}
.trio figure:nth-child(2){transform:translateY(26px)}
.trio img{width:100%;height:100%;object-fit:cover}
.vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
.vgrid figure{border-radius:8px;overflow:hidden;aspect-ratio:4/3;border:4px solid #fff;box-shadow:0 18px 34px -22px rgba(60,20,0,.6)}
.vgrid img{width:100%;height:100%;object-fit:cover}
@media (max-width:720px){.trio{grid-template-columns:1fr 1fr}.trio figure:nth-child(3){display:none}.vgrid{grid-template-columns:1fr 1fr}}
.hero h1{max-width:18ch}
.ghan-note{}

/* ===================== v3: warmth, flowers, one-piece sections ===================== */
h1,h2,h3{text-wrap:balance}
.sec{position:relative;overflow:hidden}
.sec>.wrap{position:relative;z-index:2}
/* hero: no card behind reviews, full-width headline */
.hero-in{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);grid-template-areas:"top top" "left rv";gap:30px 56px;align-items:end}
.hero-top{grid-area:top}.hero-l{grid-area:left}.hero-rv{grid-area:rv}
.hero h1{max-width:26ch;font-size:clamp(34px,4.7vw,70px);line-height:1.06}
.hero .kick{margin-bottom:14px}
.hero .sub{margin-top:0}
.hero-rv{background:none;box-shadow:none;border-radius:0;border:0;border-left:4px solid var(--sun);padding:2px 0 2px 26px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.55)}
.hero-rv::before{content:"\201C";position:absolute;left:18px;top:-44px;font:400 96px/1 var(--display);color:var(--sun);opacity:.9;text-shadow:none}
.hero-rv .tag{color:var(--gold)}
.hrv p{color:#fff;font-size:clamp(19px,1.65vw,25px)}
.hrv footer{color:#f2e6c8}.hrv footer b{color:#fff}
.hero-rv .rv-ctl{border-top:1px solid rgba(255,255,255,.3)}
.hero-rv .rv-ctl button{background:rgba(255,255,255,.45)}
.hero-rv .rv-ctl button[aria-current="true"]{background:var(--sun)}
.scores{color:#f2e6c8}.scores b{color:#fff}
.hero::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(900px 600px at 100% 100%,rgba(10,24,48,.65),transparent 70%),radial-gradient(700px 500px at 95% 0%,rgba(255,170,60,.28),transparent 70%)}
.hero-in{z-index:3}
/* golden light on cream sections */
.sunlit{background:radial-gradient(900px 560px at 100% 0%,rgba(255,196,80,.55),transparent 62%),radial-gradient(700px 500px at 0% 100%,rgba(255,170,90,.25),transparent 65%),var(--cream)}
.sunburst{animation:slowspin 120s linear infinite}
@keyframes slowspin{to{transform:rotate(360deg)}}
.intro-head{margin-bottom:46px;position:relative;z-index:2}
.intro-head h2{max-width:26ch}
.intro{grid-template-columns:1fr 1fr;gap:70px}
.host-head{margin-bottom:38px}.host-head h2{max-width:28ch}
.host{margin-bottom:56px}
/* peak finder as one scene */
.pf-stage{position:relative;aspect-ratio:auto;overflow:visible}
.pf-pic{position:relative;aspect-ratio:16/9;overflow:hidden}
.pf-pic>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pf-pic::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0a1f44 0%,rgba(10,31,68,.88) 20%,rgba(10,31,68,0) 52%),linear-gradient(180deg,rgba(10,31,68,.45),rgba(10,31,68,0) 24%);pointer-events:none}
.pf-over{position:absolute;left:0;right:0;bottom:0;z-index:4;padding-bottom:44px}
.pf-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:end}
.pf{background:#0a1f44}
.pf-stage::after{display:none}
.pf-card{min-height:0}
@media (max-width:980px){
  .pf-over{position:static;padding:30px 0 64px;background:#0a1f44}
  .pf-pic::after{background:linear-gradient(0deg,#0a1f44 0%,rgba(10,31,68,0) 30%),linear-gradient(180deg,rgba(10,31,68,.45),rgba(10,31,68,0) 24%)}
  .pf-grid{grid-template-columns:1fr;gap:26px}
}
/* flowers */
.fl{position:absolute;z-index:1;width:clamp(150px,21vw,320px);height:auto;pointer-events:none;filter:drop-shadow(0 6px 10px rgba(40,10,0,.18))}
.fl-tl{left:0;top:0}.fl-tr{right:0;top:0;transform:scaleX(-1)}.fl-bl{left:0;bottom:0;transform:scaleY(-1)}.fl-br{right:0;bottom:0;transform:scale(-1,-1)}
.sway{transform-origin:0 0;animation:fsway 8s ease-in-out infinite alternate}
@keyframes fsway{from{transform:rotate(-1.6deg)}to{transform:rotate(1.8deg)}}
.petals{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.petals i{position:absolute;top:-30px;left:0;width:calc(14px*var(--s));height:calc(18px*var(--s));border-radius:70% 0 70% 0;background:var(--c);opacity:.75;animation:drift var(--t) linear infinite;animation-delay:var(--d)}
@keyframes drift{0%{transform:translate(0,-30px) rotate(0)}50%{transform:translate(40px,50vh) rotate(260deg)}100%{transform:translate(-20px,110vh) rotate(540deg)}}
/* culture cards */
.ccards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:56px;position:relative}
.cc-title{grid-column:1/-1;font-size:clamp(26px,3vw,38px);color:var(--gold);margin-bottom:6px}
.cc{background:rgba(255,244,223,.1);border:1.5px solid rgba(242,193,78,.5);border-radius:14px;padding:22px 20px;display:flex;flex-direction:column;gap:8px;backdrop-filter:blur(3px)}
.cc b{font:400 21px/1.2 var(--display);color:#fff}
.cc span:last-child{font-size:15px;color:#f1d9c8;line-height:1.5}
.cc-i{width:64px;height:64px;border-radius:50%;background:var(--cream);display:grid;place-items:center;margin-bottom:6px;box-shadow:0 0 0 3px var(--gold)}
.cc-i svg{width:42px;height:42px}
/* village life + art on explore */
.vlife{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center;margin-top:56px}
.arch.vid{aspect-ratio:3/4;border-color:var(--crimson);background:var(--ink)}
.arch.vid video{width:100%;height:100%;object-fit:cover}
.vlife h3{font-size:clamp(26px,3vw,40px);color:var(--crimson);max-width:20ch}
.frame video{width:100%;height:100%;object-fit:cover;display:block}
/* golden-hour closing scene */
.cta-band{background:linear-gradient(180deg,#6d1220 0%,#b3261e 34%,#f08a24 70%,#ffd98a 100%);padding:96px 0 270px}
.cta-band .scene{position:absolute;left:0;right:0;bottom:0;width:100%;height:290px;z-index:1;pointer-events:none}
.cta-band .petals{z-index:2}
.warm{position:relative}
.collage figure::after,.arch::after,.trio figure::after,.vgrid figure::after,.pair figure::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,200,90,.22),rgba(255,160,60,0) 55%);mix-blend-mode:soft-light}
.collage figure,.trio figure,.vgrid figure{position:relative}
@media (max-width:1120px){
  .hero-in{grid-template-columns:1fr;grid-template-areas:"top" "left" "rv"}
  .intro{grid-template-columns:1fr;gap:44px}
  .ccards{grid-template-columns:1fr 1fr}
  .vlife{grid-template-columns:1fr;gap:30px}.arch.vid{max-width:340px}
}
@media (max-width:720px){
  .fl{width:128px;opacity:.95}
  .ccards{grid-template-columns:1fr}
  .hero-rv{padding-left:20px}
  .hero-rv::before{top:-38px;font-size:80px}
  .cta-band{padding:70px 0 220px}.cta-band .scene{height:210px}
}
@media (prefers-reduced-motion:reduce){.sway,.sunburst,.petals i{animation:none}.petals{display:none}}
.fl{width:clamp(120px,14vw,230px)}
.fl-tl{transform:translate(-14%,-14%)}.fl-tr{transform:scaleX(-1) translate(-14%,-14%)}.fl-bl{transform:scaleY(-1) translate(-14%,-14%)}.fl-br{transform:scale(-1,-1) translate(-14%,-14%)}
@media (max-width:720px){.fl{width:104px}}

/* =====================================================================
   ROUND 4: Ghandruk architecture, real flowers, sun-and-mountains, food
   ===================================================================== */
:root{--stone:url(../rj-images/tex-stone.webp);--plaster:url(../rj-images/tex-plaster.webp);--ochre:#8e3b22;--beam:#4a2412;--beam2:#c98a3a;--slate:#4a5058}
.fl{display:none!important}

/* ---- whitewashed wall (default light sections) with a red-ochre and stone plinth ---- */
.sec.wall{background:var(--plaster) 0 0/512px auto,var(--snow)}
.sec.wall::after,.sec.s-sand::after{content:"";position:absolute;left:0;right:0;bottom:0;height:44px;z-index:0;pointer-events:none;
  background:linear-gradient(var(--ochre),var(--ochre)) 0 0/100% 7px no-repeat,var(--stone) 0 7px/380px auto repeat-x;box-shadow:inset 0 10px 14px -10px rgba(0,0,0,.45)}
.sec.wall,.sec.s-sand{padding-bottom:156px}
/* ---- exposed stone masonry wall, softened for reading ---- */
.sec.s-sand{background:linear-gradient(rgba(247,234,205,.86),rgba(247,234,205,.86)),var(--stone) 0 0/560px auto;box-shadow:inset 0 11px 0 var(--beam),inset 0 14px 0 var(--beam2)}
.sec.s-sand{padding-top:130px}

/* ---- slate eave with hanging baskets ---- */
.eave{position:relative;height:70px;z-index:6;margin:-1px 0 0;background:linear-gradient(180deg,var(--p) 0 10px,var(--n) 10px)}
.eave .roof{position:absolute;left:0;top:0;width:100%;height:70px}
.hbs{position:absolute;left:0;right:0;top:60px;height:0;pointer-events:none}
.hb{position:absolute;top:0;width:calc(74px*var(--s));margin-left:-37px;transform-origin:50% 0;animation:bsw 6.5s ease-in-out infinite;animation-delay:calc(var(--i)*-1.3s)}
.hb svg{display:block;width:100%;height:auto}
@keyframes bsw{0%,100%{transform:rotate(-2.4deg)}50%{transform:rotate(2.4deg)}}

/* ---- potted flowers on stone sills ---- */
.ledge{position:absolute;bottom:0;z-index:1;pointer-events:none;height:auto;width:clamp(240px,27vw,430px)}
.ledge.sm{width:clamp(170px,19vw,300px)}
.sec.wall .ledge,.sec.s-sand .ledge{bottom:36px}
.lg-l{left:1.5%}.lg-r{right:1.5%}
.ledge .sw{transform-box:fill-box;transform-origin:50% 100%;animation:psw 7s ease-in-out infinite;animation-delay:calc(var(--i)*-1.1s)}
@keyframes psw{0%,100%{transform:translate(var(--tx,0),var(--ty,0)) rotate(-1deg)}50%{transform:translate(var(--tx,0),var(--ty,0)) rotate(1.2deg)}}
.s-sun .ledge,.nofl .ledge{display:none}

/* ---- timber window frames for photographs ---- */
.trio figure,.vgrid figure,.pair figure,.tw{border:11px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-7px;border-radius:3px;box-shadow:0 0 0 3px var(--ochre),0 26px 40px -22px rgba(40,15,5,.6);position:relative;background:var(--beam);overflow:visible}
.trio figure::after,.vgrid figure::after,.pair figure::after,.tw::after{content:"";position:absolute;left:-18px;right:-18px;bottom:-26px;height:13px;border-radius:2px;background:linear-gradient(#d4c9b3,#a99c86);box-shadow:0 5px 8px rgba(0,0,0,.3)}
.trio figure img,.vgrid figure img,.pair figure img,.tw>img{border-radius:0}
.trio,.vgrid,.pair{gap:42px 34px;padding-bottom:30px}
.s-crimson .pair figure figcaption{bottom:0}

/* ---- the sun-and-mountains scene ---- */
.suns{position:relative;min-height:clamp(600px,88svh,820px);color:#fff;overflow:hidden;background:#1d2b5c}
.sunscene{position:absolute;inset:0;width:100%;height:100%;display:block}
.sunscene .rl,.sunscene .rr,.sunscene .snl,.sunscene .snr,.sunscene .haze,.sunscene .mid,.sunscene .near{transition:none}
.suns-in{position:relative;z-index:3;padding:120px 0 0}
.suns h2{font-size:clamp(36px,4.9vw,72px);max-width:17ch;color:#fff;text-shadow:0 2px 26px rgba(0,8,40,.6)}
.suns .eyebrow{color:var(--gold);text-shadow:0 1px 10px rgba(0,8,40,.6)}
.suns .lede{color:#eef4fb;max-width:40ch;text-shadow:0 1px 14px rgba(0,8,40,.7)}
.tod{position:relative;z-index:4;margin-top:28px;display:flex;align-items:center;gap:14px;background:rgba(9,18,40,.62);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.3);padding:10px 20px 10px 12px;border-radius:999px;color:#fff;width:min(520px,100%)}
.tod button{flex:none;width:46px;height:46px;border-radius:50%;border:0;background:var(--marigold);color:#1b1000;display:grid;place-items:center;cursor:pointer}
.tod button svg{width:20px;height:20px;fill:currentColor}
.tod .pp-play{display:none}.tod[data-paused="true"] .pp-play{display:block}.tod[data-paused="true"] .pp-pause{display:none}
.tod label{display:flex;flex-direction:column;flex:1;min-width:0;font-size:13.5px;line-height:1.2}
.tod output{font:400 19px/1.1 var(--display);color:var(--gold);margin-bottom:4px}
.tod input[type=range]{width:100%;accent-color:var(--marigold);height:26px;background:none}
.tod input[type=range]{-webkit-appearance:none;appearance:none}
.tod input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:9px;background:linear-gradient(90deg,#3b4f92,#f08a8a 12%,#6fb1ea 32%,#2f6cc2 50%,#ffc24a 72%,#e8588a 88%,#2a2d6d)}
.tod input[type=range]::-moz-range-track{height:6px;border-radius:9px;background:linear-gradient(90deg,#3b4f92,#f08a8a 12%,#6fb1ea 32%,#2f6cc2 50%,#ffc24a 72%,#e8588a 88%,#2a2d6d)}
.tod input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff6d6;border:3px solid var(--marigold);margin-top:-9px;box-shadow:0 2px 8px rgba(0,0,0,.4)}
.tod input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff6d6;border:3px solid var(--marigold)}

/* ---- big, immersive photo band with a plaster-and-timber card ---- */
.immerse{position:relative;height:clamp(560px,86svh,860px);overflow:hidden;background:#222}
.immerse>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 42%}
.immerse::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,10,5,.5),transparent 55%);pointer-events:none}
.imcard{position:absolute;z-index:3;left:max(24px,calc((100% - 1240px)/2));bottom:clamp(30px,6vw,64px);width:min(580px,calc(100% - 48px));padding:38px 42px 40px;background:var(--plaster) 0 0/512px auto,var(--snow);border:12px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-8px;box-shadow:0 36px 60px -26px rgba(0,0,0,.7)}
.imcard .body p+p{margin-top:14px}
.imcard .facts{margin-top:26px;padding-top:24px}
.imcard .facts b{font-size:clamp(26px,2.4vw,34px)}

/* ---- know your mountains: peaks, village and text in one frame ---- */
.pf{background:radial-gradient(900px 500px at 12% 0%,#1d3a66 0,transparent 60%),var(--ink);padding:clamp(60px,7vw,100px) 0}
.pf2{display:grid;grid-template-columns:minmax(280px,.62fr) minmax(0,1.6fr);gap:clamp(28px,4vw,64px);align-items:center}
.pf2 h2{font-size:clamp(34px,4vw,58px);max-width:11ch}
.pf2 .lede{color:#cbd9e2;margin-top:14px}
.pf-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 4px}
.pf-tabs button{min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.35);background:none;color:#fff;font:600 14.5px/1 var(--body);cursor:pointer}
.pf-tabs button[aria-selected="true"]{background:var(--marigold);border-color:var(--marigold);color:#1b1000}
.pf-pic{position:relative;aspect-ratio:3/2;overflow:hidden;border:12px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-8px;box-shadow:0 0 0 3px var(--ochre),0 40px 70px -30px rgba(0,0,0,.8);background:#0c1a29}
.pf-pic .v{position:absolute;inset:0;opacity:0;transition:opacity .6s var(--ease);pointer-events:none}
.pf-pic .v.on{opacity:1;pointer-events:auto}
.pf-pic .v>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pf-pic .v.pano>img{object-position:100% 50%}
.pf-card{margin-top:18px;min-height:0}
.pf-hint{margin-top:10px}
.pf-grid{display:block}
.pf-stage{aspect-ratio:auto}.pf-stage::after{display:none}.pf-over{position:static}

/* ---- food that makes you hungry ---- */
.feast{background:radial-gradient(900px 560px at 85% 20%,#3b1209 0,transparent 65%),linear-gradient(180deg,#2a0d08,#1b0805)!important;color:#f8e6c6}
.feast h2{color:var(--gold)}
.feast .eyebrow{color:var(--sun)}
.feast-g{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.95fr);gap:clamp(30px,4vw,70px);align-items:center}
.feast-pic{position:relative;margin:0 0 0 calc(50% - 50vw);width:calc(100% + (50vw - 50%));max-width:none}
.feast-pic img{display:block;width:100%;height:auto;aspect-ratio:7/5;object-fit:cover;object-position:50% 60%;border-radius:0 28px 28px 0;box-shadow:0 40px 80px -30px #000;filter:saturate(1.12) contrast(1.04)}
.feast-pic::after{content:"";position:absolute;inset:0;border-radius:0 28px 28px 0;box-shadow:inset 0 0 90px rgba(255,150,40,.18);pointer-events:none}
.steam{position:absolute;left:28%;top:20%;width:46%;height:40%;pointer-events:none;opacity:.7}
.steam path{fill:none;stroke:#fff;stroke-width:5;stroke-linecap:round;opacity:0;filter:blur(3px);animation:steam 5.5s ease-in infinite}
.steam path:nth-child(2){animation-delay:-1.8s}.steam path:nth-child(3){animation-delay:-3.6s}
@keyframes steam{0%{opacity:0;transform:translateY(24px)}30%{opacity:.55}100%{opacity:0;transform:translateY(-34px)}}
.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.chips li{list-style:none;padding:8px 15px;border-radius:99px;background:rgba(255,200,90,.14);border:1px solid rgba(255,200,90,.4);color:#ffe3a8;font-size:14.5px;font-weight:500}
.feast .body p{color:#f1d6b2}.feast .body p+p{margin-top:14px}

/* ---- Gurung values: watercolour cards ---- */
.valrail{display:flex;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;padding:20px 24px 50px;margin:0 -24px;scrollbar-width:thin}
.valrail figure{flex:0 0 min(560px,86vw);scroll-snap-align:center}
.valrail img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.valpair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:46px 40px;margin-top:20px}
.valpair img,.valone img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.vbanner{margin:60px 0 40px}
.vbanner img{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}
.vbanner figcaption{position:absolute;left:0;right:0;bottom:0;padding:50px 24px 14px;color:#fff;font-size:14px;background:linear-gradient(0deg,rgba(0,0,0,.65),transparent)}

/* ---- Ghandruk in bloom: full-bleed photo band ---- */
.bloom{position:relative;display:grid;grid-template-columns:1.1fr 1fr 1.1fr;height:clamp(460px,78svh,760px);background:#111;overflow:hidden}
.bloom img{width:100%;height:100%;object-fit:cover;display:block}
.bloom>div:not(.bloom-t){position:relative;overflow:hidden}
.bloom::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(25,6,0,.78),transparent 55%);pointer-events:none}
.bloom-t{position:absolute;z-index:3;left:max(24px,calc((100% - 1240px)/2));bottom:clamp(28px,5vw,60px);max-width:640px;color:#fff;right:24px}
.bloom-t h2{color:#fff;font-size:clamp(34px,4.4vw,62px);text-shadow:0 2px 24px rgba(0,0,0,.6)}
.bloom-t p{margin-top:12px;font-size:clamp(17px,1.4vw,20px);color:#ffe9c7;max-width:48ch;text-shadow:0 1px 12px rgba(0,0,0,.6)}

/* ---- restaurant hero shows the view ---- */
.phero.view>img{object-position:50% 36%}
.phero.view::after{background:linear-gradient(0deg,rgba(13,27,38,.78) 0%,rgba(13,27,38,0) 42%),linear-gradient(180deg,rgba(13,27,38,.45),rgba(13,27,38,0) 22%)}

/* ---- closing call to action, on the user's own village artwork ---- */
.cta-band.ctav{padding:clamp(80px,10vw,150px) 0;background:#3b1209}
.cta-band.ctav>img.cv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.cta-band.ctav::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 70% at 50% 50%,rgba(40,8,4,.72),rgba(40,8,4,.25) 80%)}
.cta-band.ctav .wrap{z-index:3}
.cta-band.ctav .petals{z-index:2}
.cta-band.ctav h2{text-shadow:0 2px 24px rgba(0,0,0,.7)}
.cta-band.ctav .lede{color:#fff1da;text-shadow:0 1px 14px rgba(0,0,0,.7)}
.cta-band.ctav .eyebrow{color:#ffe9a8!important;text-shadow:0 1px 10px rgba(0,0,0,.6)}

/* ---- ambient music ---- */
.snd{position:fixed;left:18px;bottom:22px;z-index:91;display:flex;align-items:center;gap:10px;height:56px;padding:0 20px 0 16px;border-radius:999px;border:0;background:rgba(14,8,4,.82);color:#fff;font:600 14.5px/1 var(--body);cursor:pointer;backdrop-filter:blur(6px);box-shadow:0 10px 26px rgba(0,0,0,.4);transition:background .2s}
.snd:hover{background:#2a140a}
.snd .eq{display:flex;gap:3px;align-items:flex-end;width:20px;height:20px}
.snd .eq i{flex:1;background:var(--marigold);border-radius:2px;height:35%}
.snd[aria-pressed="true"] .eq i{animation:eq 1s ease-in-out infinite}
.snd[aria-pressed="true"] .eq i:nth-child(2){animation-delay:-.3s}.snd[aria-pressed="true"] .eq i:nth-child(3){animation-delay:-.6s}.snd[aria-pressed="true"] .eq i:nth-child(4){animation-delay:-.15s}
@keyframes eq{0%,100%{height:30%}50%{height:100%}}
.snd .snt{white-space:nowrap}

@media (max-width:980px){
  .pf2,.feast-g{grid-template-columns:1fr}
  .feast-pic{margin:0 -20px;width:calc(100% + 40px)}.feast-pic img{border-radius:0}
  .imcard{position:relative;left:auto;bottom:auto;margin:-60px auto 0;width:calc(100% - 32px)}
  .immerse{height:auto;overflow:visible}.immerse>img{position:relative;height:56svh}.immerse::after{display:none}
  .bloom{grid-template-columns:1fr 1fr}.bloom>div:nth-child(3){display:none}
  .valpair{grid-template-columns:1fr}
}
@media (max-width:720px){
  .hb:nth-child(even){display:none}
  .suns-in{padding-top:96px}
  .sec.wall,.sec.s-sand{padding-bottom:128px}
  .ledge{width:190px}.ledge.sm{display:none}
  .tod{padding-right:14px}
  .snd{bottom:84px;height:48px;padding:0 14px}.snd .snt{display:none}
  .bloom{height:auto;grid-template-columns:1fr}.bloom>div:not(.bloom-t){height:46svh}.bloom>div:nth-child(2){display:none}
  .trio,.vgrid,.pair{gap:38px 20px}
}
@media (prefers-reduced-motion:reduce){.hb,.ledge .sw,.steam path,.snd .eq i{animation:none!important}.steam{display:none}}
.snd.hint::after{content:"Tap for village music";position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);white-space:nowrap;background:var(--marigold);color:#1b1000;padding:8px 14px;border-radius:10px;font-size:13.5px;animation:hintp 2.4s ease-in-out infinite}
@keyframes hintp{50%{transform:translate(4px,-50%)}}
@media (max-width:720px){.snd.hint::after{display:none}}
.hero-rv::before{display:none}

.suns::before{display:none}
.suns h2{max-width:22ch;text-wrap:balance;font-size:clamp(34px,4.3vw,64px)}
.cld{opacity:.55}
@keyframes cld{from{transform:translateX(-80px)}to{transform:translateX(120px)}}
@media (prefers-reduced-motion:reduce){.cld{animation:none}}
.suns{min-height:clamp(620px,90svh,840px)}

.pf-pic::after,.pf-pic .v::after{display:none!important}
.pf2{width:min(1440px,100% - 40px);grid-template-columns:minmax(270px,.5fr) minmax(0,1.9fr)}
.suns{min-height:clamp(600px,84svh,800px)}

.valrail{margin-inline:calc(50% - 50vw);padding-inline:max(24px,calc((100vw - 1240px)/2))}
.feast-g{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.feast h2{font-size:clamp(32px,3.6vw,54px);text-wrap:balance;max-width:16ch}

.trio figure::after,.vgrid figure::after,.pair figure::after,.tw::after{top:auto!important;right:-18px;background:linear-gradient(#d4c9b3,#a99c86)!important;opacity:1!important}
.bloom-t .eyebrow{color:var(--gold)!important}
.bloom-t h2{font-size:clamp(30px,3.7vw,54px);max-width:24ch;text-wrap:balance}
.ledge .sw{transform-box:fill-box;transform-origin:50% 100%}

.pf2{grid-template-columns:minmax(330px,.62fr) minmax(0,1.8fr)}
.pf2 h2{font-size:clamp(32px,3.4vw,50px);max-width:none}
.phero.view::after{background:linear-gradient(90deg,rgba(10,18,30,.72) 0%,rgba(10,18,30,.35) 45%,rgba(10,18,30,0) 70%),linear-gradient(0deg,rgba(13,27,38,.78) 0%,rgba(13,27,38,0) 42%),linear-gradient(180deg,rgba(13,27,38,.45),rgba(13,27,38,0) 22%)}
@media (max-width:980px){.feast-g,.pf2{grid-template-columns:1fr!important}.pf2 h2{max-width:none}}
@media (max-width:720px){.suns h2{font-size:clamp(27px,7.6vw,34px)}}
.facts{grid-template-columns:repeat(3,minmax(0,1fr))}.facts>*{min-width:0}.facts span{overflow-wrap:anywhere}
@media (max-width:380px){.facts{gap:8px}.facts b{font-size:23px}.facts span{font-size:12.5px}}
.stick .btn{min-width:0;padding-left:14px;padding-right:14px;white-space:normal;text-align:center}
@media (max-width:380px){.btn{max-width:100%;padding-left:18px;padding-right:18px}}
.facts span{overflow-wrap:normal}
@media (max-width:380px){.facts{grid-template-columns:1fr;gap:14px}.facts>div{display:flex;align-items:baseline;gap:12px}.facts b{font-size:26px;flex:none;min-width:84px}.facts span{margin-top:0;font-size:14px}}

/* ===== Round 5 ===== */
/* intro: wide, translucent, centred, low on the photo so the mountains stay visible */
.immerse{height:clamp(520px,82svh,800px)}
.immerse::after{background:linear-gradient(0deg,rgba(20,10,5,.35),transparent 45%)}
.imcard{left:50%;transform:translateX(-50%);bottom:clamp(22px,4vw,44px);width:min(1060px,calc(100% - 48px));padding:24px 44px 26px;text-align:center;background:rgba(251,243,225,.8);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border:6px solid rgba(74,38,16,.85);outline:1px solid rgba(255,220,150,.6);outline-offset:-10px;box-shadow:0 24px 50px -24px rgba(0,0,0,.65)}
.imcard .body p{font-size:clamp(16px,1.25vw,18.5px);line-height:1.6;color:#2a1a10;max-width:none;margin-inline:auto}
.imcard .body p+p{margin-top:10px}
.imcard.rv-up{transform:translateX(-50%) translateY(26px)}.imcard.rv-up.in{transform:translateX(-50%)}
/* facts tab under the image */
.factbar{position:relative;padding:34px 0 38px;border-top:8px solid var(--beam);box-shadow:inset 0 14px 20px -14px rgba(60,30,10,.45)}
.factbar-in{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}
.factbar .facts{flex:1 1 560px;margin:0;padding:0;border:0;max-width:820px}
.factbar .facts b{font-size:clamp(30px,3vw,44px)}
/* values: dance art beside the nine ideas */
.vsplit{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(30px,4.5vw,76px);align-items:start}
.vs-pic{position:sticky;top:104px;margin:0}
.vs-pic img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.vs-txt h2{margin-top:6px}.vs-txt .lede{margin-top:14px}
.vlist{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:4px}
.vlist li{display:grid;grid-template-columns:84px 1fr;gap:20px;align-items:center;padding:14px 0;border-bottom:1px dashed rgba(120,70,30,.38)}
.vlist li:last-child{border-bottom:0}
.vlist img{width:84px;height:84px;border-radius:50%;object-fit:cover;object-position:50% 40%;border:3px solid var(--gold);box-shadow:0 0 0 2px var(--ochre),0 8px 16px -8px rgba(60,30,10,.5)}
.vlist h3{font:400 clamp(21px,1.7vw,25px)/1.15 var(--display);color:var(--crimson);display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.vlist h3 em{font:600 12px/1 var(--body);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--ochre)}
.vlist p{margin-top:5px;font-size:15.5px;line-height:1.5;color:var(--muted)}
/* flower section: one big photo that actually shows the pots */
.bloom2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);min-height:clamp(480px,74svh,740px);background:var(--plaster)}
.bloom2 figure{margin:0;position:relative;overflow:hidden}
.bloom2 figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:35% 70%}
.bloom2-t{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,72px) clamp(28px,5vw,80px) clamp(34px,5vw,72px) clamp(30px,4vw,64px);border-left:10px solid var(--beam);position:relative}
.bloom2-t h2{font-size:clamp(30px,3.3vw,50px);text-wrap:balance;color:var(--crimson)}
.bloom2-t p{margin-top:16px;font-size:clamp(16px,1.3vw,19px);line-height:1.6;color:#4a3626;max-width:44ch}
.bloom2-t .eyebrow{color:var(--vermilion)}
/* watercolour vignettes of people, scattered through pages */
.wcfig{margin:0;width:min(230px,42%);border-radius:50% 50% 48% 52%/55% 55% 45% 45%;overflow:hidden;box-shadow:0 14px 30px -14px rgba(60,30,10,.55);border:4px solid #fffaf0;float:right;margin:4px 0 14px 24px;shape-outside:circle(50%)}
.wcfig img{display:block;width:100%;height:auto}
@media (max-width:980px){
  .vsplit{grid-template-columns:1fr}.vs-pic{position:relative;top:auto}
  .bloom2{grid-template-columns:1fr}.bloom2 figure{height:56svh}.bloom2-t{border-left:0;border-top:10px solid var(--beam)}
  .imcard{padding:20px 22px 22px}
  .factbar-in{flex-direction:column;align-items:flex-start}
}
@media (max-width:720px){
  .imcard{position:relative;left:auto;bottom:auto;transform:none;margin:-50px auto 0;width:calc(100% - 28px);background:rgba(251,243,225,.94)}
  .imcard.rv-up,.imcard.rv-up.in{transform:none}
  .vlist li{grid-template-columns:64px 1fr;gap:14px}.vlist img{width:64px;height:64px}
}
#values{padding-top:clamp(120px,11vw,160px)}
.bloom2{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}
.bloom2-t h2{font-size:clamp(28px,3vw,46px)}
@media (max-width:560px){.wcfig{width:38%;margin:2px 0 10px 14px}}
.s-crimson .wcfig,.s-pine .wcfig{border-color:#f3e4c0}
@media (max-width:980px){.bloom2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:720px){.immerse{height:auto;overflow:visible}.immerse>img{position:relative;height:50svh}.immerse::after{display:none}.factbar{padding-top:30px}}
@media (max-width:720px){.immerse{background:#2a1a10}.imcard{margin-bottom:-1px}}

/* ===== Round 5b ===== */
/* intro: image alone, text sits beside the facts */
.immerse{height:clamp(420px,70svh,720px)}
.immerse::after{display:none}
.factbar{padding:46px 0 52px}
.factbar-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(30px,5vw,80px);align-items:center}
.fb-txt p{font-size:clamp(17px,1.35vw,19.5px);line-height:1.65;color:#2a1a10}.fb-txt p+p{margin-top:14px}
.fb-side{display:flex;flex-direction:column;gap:26px;align-items:flex-start;padding-left:clamp(0px,3vw,48px);border-left:2px dashed var(--sun)}
.fb-side .facts{margin:0;padding:0;border:0;max-width:none;width:100%;flex:none}
.fb-side .facts b{font-size:clamp(28px,2.6vw,40px)}
/* destinations: map + card */
.dest{margin-top:10px}
.dtabs{display:flex;gap:10px;overflow-x:auto;padding:6px 4px 16px;scrollbar-width:thin;margin-bottom:6px}
.dtabs button{flex:none;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:10px 16px 10px;border-radius:12px;border:2px solid rgba(74,38,16,.25);background:rgba(255,250,235,.7);color:#2a1a10;cursor:pointer;text-align:left;font:inherit;transition:.2s}
.dtabs button b{font:600 14.5px/1.2 var(--body)}
.dtabs button em{font:700 12px/1 var(--body);font-style:normal;letter-spacing:.08em;color:var(--vermilion)}
.dtabs button:hover{border-color:var(--vermilion)}
.dtabs button[aria-selected="true"]{background:var(--crimson);border-color:var(--crimson);color:#fff}
.dtabs button[aria-selected="true"] em{color:var(--gold)}
.dest-g{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(22px,3vw,44px);align-items:stretch}
.dmap{position:relative;aspect-ratio:4/3;border:10px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-6px;box-shadow:0 0 0 3px var(--ochre),0 26px 40px -22px rgba(40,15,5,.6);overflow:hidden;background:#e3dcb0}
.dm-svg{position:absolute;inset:0;width:100%;height:100%}
.dm-rl{font:600 11.5px var(--body);fill:#6a4a22}
.dp{fill:none;stroke:#a8946a;stroke-width:2.2;stroke-dasharray:2 8;stroke-linecap:round;opacity:.8;transition:.25s}
.dp.far{stroke-dasharray:1 10;opacity:.55}
.dp.on{stroke:var(--vermilion);stroke-width:4;stroke-dasharray:10 9;opacity:1;animation:dpflow 1.2s linear infinite}
@keyframes dpflow{to{stroke-dashoffset:-38}}
.dm-pin{position:absolute;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;border:0;background:none;cursor:pointer;font:inherit;color:#2a1a10;text-decoration:none;z-index:2}
.dm-pin>i{display:block;width:22px;height:22px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--vermilion);border:3px solid #fff;box-shadow:0 4px 10px rgba(0,0,0,.4);transition:.2s}
.dm-pin>span{display:flex;flex-direction:column;align-items:center;background:rgba(255,250,235,.94);border:1.5px solid rgba(74,38,16,.4);border-radius:8px;padding:3px 8px 4px;line-height:1.15;box-shadow:0 4px 10px -4px rgba(0,0,0,.4);white-space:nowrap;order:-1}
.dm-pin b{font:600 12.5px var(--body)}.dm-pin em{font:700 11px var(--body);font-style:normal;color:var(--vermilion)}
.dm-pin:hover>i,.dm-pin:focus-visible>i{transform:rotate(-45deg) scale(1.2)}
.dm-pin.on{z-index:5}
.dm-pin.on>i{background:var(--crimson);transform:rotate(-45deg) scale(1.35)}
.dm-pin.on>span{background:var(--crimson);border-color:var(--crimson);color:#fff}.dm-pin.on em{color:var(--gold)}
.dm-pin.far>i{background:var(--teal,#0f9d9a)}
.dm-rj{z-index:6;transform:translate(-50%,-50%);flex-direction:column-reverse}
.dm-rj>i{width:44px;height:44px;border-radius:50%;transform:none;background:var(--sun);color:#1b1000;font:400 17px/38px var(--display);text-align:center;border:3px solid var(--crimson);box-shadow:0 0 0 6px rgba(255,255,255,.55),0 6px 14px rgba(0,0,0,.4)}
.dm-rj:hover>i{transform:scale(1.08)}
.dm-rj>span{order:0;background:#fff8e6}
.dcards{position:relative}
.dcard{display:flex;flex-direction:column;height:100%;background:var(--plaster) 0 0/512px auto,var(--snow);border:8px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-5px;box-shadow:0 26px 40px -22px rgba(40,15,5,.6)}
.dcard[hidden]{display:none}
.dcard figure{margin:0;aspect-ratio:16/10;overflow:hidden;background:#222}
.dcard figure img{display:block;width:100%;height:100%;object-fit:cover}
.dc-b{padding:22px 26px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.dc-b h3{font:400 clamp(22px,2vw,30px)/1.15 var(--display);color:var(--crimson)}
.dc-m{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;color:#5a4636}
.dc-m b{color:var(--vermilion)}
.dc-b p{font-size:15.5px;line-height:1.6;color:#3a2a1e}
.dc-b .btn{align-self:flex-start;margin-top:auto}
/* go further: photo route cards */
.routes{grid-template-columns:repeat(4,minmax(0,1fr));max-width:1180px}
.routes .rt{display:flex;flex-direction:column;padding:0;overflow:hidden;color:inherit;text-decoration:none;transition:transform .25s}
a.rt:hover{transform:translateY(-4px)}
.routes .rt img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}
.routes .rt>div{padding:16px 18px 18px;background:none;border:0;backdrop-filter:none;border-radius:0;display:flex;flex-direction:column;gap:6px}
.routes .rt em{font:700 12px/1 var(--body);font-style:normal;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-top:4px}
/* room photo strip */
.rstage .ph .thumbs{position:absolute;left:14px;right:14px;bottom:14px;display:flex;gap:8px;z-index:3;overflow-x:auto}
.rstage .ph .thumbs button{flex:none;width:72px;height:54px;padding:0;border:2px solid rgba(255,255,255,.7);border-radius:6px;overflow:hidden;cursor:pointer;background:#000;opacity:.8;transition:.2s}
.rstage .ph .thumbs button[aria-current="true"]{border-color:var(--sun);opacity:1;transform:translateY(-3px)}
.rstage .ph .thumbs img{position:static;opacity:1;width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:1080px){.routes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){
  .factbar-in{grid-template-columns:minmax(0,1fr)}.fb-side{border-left:0;padding-left:0;border-top:2px dashed var(--sun);padding-top:26px}
  .dest-g{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:720px){
  .immerse{height:46svh;overflow:hidden}.immerse>img{position:absolute;height:100%}
  .dm-pin>span{display:none}.dm-pin.on>span,.dm-rj>span{display:flex}.dm-pin>i{width:20px;height:20px}
  .dm-pin.on>span{position:absolute;top:100%;margin-top:2px}
  .routes{grid-template-columns:minmax(0,1fr)}
  .dmap{aspect-ratio:1/1}.dm-svg{object-fit:cover}
}
.dest-g{align-items:start}.dmap{width:100%;min-width:0}.dcards{min-width:0}
/* living foreground figures */
.fig .st{stroke:var(--fgc,#222);fill:none;stroke-linecap:round}.fig .sk{fill:var(--fgc,#222)}.fig .ac{opacity:var(--aco,1)}
.stm{animation:stmr 2.6s ease-in-out infinite}.stm.s2{animation-delay:-1.2s}@keyframes stmr{0%,100%{transform:translateY(0);opacity:.7}50%{transform:translateY(-6px);opacity:.25}}
@media (prefers-reduced-motion:reduce){.stm{animation:none}}
/* values: heading + picture on one row, nine values in three columns */
.vhead{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(30px,5vw,80px);align-items:center}
.vhead .vs-pic{position:relative;top:auto}
.vhead .vs-txt h2{font-size:clamp(34px,4vw,58px);text-wrap:balance}
.vsplit{display:block}
.vlist{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px clamp(24px,3vw,48px);margin-top:44px}
.vlist li{grid-template-columns:76px 1fr;gap:16px;align-items:start;border-bottom:1px dashed rgba(120,70,30,.38);padding:18px 0}
.vlist li:nth-last-child(-n+3){border-bottom:0}
.vlist img{width:76px;height:76px}
.vlist h3{font-size:clamp(20px,1.6vw,24px)}
.vlist h3 em{flex-basis:100%;margin-top:2px}
.vlist p{font-size:15px}
@media (max-width:1100px){.vlist{grid-template-columns:repeat(2,minmax(0,1fr))}.vlist li:nth-last-child(-n+3){border-bottom:1px dashed rgba(120,70,30,.38)}.vlist li:nth-last-child(-n+1){border-bottom:0}}
@media (max-width:980px){.vhead{grid-template-columns:minmax(0,1fr)}}
@media (max-width:700px){.vlist{grid-template-columns:minmax(0,1fr)}.vlist li{border-bottom:1px dashed rgba(120,70,30,.38)!important}}
/* prayer flags across the top of the hero */
.hero{position:relative}
.hflags{position:absolute;left:0;right:0;top:78px;width:100%;height:auto;z-index:3;pointer-events:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}
.hf{transform-box:fill-box;transform-origin:0 0;animation:hfl 3.4s ease-in-out infinite}
@keyframes hfl{0%,100%{transform:skewY(0) scaleX(1)}50%{transform:skewY(5deg) scaleX(.93)}}
@media (prefers-reduced-motion:reduce){.hf{animation:none}}
.suns .tod{margin-top:24px}
.hero h1 .h1a,.hero h1 .h1b{display:block}.hero h1 .h1b{text-wrap:balance;max-width:16ch}
.hflags{top:70px}
.hero h1{max-width:none}.hero h1 .h1b{max-width:17ch}
.hero h1 .h1b{max-width:26ch}
@media (max-width:720px){.dm-rj>span{display:none}}

/* ===== Round 7 ===== */
.pair figure img[src*="g-group-forest"]{object-position:50% 6%}
.phero.rooms>img{object-position:50% 42%}
.phero.rooms::after{background:linear-gradient(90deg,rgba(10,18,30,.7) 0%,rgba(10,18,30,.25) 45%,rgba(10,18,30,0) 70%),linear-gradient(0deg,rgba(13,27,38,.8) 0%,rgba(13,27,38,0) 45%),linear-gradient(180deg,rgba(13,27,38,.45),rgba(13,27,38,0) 22%)}
.phero.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:stretch;min-height:68svh;background:linear-gradient(110deg,#0a1f44,#3a0a14)}
.phero.split::after{display:none}
.phero.split>img{position:relative;grid-column:2;grid-row:1;inset:auto;height:100%;min-height:440px;object-position:50% 62%}
.phero.split .wrap{grid-column:1;grid-row:1;align-self:end;width:auto;max-width:none;margin:0;padding:150px 40px 80px max(24px,calc((100vw - 1200px)/2))}
.phero.split h1{max-width:12ch}
@media (max-width:820px){.phero.split{grid-template-columns:1fr}.phero.split>img{grid-column:1;grid-row:1;height:52svh;min-height:0;object-position:50% 58%}.phero.split .wrap{grid-column:1;grid-row:2;padding:34px 24px 44px}}
.hflags{top:0 !important}
@media (max-width:720px){.hflags{z-index:0 !important;width:250% !important;max-width:none !important;left:-70% !important;right:auto !important}}
/* contact: card sits under the form, same width, columns end together */
.bk{align-items:stretch}
.bk-side{display:flex;flex-direction:column}
.bk-side .btn{align-self:flex-start;margin-top:auto !important}
.bk-main{display:flex;flex-direction:column;gap:44px;min-width:0}
.bk-main .tw{margin:0 0 26px}
@media (max-width:980px){.bk-side .btn{margin-top:28px !important}}
/* hero time-of-day slider removed; the scene still moves by itself */
.suns .tod{display:none}
/* destination map: fills the height of the info card */
.dest-g{align-items:stretch !important}
.dmap{aspect-ratio:auto !important;min-height:560px;height:auto}
.dm-pk text{font:600 15px var(--body);fill:#33455c;paint-order:stroke;stroke:#fff;stroke-width:3;stroke-opacity:.6}
.dm-lab text{font:400 26px var(--display);fill:#5a3a1a;paint-order:stroke;stroke:#f6efdd;stroke-width:5;stroke-opacity:.85}
.dm-go text{font:700 13px var(--body);fill:#5a3a1a;paint-order:stroke;stroke:#f6efdd;stroke-width:4;stroke-opacity:.9}
.dm-rl{paint-order:stroke;stroke:#f2ecc6;stroke-width:3;stroke-opacity:.8}
.dm-pin{will-change:left,top}
.dm-keybox{position:absolute;left:10px;right:10px;bottom:10px;z-index:4;background:rgba(255,250,235,.93);border:1.5px solid rgba(74,38,16,.35);border-radius:8px;padding:7px 10px 6px}
.dm-key{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font:600 11.5px var(--body);color:#3a2a1e}
.dm-key li{display:flex;align-items:center;gap:5px}.dm-key svg{width:20px;height:20px;flex:none}
.dm-note{margin:3px 0 0;font:500 10.5px var(--body);color:#7a6246}
@media (max-width:720px){.dmap{min-height:0;height:min(120vw,520px)}.dm-key{font-size:10.5px;gap:2px 10px}.dm-key svg{width:16px;height:16px}.dm-pk text{font-size:18px}}
.bk{align-items:start}
.bk-side{position:sticky;top:110px;align-self:start}
.bk-side .btn{margin-top:28px !important}
@media (max-width:980px){.bk-side{position:static}}
.phero.split::before{content:"";position:absolute;left:0;right:0;top:0;height:120px;background:linear-gradient(rgba(10,18,40,.88),rgba(10,18,40,0));z-index:1;pointer-events:none}
/* trail pages */
.tfacts{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.tfacts li{background:var(--plaster) 0 0/512px auto,var(--snow);border:6px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-4px;padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.tfacts em{font:700 12px/1 var(--body);font-style:normal;letter-spacing:.1em;text-transform:uppercase;color:var(--vermilion)}
.tfacts b{font:400 clamp(22px,2.2vw,32px)/1.1 var(--display);color:var(--crimson)}
.tcard{background:var(--plaster) 0 0/512px auto,var(--snow);border:8px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-5px;padding:26px 28px;color:#2a1a10}
.tcard h3{font:400 clamp(22px,2vw,28px)/1.15 var(--display);color:var(--crimson);margin-bottom:14px}
@media (max-width:820px){.tfacts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.s-pine .steps span{color:#e2ead8}.s-pine .steps li b{color:#fff}
/* Round 7b: flags strip flush with the top, nav sits beneath it */
.hflags{position:absolute !important;top:0 !important;left:0 !important;right:auto !important;width:100% !important;max-width:none !important;z-index:120 !important;height:auto}
.pg-home .nav:not(.solid):not(.open){top:36px}
.nav{transition:background .3s,box-shadow .3s,top .25s}
@media (max-width:720px){.hflags{width:300% !important;left:-100% !important}.pg-home .nav:not(.solid):not(.open){top:30px}}
.tod{display:none !important}
/* life at the hotel mosaic */
.life .lede{max-width:60ch}
.lmos{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:150px;gap:20px;margin-top:38px}
.lmos figure{position:relative;margin:0;overflow:hidden;border:8px solid var(--beam);outline:2px solid var(--beam2);outline-offset:-5px;box-shadow:0 18px 30px -18px rgba(40,15,5,.6);background:var(--beam)}
.lmos img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.lmos figure:hover img{transform:scale(1.05)}
.lmos figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 10px;font:600 14px/1.2 var(--body);color:#fff;background:linear-gradient(0deg,rgba(40,8,10,.85),transparent)}
.lmos .l0{grid-column:span 6;grid-row:span 2}.lmos .l1,.lmos .l2{grid-column:span 3;grid-row:span 2}
.lmos .l3,.lmos .l5{grid-column:span 3;grid-row:span 2}.lmos .l4{grid-column:span 6;grid-row:span 2}
.lmos .l6,.lmos .l7,.lmos .l8{grid-column:span 4;grid-row:span 2}
@media (max-width:820px){.lmos{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:150px;gap:12px}.lmos figure{grid-column:span 1 !important;grid-row:span 2 !important;border-width:5px}.lmos .l0,.lmos .l4{grid-column:span 2 !important}.lmos figcaption{font-size:12.5px}}
@media (max-width:820px){.lmos .l3{grid-column:span 2 !important}}
/* ===== Round 8 ===== */
.hflags{display:none !important}
.pg-home .nav:not(.solid):not(.open){top:0 !important}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hcorner{position:absolute;top:0;width:clamp(62px,5.4vw,108px);height:auto;z-index:3;pointer-events:none;filter:drop-shadow(0 3px 3px rgba(0,0,0,.35))}
.hc-l{left:0}.hc-r{right:0;transform:scaleX(-1)}
@media (max-width:720px){.hcorner{width:54px;z-index:0}}
/* life wall: text in the middle, photos around it */
.life{overflow:hidden;padding:84px 0 90px}
.lwall{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr) minmax(300px,1.9fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr);gap:14px;align-items:center;max-width:1560px;margin:0 auto;padding:0 12px}
.lc{display:flex;flex-direction:column;gap:14px;min-width:0}
.lc.m{margin-top:70px}.lc.i{margin-top:-24px}
.lc.g>div{display:flex;flex-direction:column;gap:14px;opacity:.32}
.lc.g:first-child>div{transform:translateX(-34%)}.lc.g:last-child>div{transform:translateX(34%)}
.lwall figure{margin:0;border-radius:16px;overflow:hidden;border:4px solid #fff9ec;box-shadow:0 14px 26px -14px rgba(60,28,8,.55);background:#e9dcc0;position:relative}
.lwall figure.l{aspect-ratio:4/3}.lwall figure.s{aspect-ratio:1/1}.lwall figure.p{aspect-ratio:3/4}
.lwall img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.lwall figure:hover img{transform:scale(1.06)}
.lmid{text-align:center;padding:0 clamp(4px,1.4vw,24px);z-index:2}
.lmid .eyebrow{justify-content:center}
.lmid h2{font-size:clamp(30px,3vw,46px);max-width:13ch;margin:14px auto 0}
.lmid .lede{margin:18px auto 0;font-size:16.5px;max-width:34ch}
.lbtn{margin-top:26px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
@media (max-width:980px){
 .lwall{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .lmid{grid-column:1/-1;order:-1;margin-bottom:18px}
 .lc{display:contents}.lc.g{display:none}
 .lwall figure.l,.lwall figure.s{aspect-ratio:1/1}.lwall figure.p{aspect-ratio:3/4}
}
@media (max-width:980px){.lwall{align-items:start}.lwall figure.p{aspect-ratio:1/1}}
/* ===== Round 9 ===== */
.stk{position:absolute;pointer-events:none;height:auto;filter:drop-shadow(0 8px 10px rgba(0,0,0,.3));animation:stkb 7s ease-in-out infinite;z-index:2}
@keyframes stkb{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-9px) rotate(calc(var(--r,0deg) + 1.6deg))}}
@media (prefers-reduced-motion:reduce){.stk{animation:none;transform:rotate(var(--r,0deg))}}
.stk-hero{--r:5deg;top:150px;right:max(70px,calc((100vw - 1240px)/2 + 40px));width:clamp(150px,15vw,236px)}
.stk-trek{--r:-4deg;top:64px;right:max(40px,calc((100vw - 1240px)/2));width:clamp(90px,9vw,140px)}
.cta-band{overflow:hidden}
.stk-l{--r:-7deg;left:max(24px,calc((100vw - 1240px)/2 - 20px));bottom:34px;width:clamp(110px,11vw,170px)}
.stk-r{--r:6deg;right:max(24px,calc((100vw - 1240px)/2 - 20px));bottom:40px;width:clamp(130px,13vw,210px)}
@media (max-width:1100px){.stk-hero,.stk-l,.stk-r{display:none}}
@media (max-width:720px){.stk-trek{display:none}}
.bloom2 figure img{object-position:42% 50%}
/* gallery wall: wider middle so the heading sets in three lines */
.lwall{grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr) minmax(360px,2.7fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr)}
.lmid h2{max-width:none;font-size:clamp(30px,2.9vw,44px);text-wrap:balance}
.lmid .lede{max-width:38ch}
@media (max-width:980px){.lwall{grid-template-columns:repeat(2,minmax(0,1fr))}.lmid h2{font-size:clamp(28px,7vw,40px)}}
.trek img.stk,.cta-band img.stk{inset:auto;height:auto;object-fit:contain;max-width:none}
.trek img.stk-trek{top:64px;right:max(40px,calc((100vw - 1240px)/2));left:auto;bottom:auto;width:clamp(90px,9vw,140px)}
.lwall{grid-template-columns:minmax(0,.6fr) minmax(0,1fr) minmax(0,1fr) minmax(380px,3.1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.6fr)}
.lmid h2{font-size:clamp(28px,2.7vw,40px)}
.phero .wrap img.stk-ct{--r:5deg;position:absolute;inset:auto;right:clamp(10px,3vw,60px);top:104px;bottom:auto;width:clamp(120px,11vw,170px);height:auto;object-fit:contain}
@media (max-width:820px){.phero .wrap img.stk-ct{display:none}}
@media (max-width:980px){.lwall{grid-template-columns:repeat(2,minmax(0,1fr))}.lmid h2{font-size:clamp(28px,7vw,40px)}.lmid .lede{max-width:none}}

/* Round 10 */
.hcorner{width:clamp(96px,9vw,176px)}
@media (max-width:720px){.hcorner{width:84px}}
.hero h1{position:relative}
.hero h1 img.stk-hero{position:absolute;top:.02em;left:12.2em;right:auto;width:3.3em;height:auto;z-index:2}
@media (max-width:1100px){.hero h1 img.stk-hero{display:none}}
.trek h2.trk-h{position:relative}
.trek h2.trk-h img.stk-trek{position:absolute;top:-.5em;left:8.5em;right:auto;width:1.9em;height:auto;z-index:2;opacity:1;filter:drop-shadow(0 8px 14px rgba(0,0,0,.35))}
@media (max-width:720px){.trek h2.trk-h img.stk-trek{display:none}}
@media (min-width:981px){.lmid h2 .ln{display:block;white-space:nowrap}}
@media (max-width:980px){.lmid h2 .ln{display:inline}}

.pg-contact .phero.split h1{max-width:none}.pg-contact .phero h1 br.d{display:inline}
@media (max-width:560px){.pg-contact .phero h1 br.d{display:none}}
.pg-contact .phero.split h1{font-size:clamp(34px,4.3vw,66px)}.pg-contact .phero h1 br.d{display:block}.pg-contact .phero.split h1{white-space:nowrap}
@media (max-width:560px){.pg-contact .phero.split h1{white-space:normal}.pg-contact .phero h1 br.d{display:none}}

/* Round 11: inline stickers */
.stk.stk-in{position:static;display:block;--r:0deg}
.pg-contact .phero.split .wrap{padding-top:96px;padding-bottom:70px}
.pg-contact .phero .stk-in{width:clamp(150px,14vw,210px);margin:0 0 14px -6px;--r:-3deg}
.lmid .stk-in{width:clamp(96px,8vw,128px);margin:0 auto 18px;--r:3deg}
@media (max-width:980px){.lmid .stk-in{width:96px}}
@media (max-width:820px){.pg-contact .phero .stk-in{width:130px}}

/* Round 11b: centre + enlarge stickers */
.pg-contact .phero.split .wrap{font-size:clamp(34px,4.3vw,66px)}
.pg-contact .phero .stk-in{width:4.2em;margin:0 0 .22em 1.8em;--r:0deg}
@media (max-width:560px){.pg-contact .phero .stk-in{width:4.2em;margin-left:1.8em}}
.lmid .stk-in{width:clamp(130px,11vw,172px);margin:0 auto 14px}
@media (max-width:980px){.lmid .stk-in{width:128px}}
