/* Landing page: India map hero + state cards. */

.hero{display:grid;grid-template-columns:minmax(300px,460px) 1fr;gap:40px;
  align-items:center;margin:10px 0 26px}
@media (max-width:900px){.hero{grid-template-columns:1fr}}

.imap{width:100%;height:auto;display:block}
.imap path{fill:var(--ground-2);stroke:var(--surface);stroke-width:1;
  transition:fill .12s}
.imap path.live{cursor:pointer}
.imap path.hot{fill:var(--b1) !important}

.maptip{position:absolute;pointer-events:none;z-index:10;
  background:var(--surface);border:var(--ctl-border);
  box-shadow:var(--ctl-shadow-sm);padding:8px 12px;font-size:13px;
  opacity:0;transition:opacity .1s;max-width:240px}
.maptip.on{opacity:1}
.maptip b{display:block;font-size:14px}
.maptip .d{color:var(--ink-2);font-size:12.5px}

.hero-copy h1.portal-title{font-size:clamp(34px,4.2vw,54px);line-height:1.08;
  margin:0 0 10px;font-weight:700;letter-spacing:-.015em}
.hero-copy .tagline{font-size:19px;font-weight:600;color:var(--ink);
  margin:0 0 12px}
.hero-copy .lede{font-size:16.5px;color:var(--ink-2);max-width:54ch;
  margin:0 0 18px}
.hero-copy .cta{display:flex;gap:12px;flex-wrap:wrap}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));
  gap:22px;margin:8px 0 30px}
.scard{background:var(--surface);border:var(--ctl-border);
  box-shadow:var(--ctl-shadow);padding:20px 22px;display:flex;
  flex-direction:column;gap:12px}
.scard .top{display:flex;gap:16px;align-items:center}
.scard .mini{flex:0 0 84px;height:84px}
.scard .mini path{fill:var(--b4);stroke:none}
.scard h2{margin:0;font-size:20px;letter-spacing:-.01em}
.scard .yrs{font-size:12.5px;color:var(--muted)}
.scard .stats{display:flex;gap:26px;flex-wrap:wrap}
.scard .links{display:flex;gap:10px;flex-wrap:wrap;margin-top:2px}
.scard.soon{opacity:.65;box-shadow:none}
.scard.soon h2{color:var(--muted)}
