/* VASUNDHARA — SITE-WIDE CONTRAST & TEXT LEGIBILITY SYSTEM
   WCAG-oriented baseline: normal text target >= 4.5:1; large text >= 3:1.
   This layer protects readability without flattening each page's art direction. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
main :is(p,li,dd,dt,td,th,figcaption){color:#263b49!important}
main :is(.muted,.secondary,.description,.meta,.source,.small-note){color:#4f606b!important}
main :is(.eyebrow,.kicker,.label){color:#7a572e!important}
main :is(h1,h2,h3,h4,h5,h6){color:#162b3a!important}
main a{color:#174e70!important;text-decoration-thickness:1.5px;text-underline-offset:.16em}
main a:hover,main a:focus-visible{color:#0b3650!important}
main :is(.landscape-band,.feature-reborn,.dream-finder-new,.network-restored,.partners-restored,.research-restored,.final-cta,.hero-cinematic,.regional-model){color:#f7f8f7!important}
main :is(.landscape-band,.feature-reborn,.dream-finder-new,.network-restored,.partners-restored,.research-restored,.final-cta,.hero-cinematic,.regional-model) :is(h1,h2,h3,h4,h5,h6){color:#fff!important}
main :is(.landscape-band,.feature-reborn,.dream-finder-new,.network-restored,.partners-restored,.research-restored,.final-cta,.hero-cinematic,.regional-model) :is(p,li,dd,dt,td,th){color:#e1e7e9!important}
main :is(.landscape-band,.feature-reborn,.dream-finder-new,.network-restored,.partners-restored,.research-restored,.final-cta,.hero-cinematic,.regional-model) :is(.muted,.secondary,.description,.meta,.small-note,.source){color:#c7d1d5!important}
main :is(.landscape-band,.feature-reborn,.dream-finder-new,.network-restored,.partners-restored,.research-restored,.final-cta,.hero-cinematic,.regional-model) :is(.eyebrow,.kicker,.label){color:#e5c58e!important}
main :is(.landscape-band,.feature-reborn,.dream-finder-new,.network-restored,.partners-restored,.research-restored,.final-cta,.hero-cinematic,.regional-model) a{color:#f0cc8d!important}
main :is(.hero-cinematic,.final-cta,.feature-reborn,.landscape-band) :is(.hero-copy,.band-content,.feature-reborn>div:last-child,.final-cta>div:last-child,.regional-model>div:last-child){text-shadow:0 1px 18px rgba(0,0,0,.32)}
main :is(.card,.home-card,.thesis-cards article,.engine-grid article,.score-board>div,.data-sources,table){color:#203442!important}
main :is(.card,.home-card,.thesis-cards article,.engine-grid article,.score-board>div,table) :is(p,li,td,th){color:#314754!important}
main table{border-collapse:separate;border-spacing:0}main table th{color:#172f3f!important;font-weight:700}main table td{color:#314754!important}main table tr:nth-child(even) td{background:rgba(19,42,59,.035)}
main :is(small,.small,.small-note,.source,[class*="meta"],[class*="caption"]){line-height:1.55}
main :is(.home-info p,.home-info em,.category-rail small,.catalogue-controls,.page-status){color:#40545f!important}
main .category-rail button{color:#17374c!important}main .category-rail button.active{color:#fff!important}
main :is(input,textarea,select){color:#1b3444!important;background:#fff}main :is(input,textarea,select)::placeholder{color:#52646e!important;opacity:1}
main :is(input,textarea,select):focus-visible{outline:3px solid rgba(23,78,112,.35);outline-offset:2px}
.topbar nav a,.topbar .pin-mini,.journey-btn{color:#fff!important}
main :is(p,li,dd,dt,td,th){line-height:1.68;overflow-wrap:break-word;text-wrap:pretty}main :is(h1,h2,h3,h4,h5,h6){text-wrap:balance;overflow-wrap:break-word}:focus-visible{outline:3px solid #c39a5d;outline-offset:3px}
@media(max-width:700px){main :is(p,li,dd,dt,td,th){line-height:1.7}main :is(h1,h2,h3){letter-spacing:-.018em}}

/* HOMEPAGE IMAGE-FIRST REDESIGN — preserve all content/functionality, increase clean visual space */
.hero-cinematic{height:100svh;min-height:700px;max-height:900px;background:#081323}
.hero-sea{right:48.5%;background-image:linear-gradient(90deg,rgba(8,18,29,.02),rgba(8,18,29,.22)),url('https://unsplash.com/photos/_ZX0S27D3fw/download?force=true&w=2400');background-position:center center}
.hero-mountain{left:48.5%;background-image:linear-gradient(180deg,rgba(5,7,24,.02),rgba(8,12,28,.22)),url('https://commons.wikimedia.org/wiki/Special:FilePath/Dawn_at_chitkul_village.jpg?width=2400');background-position:center center}
.hero-fade{background:radial-gradient(ellipse at 50% 43%,rgba(5,12,25,.10) 0%,rgba(5,12,25,.18) 34%,transparent 67%),linear-gradient(90deg,rgba(5,12,24,.06),rgba(5,12,24,.38) 49%,rgba(5,12,24,.10) 72%,rgba(5,12,24,.26)),linear-gradient(0deg,rgba(3,8,18,.46),transparent 34%)}
.hero-copy{width:min(1160px,92vw);padding-top:clamp(135px,18vh,175px)}
.hero-copy h1{max-width:1120px;margin:18px auto 20px;font-size:clamp(3.7rem,6.35vw,6.65rem);line-height:.91;letter-spacing:-.025em;text-shadow:0 4px 32px rgba(0,0,0,.24)}
.hero-sub{max-width:700px;font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.55;text-shadow:0 2px 18px rgba(0,0,0,.32)}
.hero-search{max-width:980px;margin:36px auto 12px;background:rgba(250,249,246,.90);box-shadow:0 18px 55px rgba(0,0,0,.20);backdrop-filter:blur(10px)}
.hero-search input{font-size:.88rem}.quick-search{font-size:.74rem;text-shadow:0 2px 12px rgba(0,0,0,.55)}
.hero-side-note{right:5vw;bottom:7vh;text-shadow:0 3px 18px rgba(0,0,0,.42)}
.topbar{height:78px;padding:0 4.5vw;background:linear-gradient(180deg,rgba(4,10,22,.28),transparent)}.topbar nav{gap:32px}.brand span{font-size:1.35rem}
@media(max-width:1100px){.hero-copy{width:min(1000px,92vw)}.hero-side-note{right:3vw;bottom:5vh}}
@media(max-width:750px){.hero-cinematic{height:100svh;min-height:720px;max-height:none}.hero-sea{right:0;opacity:.92;background-position:center}.hero-mountain{left:0;opacity:.58;background-position:72% center}.hero-fade{background:linear-gradient(0deg,rgba(3,8,18,.55),rgba(5,10,22,.10) 65%,rgba(5,10,22,.18))}.hero-copy{padding-top:140px;width:90vw}.hero-copy h1{font-size:clamp(3.15rem,12vw,4.4rem);line-height:.91;margin-bottom:18px}.hero-sub{font-size:.98rem;max-width:560px}.hero-search{margin-top:28px;max-width:560px}.hero-side-note{display:none}}

/* HOMEPAGE LOWER-LEFT COMPOSITION + IN-VIEW PIN RESULTS
   The hero remains image-first while all primary controls stay in the first viewport. */
.hero-copy{position:absolute!important;left:clamp(44px,5vw,88px)!important;bottom:clamp(38px,5.5vh,62px)!important;top:auto!important;width:min(760px,58vw)!important;margin:0!important;text-align:left!important;padding:0!important}
.hero-copy .kicker{font-size:.58rem!important;letter-spacing:.24em!important;margin:0 0 12px!important}
.hero-copy h1{font-size:clamp(2.55rem,3.65vw,4.15rem)!important;line-height:.94!important;max-width:700px!important;margin:0 0 14px!important;letter-spacing:-.02em!important}
.hero-sub{font-size:clamp(.84rem,1vw,.98rem)!important;line-height:1.45!important;max-width:620px!important;margin:0!important}
.hero-search{width:100%!important;max-width:820px!important;margin:24px 0 9px!important}
.hero-search input{font-size:.8rem!important}
.quick-search{font-size:.67rem!important;white-space:nowrap}
.hero-side-note{right:5vw!important;bottom:7vh!important}
.location-search{position:relative!important}
.location-suggestions{position:absolute!important;left:0!important;bottom:calc(100% + 12px)!important;top:auto!important;width:min(760px,58vw)!important;max-height:min(310px,38vh)!important;overflow:auto!important;z-index:100!important;background:rgba(249,248,244,.98)!important;color:#17344b!important;border:1px solid rgba(23,52,75,.14)!important;border-radius:12px!important;box-shadow:0 20px 55px rgba(0,0,0,.30)!important;backdrop-filter:blur(16px)!important;text-align:left!important}
.location-loading,.location-error{padding:18px 20px!important;font-size:.82rem!important;line-height:1.5!important;color:#40545f!important}
.pin-result{padding:18px 20px!important}
.pin-result-title{font-size:.78rem!important;font-weight:700!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#6e5738!important;margin-bottom:14px!important}
.pin-detail-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.pin-detail-grid>div{min-width:0!important}.pin-detail-grid span,.pin-alternatives>span{display:block!important;font-size:.58rem!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#77858d!important;margin-bottom:5px!important}.pin-detail-grid strong{display:block!important;font-size:.82rem!important;line-height:1.25!important;color:#17344b!important;overflow-wrap:anywhere!important}
.pin-alternatives{border-top:1px solid #e1e0db!important;padding:13px 20px 16px!important}.pin-alternatives>button{border:1px solid #d7d9d8!important;background:#fff!important;color:#17344b!important;border-radius:999px!important;padding:6px 10px!important;margin:5px 5px 0 0!important;font:500 .68rem 'DM Sans'!important;cursor:pointer!important}
@media(max-width:900px){.hero-copy{width:min(650px,72vw)!important}.hero-copy h1{font-size:clamp(2.4rem,4.6vw,3.5rem)!important}.hero-side-note{display:none}.location-suggestions{width:min(650px,72vw)!important}.pin-detail-grid{grid-template-columns:1fr 1fr!important}}
@media(max-width:750px){.hero-copy{left:5vw!important;bottom:4vh!important;width:90vw!important}.hero-copy h1{font-size:clamp(2.35rem,9.5vw,3.5rem)!important}.hero-sub{font-size:.86rem!important}.hero-search{margin-top:18px!important}.quick-search{display:none!important}.location-suggestions{left:0!important;width:100%!important;max-height:36vh!important}.pin-detail-grid{grid-template-columns:1fr 1fr!important;gap:11px!important}}

/* FINAL HERO POSITION LOCK — approved lower-left quadrant composition */
.hero-cinematic{position:relative!important;overflow:hidden!important}
.hero-copy{position:absolute!important;left:clamp(56px,5.2vw,96px)!important;right:auto!important;top:auto!important;bottom:clamp(48px,7vh,78px)!important;width:min(820px,57vw)!important;max-width:820px!important;margin:0!important;padding:0!important;text-align:left!important;transform:none!important;z-index:20!important}
.hero-copy h1{margin:0 0 16px!important;max-width:760px!important}
.hero-sub{margin:0!important;max-width:650px!important}
.hero-search{margin:24px 0 10px!important;max-width:820px!important}
.quick-search{margin:0!important;text-align:left!important}
@media(max-width:1100px){.hero-copy{left:5vw!important;width:min(700px,65vw)!important;bottom:6vh!important}}
@media(max-width:750px){.hero-copy{left:5vw!important;right:5vw!important;bottom:4vh!important;width:auto!important;max-width:none!important}.hero-copy h1{max-width:100%!important}}

/* FINAL DAY/NIGHT HERO OVERRIDE — exactly one full-bleed wallpaper at a time. */
.hero-cinematic .hero-sea,.hero-cinematic .hero-mountain{left:0!important;right:0!important;top:0!important;bottom:0!important;inset:0!important;width:100%!important;height:100%!important;background-size:cover!important;background-position:center center!important}
.hero-cinematic .hero-sea{opacity:1!important;z-index:0!important;transition:opacity 900ms ease,filter 900ms ease!important}
.hero-cinematic .hero-mountain{opacity:0!important;z-index:1!important;transition:opacity 900ms ease,filter 900ms ease!important}
.hero-cinematic .hero-fade{z-index:2!important}
.hero-cinematic .hero-copy,.hero-cinematic .hero-side-note{z-index:3!important}
.hero-cinematic[data-hero-mode="day"] .hero-sea{opacity:1!important}
.hero-cinematic[data-hero-mode="day"] .hero-mountain{opacity:0!important;visibility:hidden!important}
.hero-cinematic[data-hero-mode="night"] .hero-sea{opacity:0!important;visibility:hidden!important}
.hero-cinematic[data-hero-mode="night"] .hero-mountain{opacity:1!important;visibility:visible!important;filter:none!important}
@media(max-width:750px){.hero-cinematic .hero-sea,.hero-cinematic .hero-mountain{left:0!important;right:0!important;inset:0!important;width:100%!important;height:100%!important}.hero-cinematic .hero-sea{opacity:1!important}.hero-cinematic .hero-mountain{opacity:0!important}.hero-cinematic[data-hero-mode="night"] .hero-sea{opacity:0!important}.hero-cinematic[data-hero-mode="night"] .hero-mountain{opacity:1!important}}
