/* Package discovery belongs to Himachal's existing state page. */
html:has(body.hp-state) { scroll-behavior:auto; }
.hp-state { padding-bottom:90px; }
.hp-state [hidden] { display:none !important; }
.hp-state .state-cover { position:relative; min-height:560px; height:560px; background:#22382e; }
.hp-state .cover-slider::after { background:linear-gradient(180deg,#11251e35,transparent 25%,#0b1c17b5); }
.hp-state .state-intro { position:absolute; z-index:3; left:6%; bottom:56px; width:88%; max-width:1230px; margin:0; padding:0; color:white; pointer-events:none; }
.hp-state .state-intro::before { content:attr(data-collection-label); color:#f4f0e7; font-size:9px; letter-spacing:.21em; margin-bottom:22px; }
.hp-state .state-intro h1 { font-size:clamp(48px,6.2vw,82px); line-height:1.05; letter-spacing:-.05em; max-width:900px; color:white; }
.hp-state .state-intro p { color:#fff; max-width:630px; margin-top:20px; font-size:14px; line-height:1.9; text-shadow:0 1px 15px #0007; }
.hs-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; pointer-events:auto; }
.hs-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:13px 22px; border:1px solid transparent; border-radius:4px; font:500 12px/1.4 var(--sans); text-decoration:none; }
.hs-button-light { color:#243f2f; background:#faf8f1; }
.hs-button-glass { color:#fff; border-color:#ffffff9c; background:#15271d20; }
.hs-button-dark { color:white; background:#2e432b; border-color:#2e432b; }
.hs-button-outline { color:#2e432b; border-color:#b8c5ab; background:transparent; }
.hs-section { width:88%; max-width:1230px; margin-inline:auto; }
.hs-jump { display:flex; gap:35px; align-items:center; min-height:76px; border-bottom:1px solid var(--line); font-size:12px; }
.hs-jump a { color:#35432e; text-decoration:none; }
.hs-jump span { font-size:10px; margin-left:7px; color:#7f8b72; }
.hs-jump button { margin-left:auto; border:0; padding:12px 0; background:none; color:#506947; font:500 12px var(--sans); cursor:pointer; }
.hs-heading { display:flex; justify-content:space-between; align-items:end; gap:50px; margin:60px 0 26px; }
.hs-eyebrow { margin:0 0 15px; font:600 9px/1.6 var(--sans); letter-spacing:.18em; color:#7a8a68; }
.hs-heading h2,.hs-plan h2 { font:400 clamp(32px,3.8vw,48px)/1.12 var(--serif); letter-spacing:-.045em; margin:0; color:#283a29; }
.hs-heading>p { max-width:390px; margin:0; font:400 12px/1.9 var(--sans); color:#77816d; }
.hs-promise { display:flex; flex-wrap:wrap; gap:12px 26px; padding-bottom:28px; font-size:11px; color:#627459; }
.hs-promise span::before { content:'✓'; margin-right:8px; color:#6e8d5c; }
.hs-filters { padding:24px 0; border-block:1px solid var(--line); display:flex; flex-wrap:wrap; gap:22px; align-items:end; justify-content:space-between; }
.hs-chips { display:flex; flex-wrap:wrap; gap:8px; }
.hs-chips button { border:1px solid #d7dfce; border-radius:30px; padding:10px 16px; background:transparent; color:#66765a; font:500 11px var(--sans); cursor:pointer; }
.hs-chips button[aria-pressed=true] { color:white; background:#2e432b; border-color:#2e432b; }
.hs-selects { display:flex; gap:14px; }
.hs-selects label { display:flex; flex-direction:column; gap:8px; font:400 10px var(--sans); color:#7b8771; }
.hs-selects select { min-height:40px; padding:9px; border:1px solid #d8dfd0; border-radius:3px; background:transparent; color:#42553a; font:400 11px var(--sans); }
.hs-results { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:22px 0; font:400 11px var(--sans); color:#7a8770; }
.hs-results p { margin:0; }
.hs-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.hs-card { min-width:0; border:1px solid #dee4d6; border-radius:6px; overflow:hidden; background:#fff; display:flex; flex-direction:column; scroll-margin-top:100px; }
.hs-photo { position:relative; display:block; height:218px; overflow:hidden; }
.hs-photo img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease; }
.hs-photo:hover img { transform:scale(1.035); }
.hs-photo>span { position:absolute; left:16px; bottom:16px; background:#fbfaf7f0; color:#33462b; padding:8px 11px; border-radius:3px; font:500 10px var(--sans); letter-spacing:.04em; }
.hs-card-body { padding:22px; display:flex; flex-direction:column; flex:1; }
.hs-category { display:flex; justify-content:space-between; gap:10px; margin:0; font:500 10px var(--sans); color:#7b8a6c; }
.hs-category span { font-size:8px; letter-spacing:.07em; }
.hs-card h3 { margin:16px 0 12px; font:500 21px/1.3 var(--sans); letter-spacing:-.045em; }
.hs-card h3 a { color:#283c2a; text-decoration:none; }
.hs-route { margin:0 0 12px; font:500 11px/1.8 var(--sans); color:#698157; }
.hs-description { margin:0 0 18px; font:400 12px/1.85 var(--sans); color:#7c856e; }
.hs-includes { margin:auto 0 0; padding:8px 0 19px; font:400 10px/1.8 var(--sans); color:#6f855e; }
.hs-card-price { display:flex; justify-content:space-between; align-items:end; gap:12px; border-top:1px solid #e8ecdf; padding-top:18px; }
.hs-card-price small { display:block; margin-bottom:6px; font:400 9px var(--sans); color:#89957c; }
.hs-card-price strong { font:500 24px var(--sans); letter-spacing:-.055em; color:#2e432b; white-space:nowrap; }
.hs-card-price strong span { font:400 9px var(--sans); letter-spacing:0; color:#89957c; }
.hs-card-price>a { padding:11px 12px; border-radius:3px; background:#2e432b; color:#fff; font:500 10px var(--sans); text-decoration:none; white-space:nowrap; }
.hs-enquire { display:block; padding:18px 0 0; font:500 11px var(--sans); color:#6a8257; text-decoration:none; }
.hs-more { display:block; margin:32px auto 0; border:1px solid #a9bc98; border-radius:4px; padding:14px 26px; color:#526e43; background:transparent; font:500 12px var(--sans); cursor:pointer; }
.hs-price-note { text-align:center; margin:22px 0 0; font:400 10px/1.8 var(--sans); color:#8a967d; }
.hs-empty { grid-column:1/-1; padding:45px 20px; text-align:center; border:1px dashed #c3d0b5; font:400 13px/1.8 var(--sans); }
.hs-empty h3 { font-weight:500; }
.hs-empty button { padding:12px 20px; border:0; border-radius:3px; background:#2e432b; color:#fff; cursor:pointer; }
.hp-state .destination-section { padding-top:75px; padding-bottom:70px; }
.hs-places-heading { max-width:660px; margin-bottom:34px; }
.hs-places-heading h2 { font:400 38px/1.2 var(--serif); letter-spacing:-.035em; margin:0 0 18px; color:#2b3c2a; }
.hs-places-heading p { font:400 13px/1.9 var(--sans); color:#808970; margin:0; }
.hs-plan { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:10%; border-top:1px solid var(--line); padding-block:60px; align-items:start; }
.hs-plan-copy>p:not(.hs-eyebrow) { max-width:600px; margin:22px 0 0; font:400 13px/1.9 var(--sans); color:#7a876b; }
.hs-plan ol { list-style:none; padding:0; margin:30px 0; }
.hs-plan li { display:flex; gap:22px; padding-block:18px; border-top:1px solid #dfe6d5; }
.hs-plan li>span { padding-top:3px; font:400 10px var(--sans); color:#9aab87; }
.hs-plan h3 { font:500 14px var(--sans); margin:0 0 8px; color:#405436; }
.hs-plan li p { font:400 12px/1.8 var(--sans); margin:0; color:#89977a; }
.hs-text-link { font:500 12px var(--sans); color:#5f7c4b; text-decoration:none; }
.hs-footer { display:flex; justify-content:center; flex-wrap:wrap; gap:18px 30px; padding-block:25px; border-top:1px solid var(--line); font:400 11px var(--sans); }
.hs-footer a { color:#809071; text-decoration:none; }
.hs-bottom { position:fixed; z-index:100; bottom:0; left:0; width:100%; padding:14px 6%; background:#faf9f5f5; backdrop-filter:blur(14px); border-top:1px solid #dce4d1; display:flex; justify-content:center; align-items:center; gap:35px; }
.hs-bottom>span { color:#7c8970; font:400 11px var(--sans); }
.hs-bottom>div { display:flex; gap:12px; }
.hs-section [id] { scroll-margin-top:100px; }
.hp-state #hp-holidays,.hp-state #hp-places,.hp-state #kashmir-holidays,.hp-state #kashmir-places { scroll-margin-top:90px; }
.hp-state :is(.hs-section,.hs-hero-actions,.hs-bottom) :is(a,button,select):focus-visible { outline:3px solid #9bb985; outline-offset:4px; }
@media(max-width:1100px) { .hs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .hs-heading { gap:30px; } .hs-plan { gap:6%; } }
@media(max-width:650px) {
 .hp-state { padding-bottom:85px; } .hp-state .state-cover { height:550px; min-height:550px; } .hp-state .state-intro { left:6%; bottom:40px; } .hp-state .state-intro::before { font-size:8px; margin-bottom:18px; } .hp-state .state-intro h1 { font-size:54px; max-width:330px; } .hp-state .state-intro p { font-size:12px; max-width:340px; } .hs-hero-actions { gap:10px; } .hs-hero-actions .hs-button { padding:12px 14px; font-size:10px; }
 .hs-jump { min-height:66px; gap:22px; font-size:11px; } .hs-jump button { display:none; } .hs-jump span { margin-left:4px; } .hs-heading { display:block; margin-top:40px; } .hs-heading>p { margin-top:20px; max-width:none; } .hs-heading h2 { font-size:36px; } .hs-promise { gap:12px; font-size:10px; } .hs-filters { gap:20px; } .hs-chips { gap:8px; } .hs-chips button { font-size:11px; padding:10px 13px; min-height:40px; } .hs-selects { width:100%; } .hs-selects label { flex:1; min-width:0; } .hs-selects select { width:100%; font-size:16px; min-width:0; } .hs-results { font-size:10px; gap:14px; } .hs-results>span { max-width:120px; text-align:right; } .hs-grid { grid-template-columns:1fr; gap:25px; } .hs-photo { height:230px; } .hs-card-body { padding:22px; } .hs-card h3 { font-size:23px; } .hs-card-price>a { font-size:11px; padding:13px 15px; } .hs-card-price strong { font-size:25px; } .hs-enquire { padding-top:20px; }
 .hs-places-heading h2 { font-size:32px; } .hp-state .destination-section { padding-top:55px; padding-bottom:40px; } .hs-plan { grid-template-columns:1fr; gap:35px; padding-block:45px; } .hs-plan h2 { font-size:36px; } .hs-plan .vc-callback input { font-size:16px; } .hs-footer { gap:14px 20px; font-size:10px; } .hs-bottom { padding:12px 6% calc(12px + env(safe-area-inset-bottom,0px)); } .hs-bottom>span { display:none; } .hs-bottom>div { width:100%; gap:10px; } .hs-bottom .hs-button { flex:1; font-size:10px; padding:13px 10px; }
}
@media(prefers-reduced-motion:reduce) { .hs-photo img { transition:none; } }

.hs-card-price strong.hs-quote { font:400 22px/1.15 Georgia,serif; letter-spacing:-.025em; white-space:normal; max-width:145px; }
.hs-offer-basis { margin:0 0 14px; color:#42664b; font:500 11px/1.7 var(--sans); }
