/* India of Tomorrow structural correction layer v5
   Restores full-width page composition and keeps content readable at every viewport. */
:root{--ri-container:1280px;--ri-reading:760px;--ri-r1:10px;--ri-r2:16px;--ri-r3:22px;--ri-shadow-1:0 2px 5px rgba(16,41,67,.04),0 12px 30px rgba(16,41,67,.07);--ri-shadow-2:0 4px 10px rgba(16,41,67,.06),0 24px 56px rgba(16,41,67,.1)}
body{font-size:16px;line-height:1.68;background:#f7f9fb!important}
h1{font-size:clamp(30px,3vw,35px)!important;line-height:1.14!important}
h2{font-size:clamp(25px,2.35vw,32px)!important;line-height:1.2!important}
h3{line-height:1.3!important}
p,li,dd{font-size:16px;line-height:1.72}
label,input,select,textarea,button{font-size:14px!important}
main{padding-bottom:0!important}
main>section+section{margin-top:0!important}

/* Sections that already own responsive inner padding must remain full bleed. */
main>.surface,main>.dark-surface,main>.method,main>.contribute,main>.pillar-overview,
main>.editorial-body,main>.india-map-section,main>.data-studio,main>.research-feed,
main>.operating-system,main>.strategy-grid,main>.platform-hero,main>.platform-body,
main>.workspace-title,main>.geo-head,main>.geo-shell,main>.horizon-hero,main>.horizon-body,
main>.explore-head,main>.editorial-head,main>.system-hero,main>.strategy-hero,main>.blog-hero{
  width:100%!important;max-width:none!important;margin-inline:0!important
}
.surface,.dark-surface,.method,.contribute,.pillar-overview,.editorial-body,
.india-map-section,.data-studio,.research-feed,.operating-system,.horizon-body{
  padding-inline:max(24px,calc((100vw - var(--ri-container))/2))!important
}
.workspace-title,.geo-head,.strategy-hero,.platform-hero,.explore-head,.editorial-head,
.system-hero,.blog-hero,.record-top,.pillar-hero{
  padding-inline:max(24px,calc((100vw - var(--ri-container))/2))!important
}

/* Homepage: a clear first screen, useful actions, and balanced data sections. */
.workspace-hero{width:min(var(--ri-container),calc(100% - 48px))!important;max-width:var(--ri-container)!important;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr)!important;gap:clamp(38px,5vw,72px)!important;padding:58px 0 52px!important}
.workspace-hero>*{min-width:0}.workspace-hero .hero-copy>p{font-size:17px!important;line-height:1.72!important}.workspace-hero .locator{border-radius:var(--ri-r3)!important;box-shadow:var(--ri-shadow-2)!important}.locator form{padding:26px!important}.locator label{font-size:14px!important}.hero-metrics{border-radius:var(--ri-r2)!important;overflow:hidden;background:#fff}.hero-metrics>div{padding:15px!important}.hero-metrics span,.hero-metrics small{font-size:12px!important;line-height:1.4}.home-action-strip{width:min(var(--ri-container),calc(100% - 48px))!important;margin:0 auto 54px!important}.operating-system,.surface,.dark-surface,.india-map-section,.data-studio,.research-feed{padding-top:64px!important;padding-bottom:64px!important}.os-flow,.mission-portfolios,.strategy-grid,.pillar-grid,.news-grid,.viz-grid{gap:14px!important}.os-flow article,.mission-portfolios a,.strategy-grid article,.pillar-card,.viz-card,.feature-story,.news-card{border-radius:var(--ri-r2)!important}.pillar-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;border:0!important}.pillar-card{min-height:240px!important;border:1px solid var(--ri-line)!important}.pillar-card p,.story-body p,.news-card p,.os-flow p,.strategy-grid p,.mission-portfolios p{font-size:14px!important;line-height:1.65!important}.section-title{align-items:start!important}.section-title>p{font-size:16px!important;line-height:1.7!important}

/* Home 2D map: the map and form receive real horizontal space. */
.india-map-section .section-title{max-width:900px}.map-workspace{width:100%!important;grid-template-columns:minmax(0,1fr) minmax(360px,420px)!important;min-height:700px!important;border-radius:var(--ri-r3)!important;box-shadow:var(--ri-shadow-1)!important;background:#fff}.map-workspace>*{min-width:0}.map-canvas{min-height:700px!important;padding:72px 24px 160px!important;overflow:hidden!important}.map-canvas #india-state-map{width:100%!important;height:500px!important;min-height:500px!important}.map-canvas .highcharts-container,.map-canvas .highcharts-root{width:100%!important;max-width:100%!important}.map-canvas .india-svg{width:auto!important;height:min(500px,58vw)!important;max-width:88%!important}.place-drill{padding:34px!important;border-left:1px solid var(--ri-line)!important;overflow:visible!important}.place-drill h3{font-size:26px!important;margin:22px 0!important}.place-drill label{font-size:14px!important;margin-bottom:17px!important}.place-drill select,.place-drill input{font-size:14px!important;min-height:50px!important}.place-drill>button{font-size:15px!important;min-height:52px!important}.drill-crumb{font-size:12px!important}.map-state b{font-size:14px!important}.map-state small{font-size:13px!important}.state-index{left:20px!important;right:20px!important;bottom:18px!important}.state-index>b{font-size:14px!important}.state-index button{font-size:13px!important;min-height:38px!important}

/* Community reporting: readable two-column page with a wide, unclipped form. */
main>.contribute{display:grid!important;grid-template-columns:minmax(260px,360px) minmax(0,1fr)!important;gap:clamp(38px,5vw,72px)!important;padding-top:62px!important;padding-bottom:72px!important;background:#f1f5f8!important}.contribute>*{min-width:0!important}.contribute-intro{position:sticky!important;top:112px!important;align-self:start!important}.contribute-intro h2{max-width:12ch!important}.contribute-intro p,.contribute-intro li{font-size:16px!important;line-height:1.72!important}.contribute-intro ul{padding-left:22px}.report-form{width:100%!important;max-width:none!important;padding:clamp(22px,3vw,34px)!important;border-radius:var(--ri-r3)!important;border:1px solid var(--ri-line-strong)!important;box-shadow:var(--ri-shadow-1)!important}.report-form .fields{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:17px!important}.report-form .fields>*{min-width:0!important}.report-form .fields .full{grid-column:1/-1!important}.report-form label{display:grid!important;align-content:start!important;gap:8px!important;margin:0!important;font-size:14px!important;line-height:1.45!important}.report-form input,.report-form select,.report-form textarea{min-width:0!important;width:100%!important;margin:0!important;min-height:50px!important;font-size:15px!important;padding:12px 14px!important}.report-form textarea{min-height:150px!important}.step-head{margin:10px 0 22px!important;padding:0 0 13px!important}.step-head:not(:first-of-type){margin-top:34px!important}.step-head span{width:34px!important;height:34px!important;font-size:13px!important;border-radius:9px!important}.step-head b{font-size:18px!important}.upload{padding:16px!important;border-radius:var(--ri-r2)!important}.upload small{font-size:13px!important}.form-actions{grid-template-columns:minmax(130px,.35fr) minmax(220px,1fr)!important;gap:12px!important}.form-actions button{min-height:50px!important;font-size:14px!important}

/* Geographic explorer: desktop dashboard first, deliberate tablet/mobile stacking. */
.geo-head{padding-top:48px!important;padding-bottom:40px!important}.geo-head p{font-size:16px!important;line-height:1.7!important}.geo-shell{width:min(1500px,calc(100% - 40px))!important;max-width:1500px!important;margin:24px auto 64px!important;grid-template-columns:290px minmax(0,1fr)!important;min-height:780px!important;border:1px solid var(--ri-line)!important;border-radius:var(--ri-r3)!important;overflow:hidden!important;background:#fff!important;box-shadow:var(--ri-shadow-1)!important}.geo-filters{padding:24px!important}.geo-filters label{font-size:14px!important;letter-spacing:0!important}.geo-filters input,.geo-filters select{min-height:46px!important;font-size:14px!important}.geo-warning b,.geo-warning p{font-size:14px!important}.geo-main{padding:22px!important}.geo-toolbar label,.geo-layer-buttons button{font-size:14px!important}.geo-map-view{grid-template-columns:minmax(0,1fr) minmax(260px,310px)!important;gap:16px!important}.geo-map-canvas{min-height:650px!important;padding-bottom:155px!important}.geo-map-canvas .india-svg{height:470px!important}.geo-no-data b{font-size:14px!important}.geo-no-data span,.geo-legend b,.geo-legend span{font-size:13px!important}.geo-intelligence{padding:24px!important;border-radius:var(--ri-r2)!important}.geo-intelligence nav button,.geo-intelligence>button,.geo-summary{font-size:14px!important}.map-method summary,.map-method div{font-size:14px!important}

/* Databases, long reads and record pages share a comfortable content measure. */
.database-shell{width:min(1400px,calc(100% - 40px))!important;max-width:1400px!important;margin:24px auto 64px!important;border:1px solid var(--ri-line)!important;border-radius:var(--ri-r3)!important;overflow:hidden!important;background:#fff}.filter-rail label,.filter-help p,.smart-row,.table-footer{font-size:14px!important}.smart-row{min-height:76px!important}.smart-row>span:first-child small,.record-state{font-size:12px!important}.longread-body p,.record-section p,.school-detail-content p,.agri-detail-content p,.water-detail-content p,.health-detail-content p,.jobs-detail-content p,.gov-detail-content p,.energy-detail-content p,.women-detail-content p{font-size:16px!important;line-height:1.75!important}.record-layout,.school-detail-layout,.agri-detail-layout,.water-detail-layout,.health-detail-layout,.jobs-detail-layout,.gov-detail-layout,.energy-detail-layout,.women-detail-layout{width:min(var(--ri-container),calc(100% - 48px))!important;max-width:var(--ri-container)!important}.record-section{padding-block:44px!important}.record-section h2{font-size:29px!important}

/* Footer: five clear directories first; deep pages stay collapsed until requested. */
.mega-footer{padding:0!important}.footer-callout{width:min(var(--ri-container),calc(100% - 48px))!important;margin:0 auto!important;padding:42px 0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;border-bottom:1px solid rgba(255,255,255,.12)!important}.footer-system-strip,.footer-map,.footer-newsletter,.footer-base,.footer-directory-host{width:min(var(--ri-container),calc(100% - 48px))!important}.footer-map{grid-template-columns:minmax(260px,1.6fr) repeat(4,minmax(140px,1fr))!important;gap:clamp(20px,2.4vw,34px)!important}.footer-map>div{min-width:0!important;padding:0!important}.footer-map h4{font-size:14px!important;letter-spacing:.04em!important}.footer-map>div>a:not(.brand){font-size:14px!important;min-height:34px!important;padding:6px 0!important}.footer-brand p{font-size:15px!important;line-height:1.65!important}.footer-directory-host{padding:42px 0!important}.footer-directory-head{max-width:900px!important;grid-template-columns:1fr!important;gap:8px!important}.footer-directory-head>span{grid-column:auto!important}.footer-directory-head h2{font-size:28px!important}.footer-directory-host .inside-systems{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}.footer-directory-host .mega-directory{border-radius:var(--ri-r2)!important}.footer-directory-host .mega-directory summary{min-height:60px!important;padding:14px 16px!important;font-size:14px!important}.footer-directory-host .mega-directory>div{max-height:360px!important}.footer-directory-host .mega-directory>div>a{min-height:44px!important;padding:11px!important;font-size:14px!important}.footer-newsletter{grid-template-columns:minmax(0,1fr) minmax(320px,460px)!important;gap:28px!important}.footer-newsletter span{font-size:14px!important}.footer-base{font-size:14px!important}.social-note{font-size:13px!important}

@media(max-width:1180px){.workspace-hero{grid-template-columns:1fr minmax(340px,430px)!important}.pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.map-workspace{grid-template-columns:minmax(0,1fr) 360px!important}.geo-map-view{grid-template-columns:1fr!important}.geo-intelligence{grid-column:1!important;grid-row:auto!important}.geo-legend{grid-column:1!important}.footer-map{grid-template-columns:1.4fr repeat(2,1fr)!important}.footer-map>div:nth-child(4),.footer-map>div:nth-child(5){grid-column:auto!important}}
@media(max-width:1024px){.workspace-hero{grid-template-columns:1fr!important;width:min(820px,calc(100% - 40px))!important}.workspace-hero .contribute-intro{position:static!important}.map-workspace{grid-template-columns:1fr!important}.map-canvas{min-height:590px!important}.place-drill{border-left:0!important;border-top:1px solid var(--ri-line)!important}.geo-shell{grid-template-columns:1fr!important}.geo-filters{border-right:0!important;border-bottom:1px solid var(--ri-line)!important}.geo-filters form{grid-template-columns:repeat(3,minmax(0,1fr))!important}.geo-main{min-width:0}.footer-directory-host .inside-systems{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:820px){main>.contribute{grid-template-columns:1fr!important}.contribute-intro{position:static!important;max-width:720px!important}.contribute-intro h2{max-width:22ch!important}.home-action-strip{grid-template-columns:1fr 1fr!important}.footer-map{grid-template-columns:1fr 1fr!important}.footer-brand{grid-column:1/-1!important}.footer-newsletter{grid-template-columns:1fr!important}.geo-toolbar{display:grid!important}.geo-layer-buttons{align-items:center!important;overflow:auto!important}.record-layout,.school-detail-layout,.agri-detail-layout,.water-detail-layout,.health-detail-layout,.jobs-detail-layout,.gov-detail-layout,.energy-detail-layout,.women-detail-layout{width:calc(100% - 36px)!important}}
@media(max-width:620px){.surface,.dark-surface,.method,.contribute,.pillar-overview,.editorial-body,.india-map-section,.data-studio,.research-feed,.operating-system,.horizon-body{padding-inline:18px!important}.workspace-title,.geo-head,.strategy-hero,.platform-hero,.explore-head,.editorial-head,.system-hero,.blog-hero,.record-top,.pillar-hero{padding-inline:18px!important}.workspace-hero{width:calc(100% - 36px)!important;padding-block:38px!important}.home-action-strip{width:calc(100% - 36px)!important;grid-template-columns:1fr!important}.hero-metrics{grid-template-columns:1fr 1fr!important}.pillar-grid{grid-template-columns:1fr!important}.map-canvas{min-height:520px!important;padding:68px 10px 176px!important}.map-canvas #india-state-map{height:360px!important;min-height:360px!important}.map-canvas .india-svg{height:350px!important;max-width:100%!important}.place-drill{padding:24px 20px!important}.state-index>div{grid-template-columns:1fr 1fr!important}.report-form .fields,.form-actions{grid-template-columns:1fr!important}.report-form .fields .full{grid-column:1!important}.geo-shell,.database-shell{width:calc(100% - 24px)!important;margin:12px auto 42px!important;border-radius:var(--ri-r2)!important}.geo-filters form{grid-template-columns:1fr!important}.geo-main{padding:12px!important}.geo-map-canvas{min-height:520px!important;padding-bottom:178px!important}.geo-map-canvas .india-svg{height:340px!important}.footer-callout,.footer-system-strip,.footer-map,.footer-newsletter,.footer-base,.footer-directory-host{width:calc(100% - 36px)!important}.footer-map,.footer-directory-host .inside-systems{grid-template-columns:1fr!important}.footer-map>div,.footer-map>div:nth-child(4),.footer-map>div:nth-child(5){grid-column:1!important}.footer-directory-head h2{font-size:25px!important}.sticky-donate{right:12px!important;bottom:12px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}
