/* ============================================================
   URJASTROT — Final Flat Brand Theme
   Inspiration: DHL consistency + Tesla spacing + Apple clarity
   Palette locked: #FFD700, #FF671F, #000000, #FFFFFF
   Direction: White base, Golden Yellow highlights, Orange CTAs,
   Black typography, real solar proof, clean and sober design.
   ============================================================ */
:root{
  --yellow:#FFD700;
  --orange:#FF671F;
  --black:#000000;
  --white:#FFFFFF;
  --ink:#000000;
  --ink-dim:rgba(0,0,0,.72);
  --ink-soft:rgba(0,0,0,.56);
  --line:rgba(0,0,0,.10);
  --card-shadow:0 22px 60px -36px rgba(0,0,0,.38);
  --card-shadow-hover:0 30px 76px -42px rgba(0,0,0,.46);
}

*{box-sizing:border-box;}
html,body{font-family:'Poppins',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;}
body{
  background:#FFFFFF !important;
  color:#000000 !important;
  min-height:100vh;
}
.page-atmos,.page-grid,.page-noise{display:none !important;}
.wrap{position:relative;z-index:2;}

/* ---------- Typography ---------- */
h1,h2,h3,h4,h5,h6,.display,.h-sec{
  color:#000000 !important;
  letter-spacing:-.035em;
}
.display{font-size:clamp(2.5rem,6vw,5rem) !important;line-height:.96 !important;font-weight:900 !important;}
.h-sec{font-size:clamp(2rem,4.2vw,3.45rem) !important;line-height:1.02 !important;font-weight:900 !important;}
.lead,p,.muted{color:rgba(0,0,0,.72) !important;}
.grad-text{
  background:none !important;
  -webkit-text-fill-color:#000000 !important;
  color:#000000 !important;
}
.sec-no,.mono,.cl,.fnum,.vm .vk{color:#FF671F !important;font-weight:800 !important;}

/* ---------- Brand Kicker ---------- */
.kicker{
  display:inline-flex !important;
  align-items:center !important;
  gap:.5rem !important;
  color:#000000 !important;
  background:#FFD700 !important;
  border:0 !important;
  border-radius:999px !important;
  padding:.56rem 1.05rem !important;
  font-weight:800 !important;
  box-shadow:none !important;
  letter-spacing:.02em !important;
}
.kicker::before{background:#FF671F !important;}

/* ---------- Header / Navigation ---------- */
.nav{
  padding:12px clamp(.75rem,2vw,1.35rem) 0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.nav.scrolled{background:transparent !important;box-shadow:none !important;}
.nav-in{
  max-width:1180px !important;
  padding:.64rem .92rem !important;
  border-radius:999px !important;
  background:#FFFFFF !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 16px 46px -34px rgba(0,0,0,.45) !important;
}
.nav.scrolled .nav-in{padding:.54rem .8rem !important;}
.brand{
  background:#FFFFFF !important;
  border-radius:999px !important;
  padding:.32rem .62rem .32rem .34rem !important;
  box-shadow:none !important;
}
.brand img{height:36px !important;max-width:170px !important;object-fit:contain !important;}
.nav-links a{
  color:rgba(0,0,0,.74) !important;
  border-radius:999px !important;
  padding:.5rem .72rem !important;
  font-weight:700 !important;
}
.nav-links a:hover,.nav-links a.active{
  background:#FFD700 !important;
  color:#000000 !important;
}
.nav-links a.active::after{display:none !important;}
.nav-toggle{border:0 !important;background:#FFD700 !important;color:#000000 !important;}
.mobile-menu{
  background:#FFFFFF !important;
  border-left:6px solid #FFD700 !important;
  box-shadow:-30px 0 80px -55px rgba(0,0,0,.65) !important;
}
.mobile-menu a{color:#000000 !important;}
.mobile-menu a:hover{color:#FF671F !important;}

/* ---------- Layout rhythm ---------- */
.phero,.sec-pad,.sec-light,.sec-light.alt{
  background:#FFFFFF !important;
  position:relative;
}
.phero{padding:clamp(8.2rem,12vw,10.5rem) 0 clamp(3.4rem,6vw,5.2rem) !important;overflow:hidden;}
.phero::before,.sec-pad::before,.sec-light::before{display:none !important;}
.sec-pad{padding:clamp(4.9rem,8vw,7.2rem) 0 !important;}
.sec-light.alt{background:#FFFFFF !important;}
.sec-head,.lhead{max-width:820px !important;margin-left:auto !important;margin-right:auto !important;text-align:center !important;}
.sec-head.left{margin-left:auto !important;text-align:center !important;}
.crumbs{color:rgba(0,0,0,.62) !important;font-weight:700;}
.crumbs a{color:#000000 !important;text-decoration:none;}

/* Section identity strips: clean yellow, not lemon/cream */
.sec-pad:nth-of-type(even),
.sec-light.alt{
  background:linear-gradient(90deg,#FFFFFF 0%,#FFFFFF 58%,rgba(255,215,0,.16) 58%,rgba(255,215,0,.16) 100%) !important;
}

/* ---------- Cards: white base + yellow accent, no glass clutter ---------- */
.glass,.fcard,.vm,.role,.ctile,.faq,.lcard,.acard,.app-feat,.app-ticket,.tkt,.fnode,.scheme-note,.about-pill,.about-note,.billcalc,.billcalc-side,.proof-strip,.india-stage,.india-form-panel .india-statecount>div,.store-btn,.cta-band,.final-cta,
.article-card,.impact-card{
  background:#FFFFFF !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:var(--card-shadow) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.glass,.fcard,.vm,.role,.ctile,.faq,.lcard,.acard,.app-feat,.tkt,.fnode,.scheme-note,.about-pill,.about-note,.billcalc,.billcalc-side,.proof-strip,.india-stage,.cta-band,.final-cta,.article-card,.impact-card{
  border-radius:26px !important;
  overflow:hidden;
}
.fcard,.lcard,.vm,.role,.ctile,.acard,.app-feat,.fnode,.about-pill,.article-card,.impact-card{
  transition:transform .28s ease, box-shadow .28s ease !important;
}
.fcard:hover,.lcard:hover,.vm:hover,.role:hover,.ctile:hover,.acard:hover,.app-feat:hover,.fnode:hover,.about-pill:hover,.article-card:hover,.impact-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:var(--card-shadow-hover) !important;
}
.fcard,.lcard{padding:clamp(1.35rem,2.2vw,2rem) !important;}
.fcard h3,.lcard h3,.vm h3,.role h3,.article-card h3,.impact-card h3{color:#000000 !important;}
.fcard p,.lcard p,.vm p,.role p,.article-card p,.impact-card p{color:rgba(0,0,0,.72) !important;}

/* Yellow top-accent for cards */
.fcard,.lcard,.vm,.role,.ctile,.acard,.app-feat,.fnode,.about-pill,.article-card,.impact-card,.billcalc,.india-stage{
  position:relative;
}
.fcard::before,.lcard::before,.vm::before,.role::before,.ctile::before,.acard::before,.app-feat::before,.fnode::before,.about-pill::before,.article-card::before,.impact-card::before,.billcalc::before,.india-stage::before{
  content:"";
  position:absolute;
  left:0;top:0;right:0;height:6px;
  background:#FFD700;
}

/* Icons and badges */
.ficon,.lcard .li,.ci,.role .rcode,.fn-no,.app-feat .afi,.pnum,.bc-amount .rs{
  background:#FFD700 !important;
  color:#000000 !important;
  border:0 !important;
  box-shadow:none !important;
}
.ficon svg,.ci svg,.lcard .li svg{color:#000000 !important;}
.article-card .tag,.impact-card .tag{
  display:inline-flex;
  background:#FF671F !important;
  color:#FFFFFF !important;
  border-radius:999px;
  padding:.35rem .75rem;
  font-size:.75rem;
  font-weight:800;
  margin-bottom:1rem;
}

/* ---------- Buttons ---------- */
.btn-primary{
  background:#FF671F !important;
  color:#FFFFFF !important;
  border:0 !important;
  box-shadow:none !important;
  font-weight:800 !important;
}
.btn-primary:hover{
  background:#000000 !important;
  color:#FFD700 !important;
  transform:translateY(-3px) !important;
}
.btn-ghost,.btn-light-outline,.btn-secondary{
  background:#FFD700 !important;
  color:#000000 !important;
  border:0 !important;
  box-shadow:none !important;
  font-weight:800 !important;
}
.btn-ghost:hover,.btn-light-outline:hover,.btn-secondary:hover{
  background:#000000 !important;
  color:#FFD700 !important;
  transform:translateY(-3px) !important;
}

/* ---------- First India map + inquiry section ---------- */
.first-map-section{
  background:#FFFFFF !important;
  padding-top:clamp(8rem,12vw,10.8rem) !important;
}
.first-map-section::after{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:18px;
  background:#FFD700;
  pointer-events:none;
}
.india-wrap{gap:2rem !important;align-items:stretch !important;}
.india-stage{
  background:#FFFFFF !important;
  border-left:10px solid #FFD700 !important;
  min-height:560px !important;
}
.india-stage svg .state,
.india-stage svg path{
  transition:.35s ease;
}
.india-stage svg .has,
.india-stage svg [data-has="true"]{
  fill:#FFD700 !important;
}
.india-stage svg .active,
.india-stage svg .is-active{
  fill:#FF671F !important;
}
.in-popup{
  background:#FFFFFF !important;
  border:1px solid rgba(0,0,0,.10) !important;
  box-shadow:0 18px 42px -26px rgba(0,0,0,.45) !important;
}
.in-popup .cta,.in-popup a{background:#FF671F !important;color:#FFFFFF !important;}
.india-statecount{gap:1rem !important;}
.india-statecount .num{color:#000000 !important;font-weight:900 !important;}
.india-statecount .lbl{color:rgba(0,0,0,.72) !important;}

/* ---------- Forms ---------- */
.field input,.field select,.field textarea,
.bc-field input,.bc-field select,
.bc-amount{
  background:#FFFFFF !important;
  color:#000000 !important;
  border:1px solid rgba(0,0,0,.12) !important;
  border-radius:16px !important;
  box-shadow:none !important;
}
.field input:focus,.field select:focus,.field textarea:focus,.bc-field input:focus,.bc-field select:focus{
  outline:3px solid rgba(255,215,0,.5) !important;
  border-color:#FF671F !important;
}
.billcalc{
  border-left:10px solid #FFD700 !important;
}
.bc-q{color:#000000 !important;font-weight:900 !important;}
.bc-sub,.bc-note,.bc-help{color:rgba(0,0,0,.72) !important;}
.bc-help a{color:#FF671F !important;font-weight:900 !important;}

/* ---------- Process section ---------- */
.ptimeline{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:1.25rem !important;max-width:1120px;margin:2.6rem auto 0 !important;}
.pstep{
  background:#FFFFFF !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:var(--card-shadow) !important;
  border-radius:24px !important;
  padding:1.35rem !important;
  min-height:180px !important;
}
.pstep::before,.ptimeline::before{display:none !important;}
.pnum{width:42px !important;height:42px !important;border-radius:12px !important;font-weight:900 !important;}
.pbody h3{color:#000000 !important;}
.pbody p{color:rgba(0,0,0,.72) !important;}

/* ---------- Care app / store buttons ---------- */
.phone{background:#000000 !important;border:0 !important;box-shadow:0 22px 54px -34px rgba(0,0,0,.7) !important;}
.phone-screen{background:#FFFFFF !important;color:#000000 !important;border:0 !important;}
.tkt{background:#FFFFFF !important;color:#000000 !important;border-left:5px solid #FFD700 !important;}
.store-btn{background:#000000 !important;color:#FFFFFF !important;border:0 !important;}
.store-btn:hover{background:#FF671F !important;color:#FFFFFF !important;}
.store-btn svg,.store-btn .store-icon{color:#FFD700 !important;}

/* ---------- CTA bands ---------- */
.cta-band,.final-cta{
  max-width:1120px !important;
  margin:0 auto !important;
  padding:clamp(2.8rem,6vw,4.7rem) clamp(1.4rem,4vw,3.5rem) !important;
  background:#FFD700 !important;
  border:0 !important;
  border-radius:32px !important;
  box-shadow:none !important;
}
.cta-band h2,.cta-band p,.final-cta h2,.final-cta p{color:#000000 !important;}
.final-cta .btn-primary,.cta-band .btn-primary{background:#FF671F !important;color:#FFFFFF !important;}
.final-cta .btn-ghost,.cta-band .btn-ghost{background:#FFFFFF !important;color:#000000 !important;}

/* ---------- About / Services / CSR specific polish ---------- */
.about-yellow-panel{background:#FFD700 !important;color:#000000 !important;border:0 !important;box-shadow:none !important;}
.about-yellow-panel p,.about-yellow-panel h3{color:#000000 !important;}
.about-pill-grid,.vm-grid,.cards{gap:1.35rem !important;}
.cards.c2{grid-template-columns:repeat(2,minmax(0,1fr));}
.role{margin-bottom:1.15rem !important;}
.mantra .sk{background:none !important;-webkit-text-fill-color:#000000 !important;color:#000000 !important;}
.blog-list,.csr-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem;margin-top:2rem;}
.article-card,.impact-card{padding:1.65rem;border-radius:26px;}

/* ---------- Footer ---------- */
.footer{
  background:#000000 !important;
  color:#FFFFFF !important;
  border-top:8px solid #FFD700 !important;
}
.footer a{color:rgba(255,255,255,.78) !important;}
.footer a:hover{color:#FFD700 !important;}
.footer h4{color:#FFD700 !important;}
.footer-brand p,.footer-bot{color:rgba(255,255,255,.65) !important;}
.footer-mantra{color:#FFD700 !important;}

@media(max-width:1100px){
  .ptimeline{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:980px){
  .nav-in{border-radius:24px !important;}
  .nav-links{display:none !important;}
  .nav-toggle{display:flex !important;}
  .nav-cta .btn{display:none !important;}
  .cards.c2,.blog-list,.csr-list{grid-template-columns:1fr !important;}
  .footer-grid{grid-template-columns:1fr 1fr !important;}
  .display{font-size:clamp(2.25rem,10vw,4rem) !important;}
}
@media(max-width:680px){
  .ptimeline{grid-template-columns:1fr !important;}
  .india-stage{min-height:430px !important;}
}
@media(max-width:560px){
  .nav{padding:8px .7rem 0 !important;}
  .nav-in{padding:.55rem .65rem !important;}
  .brand img{height:32px !important;max-width:145px !important;}
  .mobile-menu{padding-top:6.2rem !important;}
  .footer-grid{grid-template-columns:1fr !important;}
  .form-grid{grid-template-columns:1fr !important;}
  .sec-pad{padding:4rem 0 !important;}
}


/* =========================================================
   URJASTROT PROFESSIONAL FLAT BRAND UPDATE
   White dominant, golden yellow highlights, orange CTAs
   ========================================================= */
:root{
  --urja-yellow:#FFD700 !important;
  --urja-orange:#FF671F !important;
  --urja-black:#000000 !important;
  --urja-white:#FFFFFF !important;
  --brand-highlight:#FFD700 !important;
  --brand-cta:#FF671F !important;
  --card-shadow:0 18px 48px -38px rgba(0,0,0,.45) !important;
}
html,body{background:#FFFFFF !important;color:#000000 !important;font-family:'Poppins',sans-serif !important;}
body::before,body::after,.page-atmos,.grid-bg,.noise{opacity:0 !important;display:none !important;}
.sec-light,.sec-light.alt,.phero,.section,.first-map-section{background:#FFFFFF !important;}
.sec-light:nth-of-type(even){background:linear-gradient(180deg,#FFFFFF 0%,rgba(255,215,0,.08) 100%) !important;}
.wrap{max-width:1180px !important;}
.kicker{color:#000000 !important;background:#FFD700 !important;border-radius:999px !important;padding:.48rem .82rem !important;display:inline-flex !important;font-weight:900 !important;letter-spacing:.06em !important;}
.h-sec,.display,h1,h2,h3{color:#000000 !important;letter-spacing:-.035em !important;}
.lead,p{color:rgba(0,0,0,.72) !important;}
.nav{background:#FFFFFF !important;padding-top:0 !important;border-bottom:1px solid rgba(0,0,0,.08) !important;}
.nav-in{background:#FFFFFF !important;border:0 !important;border-radius:0 !important;box-shadow:0 14px 32px -30px rgba(0,0,0,.45) !important;}
.brand{background:#FFFFFF !important;border-radius:0 !important;padding:.15rem .4rem !important;}
.nav-links a{color:#000000 !important;font-weight:800 !important;}
.nav-links a:hover{color:#FF671F !important;background:rgba(255,215,0,.18) !important;}
.btn,.btn-primary{border-radius:12px !important;font-weight:900 !important;letter-spacing:.01em !important;}
.btn-primary,.btn-dark{background:#FF671F !important;color:#FFFFFF !important;border:2px solid #FF671F !important;box-shadow:none !important;}
.btn-primary:hover,.btn-dark:hover{background:#000000 !important;border-color:#000000 !important;color:#FFD700 !important;transform:translateY(-2px) !important;}
.btn-ghost,.btn-light-outline,.btn-secondary{background:#FFD700 !important;color:#000000 !important;border:2px solid #FFD700 !important;box-shadow:none !important;}
.btn-ghost:hover,.btn-light-outline:hover,.btn-secondary:hover{background:#FFFFFF !important;color:#000000 !important;border-color:#000000 !important;transform:translateY(-2px) !important;}
.first-map-section{padding-top:clamp(7.2rem,10vw,9rem) !important;border-top:8px solid #FFD700 !important;}
.first-map-section::after{display:none !important;}
.india-wrap{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr) !important;gap:2rem !important;}
.india-stage,.billcalc,.india-form-panel,.fcard,.holo,.acard,.article-card,.impact-card,.why-card,.pstep{background:#FFFFFF !important;border:1px solid rgba(0,0,0,.08) !important;box-shadow:0 20px 50px -38px rgba(0,0,0,.42) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;}
.india-stage{border-left:10px solid #FFD700 !important;min-height:560px !important;}
.india-stage svg .has,.india-stage svg [data-has="true"]{fill:#FFD700 !important;}
.india-stage svg .active,.india-stage svg .is-active{fill:#FF671F !important;}
.india-statecount{display:grid !important;grid-template-columns:1fr 1fr !important;gap:1rem !important;margin-bottom:1.1rem !important;}
.india-statecount>div{background:#FFFFFF !important;border-left:7px solid #FFD700 !important;border-radius:18px !important;padding:1rem !important;box-shadow:0 12px 30px -26px rgba(0,0,0,.4) !important;}
.india-statecount .num{color:#000000 !important;font-weight:900 !important;font-size:2.2rem !important;}
.india-statecount .lbl{color:rgba(0,0,0,.7) !important;font-weight:700 !important;}
.billcalc{padding:1.5rem !important;border-left:10px solid #FFD700 !important;border-radius:28px !important;}
.bc-q{color:#000000 !important;font-weight:900 !important;}
.bc-sub,.bc-note,.bc-help{color:rgba(0,0,0,.72) !important;}
.bc-help a{color:#FF671F !important;font-weight:900 !important;}
.bc-field input,.bc-field select,.bc-amount,.field input,.field select,.field textarea{background:#FFFFFF !important;color:#000000 !important;border:1px solid rgba(0,0,0,.12) !important;box-shadow:none !important;}
.bc-field input:focus,.bc-field select:focus,.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(255,215,0,.45) !important;border-color:#FF671F !important;}
.proof-strip{background:#FFFFFF !important;border:1px solid rgba(0,0,0,.08) !important;box-shadow:0 20px 46px -38px rgba(0,0,0,.4) !important;}
.proof-thumb{background:#FFFFFF !important;border:1px solid rgba(0,0,0,.08) !important;}
.proof-thumb span{background:#000000 !important;color:#FFD700 !important;}
.why-urjastrot{background:#FFFFFF !important;}
.why-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.15rem;margin-top:2.3rem;}
.why-card{border-radius:24px;padding:1.45rem;min-height:205px;transition:.25s ease;}
.why-card:hover{transform:translateY(-6px);box-shadow:0 26px 60px -40px rgba(0,0,0,.5) !important;}
.why-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:#FFD700;color:#000000;border-radius:14px;font-weight:900;margin-bottom:1rem;}
.why-card h3{font-size:1.05rem;margin:.1rem 0 .5rem;color:#000000 !important;}
.why-card p{font-size:.92rem;line-height:1.55;margin:0;color:rgba(0,0,0,.72) !important;}
.ptimeline{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:1.2rem !important;max-width:1120px;margin:2.4rem auto 0 !important;}
.pstep{border-radius:24px !important;padding:1.35rem !important;min-height:180px !important;}
.pstep::before,.ptimeline::before{display:none !important;}
.pnum{background:#FFD700 !important;color:#000000 !important;width:42px !important;height:42px !important;border-radius:12px !important;font-weight:900 !important;}
.pbody h3{color:#000000 !important;}
.pbody p{color:rgba(0,0,0,.72) !important;}
.appshow{gap:2rem !important;align-items:center !important;}
.phone{background:#000000 !important;box-shadow:0 28px 70px -44px rgba(0,0,0,.8) !important;}
.scr,.phone-screen{background:#FFFFFF !important;color:#000000 !important;}
.tkt{background:#FFFFFF !important;color:#000000 !important;border-left:5px solid #FFD700 !important;box-shadow:0 10px 24px -22px rgba(0,0,0,.45) !important;}
.app-feat{background:#FFFFFF !important;border:1px solid rgba(0,0,0,.08) !important;box-shadow:0 16px 40px -34px rgba(0,0,0,.42) !important;}
.afi{background:#FFD700 !important;color:#000000 !important;}
.store-btn{background:#000000 !important;color:#FFFFFF !important;border:0 !important;}
.store-btn svg,.store-icon{color:#FFD700 !important;}
.awards-grid,.cards,.blog-list,.csr-list{gap:1.25rem !important;}
.acard{border-radius:24px !important;overflow:hidden !important;}
.ayr,.tag{color:#FF671F !important;font-weight:900 !important;}
.final-cta,.cta-band{background:#FFD700 !important;color:#000000 !important;border-radius:30px !important;box-shadow:none !important;border:0 !important;}
.final-cta h2,.final-cta p,.cta-band h2,.cta-band p{color:#000000 !important;}
.footer{background:#000000 !important;color:#FFFFFF !important;border-top:8px solid #FFD700 !important;}
.footer h4,.footer-mantra{color:#FFD700 !important;}
.footer a{color:rgba(255,255,255,.78) !important;}
.footer a:hover{color:#FFD700 !important;}
.footer p,.footer-bot{color:rgba(255,255,255,.65) !important;}
@media(max-width:1180px){.why-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.india-wrap{grid-template-columns:1fr !important;}.india-side{max-width:none !important;}}
@media(max-width:980px){.ptimeline{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}.why-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.nav-in{border-radius:0 !important;}.nav-toggle{display:flex !important;}.nav-links{display:none !important;}.nav-cta .btn{display:none !important;}}
@media(max-width:640px){.why-grid,.ptimeline{grid-template-columns:1fr !important;}.india-stage{min-height:430px !important;}.india-statecount{grid-template-columns:1fr !important;}.sec-pad{padding:4rem 0 !important;}.first-map-section{padding-top:6rem !important;}}


/* ============================================================
   URJASTROT — Final Form + Brand Visual Fix
   Two-step eligibility form, yellow header, clean map/form cards
   ============================================================ */

/* Header menu bar yellow */
.site-header,
.header,
.navbar,
header,
.nav,
.nav-wrap,
.nav-container,
.topbar{
  background:#FFD700 !important;
  border:none !important;
  outline:none !important;
  box-shadow:0 8px 22px rgba(0,0,0,.08) !important;
}
.navbar a,
header a,
.nav-link,
.site-header a{
  color:#000000 !important;
  font-weight:600 !important;
}
.nav-link.active,
.navbar a.active{
  background:#000000 !important;
  color:#FFD700 !important;
  border-radius:999px !important;
}

/* Map + form border cleanup */
.india-stage,
.india-wrap,
.map-card,
.india-map-card,
.hero-map,
.map-container,
.map-panel,
.map-stage,
.india-side,
.india-form-panel,
.eligibility-card,
.solar-eligibility-card,
.billcalc,
.bill-form,
.form-card,
.form-wrapper,
.calculator-form,
.inquiry-form{
  border:none !important;
  outline:none !important;
  box-shadow:0 16px 44px rgba(0,0,0,.09) !important;
}
.india-stage::before,
.india-wrap::before,
.map-card::before,
.india-map-card::before,
.hero-map::before,
.map-container::before,
.india-side::before,
.india-form-panel::before,
.eligibility-card::before{
  display:none !important;
}
.india-stage,
.india-side,
.india-form-panel,
.eligibility-card,
.solar-eligibility-card{
  background:#FFFFFF !important;
}
.india-stage *,
.india-side *,
.eligibility-card *,
.solar-eligibility-card *{
  outline:none !important;
}

/* Two-step eligibility form */
.eligibility-card{
  width:100%;
  border-radius:28px;
  padding:1.55rem;
  color:#000;
}
.eligibility-top{
  margin-bottom:1.2rem;
}
.eligibility-label{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#000;
  background:#FFD700;
  border-radius:999px;
  padding:.45rem .8rem;
}
.eligibility-top h3{
  margin:.9rem 0 .55rem;
  font-size:clamp(1.4rem,2.4vw,2.05rem);
  line-height:1.1;
  color:#000;
}
.eligibility-top p{
  color:rgba(0,0,0,.70);
  margin:0;
  line-height:1.55;
}
.elig-step{
  display:none;
}
.elig-step.is-active{
  display:block;
}
.elig-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.elig-field{
  display:flex;
  flex-direction:column;
  gap:.45rem;
}
.elig-field.full{
  grid-column:1 / -1;
}
.elig-field label{
  font-size:.82rem;
  font-weight:700;
  color:#000;
}
.elig-field input,
.elig-field select{
  width:100%;
  min-height:50px;
  border:1px solid rgba(0,0,0,.10) !important;
  background:#FFFFFF !important;
  color:#000000 !important;
  border-radius:14px;
  padding:.82rem .9rem;
  font-family:'Poppins',sans-serif;
  font-size:.95rem;
  box-shadow:none !important;
}
.elig-field select:disabled{
  opacity:.65;
  cursor:not-allowed;
}
.bill-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.65rem;
}
.bill-option{
  min-height:46px;
  border:none;
  border-radius:14px;
  background:#f6f6f6;
  color:#000;
  font-family:'Poppins',sans-serif;
  font-weight:700;
  cursor:pointer;
  transition:.22s ease;
  box-shadow:0 8px 20px rgba(0,0,0,.06);
}
.bill-option:hover{
  transform:translateY(-2px);
  background:#FFD700;
}
.bill-option.is-selected{
  background:#FF671F;
  color:#FFFFFF;
  box-shadow:0 12px 28px rgba(255,103,31,.28);
}
.elig-next{
  width:100%;
  justify-content:center;
  margin-top:1.1rem;
}
.elig-help{
  margin:.9rem 0 0;
  font-size:.9rem;
  color:rgba(0,0,0,.68);
}
.elig-help a{
  color:#FF671F;
  font-weight:800;
  text-decoration:none;
}
.elig-error{
  color:#b00020;
  font-weight:700;
  margin:.85rem 0 0;
}
.elig-result{
  background:#FFD700;
  color:#000;
  border-radius:22px;
  padding:1.25rem;
  margin-bottom:1.15rem;
  box-shadow:0 12px 30px rgba(0,0,0,.08);
}
.elig-result span{
  display:block;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:.45rem;
}
.elig-result h3{
  margin:0;
  font-size:clamp(1.25rem,2vw,1.65rem);
  line-height:1.18;
}
.elig-result p{
  margin:.65rem 0 0;
  font-size:.82rem;
  line-height:1.45;
}
.elig-actions{
  display:flex;
  gap:.8rem;
  align-items:center;
  margin-top:1.15rem;
}
.elig-actions .btn-primary{
  flex:1;
  justify-content:center;
}
.elig-back{
  min-height:48px;
}
.elig-success{
  margin:1rem 0 0;
  background:rgba(255,215,0,.22);
  color:#000;
  padding:.85rem 1rem;
  border-radius:14px;
  font-weight:700;
}

/* Ensure primary CTA remains orange */
.btn-primary,
.cta-primary,
button[type="submit"]{
  background:#FF671F !important;
  color:#FFFFFF !important;
  border:none !important;
}
.btn-primary:hover,
.cta-primary:hover,
button[type="submit"]:hover{
  background:#000000 !important;
  color:#FFD700 !important;
}

/* Professional white section backgrounds */
.hero-section,
.beneficiary-section,
.first-map-section{
  background:#FFFFFF !important;
}

@media (max-width: 720px){
  .elig-grid,
  .bill-options{
    grid-template-columns:1fr;
  }
  .elig-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .elig-actions .btn{
    width:100%;
    justify-content:center;
  }
  .eligibility-card{
    padding:1.15rem;
    border-radius:22px;
  }
}


/* ============================================================
   URJASTROT FINAL CLIENT FIX — HEADER / MAP / FORM / WHY / AWARDS
   ============================================================ */

/* Header full yellow bar + one-line menu */
.nav,
header.nav,
.site-header,
.header,
.navbar{
  background:#FFD700 !important;
  border:none !important;
  box-shadow:0 10px 28px rgba(0,0,0,.08) !important;
  padding-top:0 !important;
}
.nav-in{
  background:#FFD700 !important;
  max-width:1360px !important;
  border-radius:0 !important;
  border:none !important;
  box-shadow:none !important;
  min-height:72px !important;
  gap:1.25rem !important;
}
.brand{
  background:#FFD700 !important;
  border-radius:0 !important;
  padding:.2rem .35rem !important;
}
.nav-links{
  display:flex !important;
  align-items:center !important;
  gap:1.35rem !important;
  flex-wrap:nowrap !important;
}
.nav-links li,
.nav-links a{
  white-space:nowrap !important;
}
.nav-links a{
  color:#000000 !important;
  font-size:.95rem !important;
  line-height:1 !important;
  padding:.68rem .85rem !important;
  border-radius:999px !important;
  font-weight:900 !important;
}
.nav-links a:hover,
.nav-links a.active{
  background:#FFFFFF !important;
  color:#000000 !important;
}
.nav-cta .btn-primary{
  white-space:nowrap !important;
  background:#FF671F !important;
  color:#FFFFFF !important;
  border:none !important;
}

/* Remove yellow/grey borders from first map + form boxes */
.first-map-section{
  border-top:none !important;
  background:#FFFFFF !important;
}
.india-stage,
.india-form-panel,
.solar-eligibility-card,
.eligibility-card,
.billcalc,
.india-statecount > div{
  border:none !important;
  outline:none !important;
  box-shadow:0 18px 45px rgba(0,0,0,.08) !important;
}
.india-stage{
  border-left:none !important;
  border-top:none !important;
  background:#FFFFFF !important;
}
.india-stage::before,
.solar-eligibility-card::before,
.eligibility-card::before,
.billcalc::before,
.india-statecount > div::before{
  display:none !important;
}
.india-stage *,
.solar-eligibility-card *,
.eligibility-card *,
.india-statecount *{
  outline:none !important;
}
.elig-field input,
.elig-field select,
.bc-field input,
.bc-field select,
.field input,
.field select{
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:none !important;
}
.elig-field input:focus,
.elig-field select:focus,
.bc-field input:focus,
.bc-field select:focus,
.field input:focus,
.field select:focus{
  border-color:#FF671F !important;
  outline:3px solid rgba(255,215,0,.35) !important;
}

/* Why Urjastrot upgraded cards */
.why-grid{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:1.25rem !important;
}
.why-card{
  background:#FFFFFF !important;
  border:none !important;
  border-radius:26px !important;
  box-shadow:0 18px 45px rgba(0,0,0,.08) !important;
  padding:1.55rem !important;
  min-height:230px !important;
}
.why-card::before{
  display:none !important;
}
.why-icon{
  width:50px !important;
  height:50px !important;
  border-radius:16px !important;
  background:#FFD700 !important;
  color:#000000 !important;
  font-size:1.25rem !important;
  font-weight:900 !important;
}
.why-card h3{
  font-size:1.08rem !important;
  color:#000000 !important;
}
.why-card p{
  color:rgba(0,0,0,.72) !important;
  font-size:.92rem !important;
}

/* Awards section: white background + auto slider */
.awards-section,
#awards,
section#awards{
  background:#FFFFFF !important;
}
.awards-section::before,
#awards::before{
  display:none !important;
}
.award-slider{
  position:relative;
  overflow:hidden;
  margin-top:2.4rem;
  padding:.25rem .1rem 1.4rem;
}
.award-track{
  display:flex;
  gap:1.25rem;
  transition:transform .55s ease;
  will-change:transform;
}
.award-slide{
  flex:0 0 calc((100% - 3.75rem) / 4);
  min-width:0;
}
.acard.award-slide,
.acard{
  background:#FFFFFF !important;
  border:none !important;
  border-radius:24px !important;
  box-shadow:0 18px 42px rgba(0,0,0,.10) !important;
}
.aimg{
  width:100% !important;
  height:230px !important;
  object-fit:cover !important;
}
.award-slide .abody{
  min-height:205px;
}
@media(max-width:1100px){
  .nav-links{gap:.55rem !important;}
  .nav-links a{font-size:.86rem !important;padding:.58rem .55rem !important;}
  .award-slide{flex-basis:calc((100% - 1.25rem) / 2);}
  .why-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:980px){
  .nav-links{display:none !important;}
  .nav-in{border-radius:0 !important;}
}
@media(max-width:640px){
  .award-slide{flex-basis:100%;}
  .aimg{height:260px !important;}
  .why-grid{grid-template-columns:1fr !important;}
}


/* ============================================================
   FINAL USER FIX — Header full yellow, contact cleanup, awards image fit
   ============================================================ */

/* Full yellow header from edge to edge */
.nav,
header.nav,
.site-header,
header{
  background:#FFD700 !important;
  border:none !important;
  border-bottom:0 !important;
  box-shadow:0 8px 22px rgba(0,0,0,.08) !important;
}
.nav::before,
.nav::after,
header::before,
header::after{
  display:none !important;
}
.nav-in{
  background:#FFD700 !important;
  border:none !important;
  box-shadow:none !important;
  max-width:100% !important;
  border-radius:0 !important;
  padding-left:clamp(1rem,4vw,4rem) !important;
  padding-right:clamp(1rem,4vw,4rem) !important;
}
.nav .brand,
.nav .brand img{
  background:transparent !important;
}
.nav-links{
  align-items:center !important;
  flex-wrap:nowrap !important;
}
.nav-links a{
  white-space:nowrap !important;
  color:#000000 !important;
}
.nav-links a:hover,
.nav-links a.active{
  background:#FFFFFF !important;
  color:#000000 !important;
}
.nav-cta .btn-primary{
  background:#FF671F !important;
  color:#FFFFFF !important;
  border:none !important;
}

/* Awards background white */
#awards,
.awards-section,
.section-awards,
.recognition-section{
  background:#FFFFFF !important;
}

/* Award images: keep faces visible; crop from bottom if needed */
.aimg,
.award-card img,
.awards-card img,
.acard img,
.award-slide img{
  width:100% !important;
  height:260px !important;
  object-fit:cover !important;
  object-position:top center !important;
  border-radius:22px 22px 0 0 !important;
  background:#FFFFFF !important;
}
.acard,
.award-card,
.awards-card{
  overflow:hidden !important;
}

/* Contact tiles clean styling after address removal */
.ctile{
  background:#FFFFFF !important;
  border:none !important;
  box-shadow:0 14px 35px rgba(0,0,0,.08) !important;
}
.ctile .cl{
  color:rgba(0,0,0,.62) !important;
}
.ctile .cv{
  color:#000000 !important;
  font-weight:800 !important;
}


/* =====================================================
   SOLAR ELIGIBILITY FORM - RESTRUCTURED SUGGESTION FLOW
   Step 1: light bill + state + district
   Step 2: solar capacity + subsidy suggestion + contact details
   ===================================================== */
.eligibility-card .eligibility-top h3,
.solar-eligibility-card .eligibility-top h3{
  max-width: 580px;
}
.eligibility-card .elig-result{
  background:#FFFFFF !important;
  border:0 !important;
  border-left:8px solid #FFD700 !important;
  box-shadow:0 18px 42px rgba(0,0,0,.09) !important;
}
.eligibility-card .elig-result span{
  color:#FF671F !important;
}
.eligibility-card .elig-result h3{
  color:#000000 !important;
  font-weight:900 !important;
}
.eligibility-card .elig-result h3 strong{
  color:#FF671F !important;
}
.elig-result-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem;
  margin:1rem 0 .85rem;
}
.elig-result-grid div{
  background:#FFD700;
  color:#000;
  border-radius:16px;
  padding:.9rem;
  box-shadow:0 10px 25px rgba(0,0,0,.07);
}
.elig-result-grid b{
  display:block;
  font-size:1.35rem;
  line-height:1;
  font-weight:900;
}
.elig-result-grid small{
  display:block;
  margin-top:.35rem;
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  opacity:.72;
}
.bill-option{
  white-space:nowrap;
}
@media(max-width:560px){
  .elig-result-grid{grid-template-columns:1fr;}
}


/* =====================================================
   STATE-WISE SUBSIDY MAPPING RESULT GRID
   ===================================================== */
.subsidy-result-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.subsidy-result-grid div{
  min-height:88px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.subsidy-result-grid b{
  font-size:clamp(.95rem,1.2vw,1.35rem) !important;
  overflow-wrap:anywhere;
}
.subsidy-result-grid small{
  line-height:1.25;
}
@media(max-width:900px){
  .subsidy-result-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:560px){
  .subsidy-result-grid{grid-template-columns:1fr !important;}
}


/* Eligibility step-2 cleanup: hide step-1 heading/subtitle after result opens */
.eligibility-card.is-step-2 .eligibility-top{
  display:none !important;
}

.eligibility-card.is-step-2{
  padding-top:0 !important;
}

.elig-result h3{
  line-height:1.08;
}

.elig-result-grid > div{
  min-height:112px;
  overflow:hidden;
}

.elig-result-grid b{
  word-break:break-word;
  line-height:1.02;
}

.elig-result-grid small{
  line-height:1.05;
}

/* State subsidy labels should stay readable even when they are long */
.elig-result-grid [data-suggest-state]{
  font-size:clamp(1rem, 1.8vw, 1.35rem);
}

/* Final simplified subsidy result - remove 4 small boxes and keep one clean result statement */
.elig-result-simple{
  padding: 30px !important;
  border-left: 8px solid #FFD700 !important;
  border-radius: 28px !important;
  background: #FFFFFF !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.08) !important;
}
.elig-result-simple h3{
  margin-bottom: 0 !important;
  line-height: 1.08 !important;
}
.elig-result-simple strong{
  color:#FF671F !important;
}


/* HEADER OVERLAP FIX */
.site-header,
.header,
.navbar,
header{
  background:#FFD700 !important;
  border:none !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-shadow:0 6px 18px rgba(0,0,0,.08) !important;
}
.header-inner,
.header-container,
.nav-container,
.nav-wrap{
  background:#FFD700 !important;
  border-radius:0 0 28px 28px !important;
  overflow:hidden !important;
}
body{
  padding-top:90px !important;
}
.phero,.page-hero,main{
  padding-top:40px;
}


/* =====================================================
   URJASTROT HEADER FULL-WIDTH YELLOW FIX
   Removes side blank space and keeps complete header band yellow
   ===================================================== */

html,
body{
  margin:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  overflow-x:hidden !important;
}

/* Full yellow band across screen */
.site-header,
.header,
.navbar,
header{
  width:100vw !important;
  max-width:100vw !important;
  left:0 !important;
  right:0 !important;
  margin:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  background:#FFD700 !important;
  border:none !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-shadow:0 6px 18px rgba(0,0,0,.08) !important;
}

/* Inner navigation should not create white side gaps */
.header-inner,
.header-container,
.nav-container,
.nav-wrap,
.navbar-inner,
.site-header .container,
header .container{
  width:100% !important;
  max-width:100% !important;
  margin:0 auto !important;
  background:#FFD700 !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding-left:34px !important;
  padding-right:34px !important;
  box-sizing:border-box !important;
}

/* Keep menu in one line */
.nav-menu,
.nav-links,
.site-nav,
nav ul{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
}

/* Active menu remains readable */
.nav-link.active,
.navbar a.active,
.site-nav a.active,
nav a.active{
  background:#FFFFFF !important;
  color:#000000 !important;
  border-radius:999px !important;
}

/* Mobile safety */
@media (max-width: 900px){
  .header-inner,
  .header-container,
  .nav-container,
  .nav-wrap,
  .navbar-inner,
  .site-header .container,
  header .container{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .site-header,
  .header,
  .navbar,
  header{
    width:100% !important;
    max-width:100% !important;
  }
}


/* =====================================================
   FINAL HEADER NO-BLANK-SPACE FIX
   Force complete top band and side areas to Urjastrot Yellow
   ===================================================== */

html,
body{
  margin:0 !important;
  padding:0 !important;
  background:#FFFFFF !important;
  overflow-x:hidden !important;
}

/* Create a yellow top band behind the header so no white/blank side can show */
body::before{
  content:"" !important;
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100vw !important;
  height:76px !important;
  background:#FFD700 !important;
  z-index:9990 !important;
  pointer-events:none !important;
}

/* Header must sit above yellow band */
.site-header,
.header,
.navbar,
header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100vw !important;
  max-width:100vw !important;
  margin:0 !important;
  padding:0 !important;
  background:#FFD700 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:0 6px 18px rgba(0,0,0,.08) !important;
  z-index:10000 !important;
  overflow:visible !important;
}

/* Kill any white max-width wrapper effect inside header */
.site-header > *,
.header > *,
.navbar > *,
header > *,
.header-inner,
.header-container,
.nav-container,
.nav-wrap,
.navbar-inner,
.site-header .container,
header .container,
.container.nav-container{
  background:#FFD700 !important;
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  box-sizing:border-box !important;
}

/* Keep inner spacing only through padding, not margins */
.header-inner,
.header-container,
.nav-container,
.nav-wrap,
.navbar-inner,
.site-header .container,
header .container,
.container.nav-container{
  padding-left:36px !important;
  padding-right:36px !important;
}

/* Main content starts below fixed header */
main,
.page-main,
.site-main,
.landing-main,
body > section:first-of-type{
  margin-top:76px !important;
}

/* Nav alignment */
nav,
.nav-menu,
.nav-links,
.site-nav,
nav ul{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
}

nav a,
.nav-link,
.navbar a{
  white-space:nowrap !important;
}

/* Active item */
.nav-link.active,
.navbar a.active,
.site-nav a.active,
nav a.active{
  background:#FFFFFF !important;
  color:#000000 !important;
  border-radius:999px !important;
}

/* Remove accidental top/side page borders */
body,
.site,
.page,
.wrapper,
#page,
#app{
  border-left:0 !important;
  border-right:0 !important;
  outline:0 !important;
}

@media (max-width:900px){
  body::before{height:72px !important;}
  .site-header,.header,.navbar,header{min-height:72px !important;}
  .header-inner,
  .header-container,
  .nav-container,
  .nav-wrap,
  .navbar-inner,
  .site-header .container,
  header .container,
  .container.nav-container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  main,
  .page-main,
  .site-main,
  .landing-main,
  body > section:first-of-type{
    margin-top:72px !important;
  }
}


/* =====================================================
   URJASTROT DEFINITIVE TOP YELLOW STRAP FIX
   This overrides old body::before display:none and covers header side blank spaces.
   ===================================================== */

html,
body{
  margin:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  overflow-x:hidden !important;
}

/* Force yellow layer behind the full header area */
body::before{
  content:"" !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100vw !important;
  height:82px !important;
  background:#FFD700 !important;
  z-index:9998 !important;
  pointer-events:none !important;
}

/* Full-width header */
.site-header,
.header,
.navbar,
header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100vw !important;
  max-width:100vw !important;
  min-height:82px !important;
  margin:0 !important;
  padding:0 !important;
  background:#FFD700 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:0 6px 18px rgba(0,0,0,.08) !important;
  z-index:10000 !important;
  overflow:visible !important;
}

/* Remove white boxed wrapper inside header */
.site-header > *,
.header > *,
.navbar > *,
header > *,
.header-inner,
.header-container,
.nav-container,
.nav-wrap,
.navbar-inner,
.site-header .container,
header .container,
.container.nav-container{
  background:#FFD700 !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  box-sizing:border-box !important;
}

/* keep content aligned with spacing */
.header-inner,
.header-container,
.nav-container,
.nav-wrap,
.navbar-inner,
.site-header .container,
header .container,
.container.nav-container{
  padding-left:34px !important;
  padding-right:34px !important;
}

/* reserve exact header height so content does not overlap */
body{
  padding-top:82px !important;
}

main,
.page-main,
.site-main,
.landing-main,
body > section:first-of-type{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Menu single line */
nav,
.nav-menu,
.nav-links,
.site-nav,
nav ul{
  display:flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
}

nav a,
.nav-link,
.navbar a{
  white-space:nowrap !important;
}

.nav-link.active,
.navbar a.active,
.site-nav a.active,
nav a.active{
  background:#FFFFFF !important;
  color:#000000 !important;
  border-radius:999px !important;
}

@media (max-width:900px){
  body::before{height:74px !important;}
  .site-header,.header,.navbar,header{min-height:74px !important;}
  body{padding-top:74px !important;}
  .header-inner,
  .header-container,
  .nav-container,
  .nav-wrap,
  .navbar-inner,
  .site-header .container,
  header .container,
  .container.nav-container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
}


/* =====================================================
   URJASTROT HEADER HEIGHT + MOBILE MENU FINAL FIX
   - Compact yellow header
   - Mobile hamburger visible
   - Mobile menu opens above header/yellow band
   ===================================================== */

/* Compact fixed header */
body::before{
  display:block !important;
  height:58px !important;
  background:#FFD700 !important;
  z-index:9990 !important;
}

.nav,
.site-header,
.header,
.navbar,
header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  max-width:100% !important;
  min-height:58px !important;
  height:58px !important;
  padding:0 !important;
  margin:0 !important;
  background:#FFD700 !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:0 4px 14px rgba(0,0,0,.08) !important;
  z-index:10000 !important;
  overflow:visible !important;
}

/* Inner nav compact */
.nav-in,
.header-inner,
.header-container,
.nav-container,
.nav-wrap,
.navbar-inner,
.site-header .container,
header .container,
.container.nav-container{
  height:58px !important;
  min-height:58px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 32px !important;
  background:#FFD700 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  box-sizing:border-box !important;
}

.brand{
  background:transparent !important;
  padding:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  flex:0 0 auto !important;
}
.brand img{
  height:36px !important;
  max-height:36px !important;
  width:auto !important;
  object-fit:contain !important;
}

/* Desktop menu alignment */
.nav-links{
  display:flex !important;
  align-items:center !important;
  gap:4px !important;
  list-style:none !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
}
.nav-links a{
  color:#000000 !important;
  font-size:13px !important;
  line-height:1 !important;
  padding:10px 10px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
  font-weight:700 !important;
}
.nav-links a:hover,
.nav-links a.active{
  background:#FFFFFF !important;
  color:#000000 !important;
}

/* Compact CTA */
.nav-cta{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex:0 0 auto !important;
}
.nav-cta .btn,
.nav-cta .btn-sm{
  padding:9px 12px !important;
  font-size:12px !important;
  line-height:1 !important;
  border-radius:999px !important;
}

/* Content spacing below compact fixed header */
main,
.page-main,
.site-main,
.landing-main,
body > section:first-of-type{
  margin-top:58px !important;
}

/* Mobile header + menu */
@media (max-width: 1024px){
  body::before{
    height:56px !important;
  }

  .nav,
  .site-header,
  .header,
  .navbar,
  header{
    height:56px !important;
    min-height:56px !important;
  }

  .nav-in,
  .header-inner,
  .header-container,
  .nav-container,
  .nav-wrap,
  .navbar-inner,
  .site-header .container,
  header .container,
  .container.nav-container{
    height:56px !important;
    min-height:56px !important;
    padding:0 16px !important;
  }

  .brand img{
    height:32px !important;
    max-height:32px !important;
  }

  .nav-links{
    display:none !important;
  }

  .nav-cta .btn{
    display:none !important;
  }

  .nav-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    border:2px solid #000000 !important;
    border-radius:12px !important;
    background:#FFD700 !important;
    color:#000000 !important;
    cursor:pointer !important;
    position:relative !important;
    z-index:10060 !important;
  }

  .nav-toggle span,
  .nav-toggle span::before,
  .nav-toggle span::after{
    background:#000000 !important;
  }

  .nav-toggle.open span{
    background:transparent !important;
  }

  .mobile-menu{
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100vh !important;
    z-index:10050 !important;
    background:#FFFFFF !important;
    transform:translateY(-110%) !important;
    transition:transform .32s ease !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    padding:84px 24px 28px !important;
    overflow-y:auto !important;
    border-left:0 !important;
    box-shadow:none !important;
  }

  .mobile-menu.open{
    transform:translateY(0) !important;
  }

  .mobile-menu a{
    color:#000000 !important;
    font-size:22px !important;
    font-weight:800 !important;
    text-decoration:none !important;
    padding:16px 0 !important;
    border-bottom:1px solid rgba(0,0,0,.12) !important;
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
  }

  .mobile-menu a span{
    color:#FF671F !important;
    font-size:13px !important;
    font-weight:900 !important;
  }

  main,
  .page-main,
  .site-main,
  .landing-main,
  body > section:first-of-type{
    margin-top:56px !important;
  }
}

@media (max-width: 520px){
  .brand img{
    height:30px !important;
    max-width:185px !important;
  }
  .mobile-menu a{
    font-size:20px !important;
  }
}


/* =====================================================
   MAP SECTION CLEANUP + POPUP SUBSIDY BADGE
   ===================================================== */

/* Remove visual empty space left after heading removal */
#india-map,
.india-section,
.map-section,
.network-section,
.hero-map,
.beneficiary-map-section{
  margin-top:0 !important;
  padding-top:28px !important;
}

/* If kicker/removed title container remains empty, hide it */
.kicker:empty,
.section-kicker:empty,
.eyebrow:empty,
.map-kicker:empty,
.sec-kicker:empty{
  display:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Map section headings spacing */
#india-map .section-head,
.india-section .section-head,
.map-section .section-head{
  margin-bottom:22px !important;
}

/* Popup subsidy line style */
.in-popup .pcta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:10px !important;
  padding:9px 13px !important;
  border-radius:999px !important;
  background:#FFD700 !important;
  color:#000000 !important;
  font-weight:800 !important;
  text-decoration:none !important;
  pointer-events:none !important;
  cursor:default !important;
  box-shadow:0 8px 18px rgba(255,215,0,.35) !important;
}

/* Cleaner popup spacing */
.in-popup .pcap{
  gap:5px !important;
}


/* =====================================================
   URJASTROT MAP POPUP 3:4 IMAGE FIX
   All popup images are now 225x300 / 3:4 portrait.
   This prevents face/site cropping.
   ===================================================== */

.in-popup{
  width:320px !important;
  max-width:92vw !important;
}

.in-popup img{
  width:100% !important;
  height:380px !important;
  aspect-ratio:3 / 4 !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#FFFFFF !important;
  padding:8px !important;
  border-radius:18px 18px 0 0 !important;
  box-sizing:border-box !important;
}

.in-popup .pcap{
  padding:14px !important;
}

.in-popup .pcta{
  background:#FFD700 !important;
  color:#000000 !important;
  font-weight:800 !important;
  pointer-events:none !important;
  cursor:default !important;
}

@media (max-width:700px){
  .in-popup{
    width:250px !important;
  }
  .in-popup img{
    height:300px !important;
  }
}


/* =====================================================
   MOBILE POPUP OPTIMIZATION
   Desktop keeps existing 320x380 popup.
   Mobile popup reduced so India map remains visible.
   ===================================================== */

@media (max-width:700px){

  .in-popup{
      width:160px !important;
      max-width:160px !important;
  }

  .in-popup img{
      height:150px !important;
      width:100% !important;
      object-fit:contain !important;
  }

  .in-popup .pcap{
      padding:8px !important;
  }

  .in-popup .pst-name{
      font-size:11px !important;
  }

  .in-popup .ptitle{
      font-size:10px !important;
      line-height:1.2 !important;
  }

  .in-popup .psub{
      font-size:9px !important;
      line-height:1.2 !important;
  }

  .in-popup .pcta{
      font-size:9px !important;
      padding:5px 8px !important;
  }
}


/* =====================================================
   URJASTROT CARE APP BUTTONS FINAL
   Smooth, Fast, Easy, Transparent & Disciplined journey
   ===================================================== */

.appstore-btns,
.store-row{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}

.store-btn{
  min-width:190px !important;
  justify-content:center !important;
  text-decoration:none !important;
}

.care-actions,
.bc-actions,
.app-download-buttons{
  display:flex !important;
  gap:12px !important;
  flex-wrap:wrap !important;
  align-items:center !important;
}

@media(max-width:700px){
  .appstore-btns,
  .store-row,
  .care-actions,
  .bc-actions,
  .app-download-buttons{
    justify-content:center !important;
  }

  .store-btn{
    min-width:170px !important;
  }
}





/* =====================================================
   URJASTROT PRECISE HEADER LOGO FIX
   Use original logo only in header/footer with controlled size.
   ===================================================== */

.nav .brand img,
header .brand img,
.site-header .brand img{
  height:42px !important;
  width:auto !important;
  max-width:210px !important;
  object-fit:contain !important;
  display:block !important;
}

.footer-brand img{
  height:auto !important;
  width:190px !important;
  max-width:100% !important;
  object-fit:contain !important;
}

/* Prevent any logo image from becoming page hero/banner size */
img[src*="logo.png"],
img[src*="urjastrot-logo.png"]{
  max-width:220px;
  height:auto;
}

.nav img[src*="logo.png"],
.nav img[src*="urjastrot-logo.png"]{
  max-width:210px !important;
  height:42px !important;
}

@media(max-width:700px){
  .nav .brand img,
  header .brand img,
  .site-header .brand img{
    height:32px !important;
    max-width:160px !important;
  }
}


/* Footer logo visibility on black background */
.footer-brand img{
    background:#FFFFFF !important;
    padding:12px 16px !important;
    border-radius:14px !important;
    display:inline-block !important;
    box-shadow:0 4px 12px rgba(0,0,0,.15) !important;
}


/* =====================================================
   ABOUT PAGE VIDEO BACKGROUND
   Existing content remains; video is only background.
   Note: browsers may block autoplay with sound until user interaction.
   ===================================================== */

.about-video-hero{
  position:relative !important;
  overflow:hidden !important;
  min-height:720px !important;
  isolation:isolate !important;
}

.about-video-hero .about-bg-video{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  z-index:-2 !important;
}

.about-video-hero .about-bg-overlay{
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(90deg, rgba(255,255,255,.94) 0%, rgba(255,255,255,.82) 42%, rgba(255,215,0,.18) 100%) !important;
  z-index:-1 !important;
  pointer-events:none !important;
}

.about-video-hero > *:not(.about-bg-video):not(.about-bg-overlay){
  position:relative !important;
  z-index:1 !important;
}

/* Keep text readable */
.about-video-hero h1,
.about-video-hero h2,
.about-video-hero h3,
.about-video-hero p,
.about-video-hero .lead{
  text-shadow:0 1px 2px rgba(255,255,255,.35) !important;
}

/* On mobile keep video background but reduce hero height */
@media(max-width:700px){
  .about-video-hero{
    min-height:620px !important;
  }

  .about-video-hero .about-bg-overlay{
    background:rgba(255,255,255,.88) !important;
  }
}

/* About video audio toggle */
.about-audio-toggle{
  position:absolute;
  right:28px;
  bottom:28px;
  z-index:3;
  border:0;
  border-radius:999px;
  padding:12px 18px;
  background:#FFD700;
  color:#000;
  font-family:'Poppins',sans-serif;
  font-weight:800;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  cursor:pointer;
}
.about-audio-toggle.is-enabled{
  background:#FF671F;
  color:#fff;
}
@media(max-width:700px){
  .about-audio-toggle{
    right:16px;
    bottom:16px;
    padding:10px 14px;
    font-size:12px;
  }
}


.about-visual{
    position:relative;
    overflow:hidden;
    border-radius:24px;
    min-height:520px;
}

.about-team-image{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    object-position:center;
    transform:scaleX(-1);
    display:block;
    border-radius:24px;
}

.about-visual::after{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.08);
}

@media(max-width:768px){
    .about-visual,
    .about-team-image{
        min-height:320px;
    }
}


/* Services page right-side team image */
.services-visual-card{
    position:relative;
    min-height:520px;
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 24px 55px rgba(0,0,0,.12);
    background:#FFD700;
}

.services-side-image{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    object-position:center;
    display:block;
}

.services-visual-card::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.38));
    pointer-events:none;
}

.services-visual-overlay{
    position:absolute;
    left:22px;
    right:22px;
    bottom:22px;
    z-index:2;
    display:grid;
    gap:10px;
}

.services-visual-overlay div{
    background:rgba(255,255,255,.92);
    border-radius:16px;
    padding:13px 16px;
    box-shadow:0 10px 24px rgba(0,0,0,.10);
}

.services-visual-overlay b{
    display:block;
    font-family:var(--font-display);
    font-size:1.05rem;
    color:#000;
    margin-bottom:3px;
}

.services-visual-overlay p{
    margin:0;
    color:#444;
    font-size:.92rem;
}

@media(max-width:900px){
    .services-visual-card,
    .services-side-image{
        min-height:380px;
    }
}

@media(max-width:700px){
    .services-visual-card,
    .services-side-image{
        min-height:320px;
    }
    .services-visual-overlay{
        position:relative;
        left:auto;
        right:auto;
        bottom:auto;
        padding:14px;
        background:#FFD700;
    }
}


/* =====================================================
   SERVICES HERO IMAGE BACKGROUND
   Uses same overlay style as About video background.
   Image is mirrored left-to-right.
   ===================================================== */

.service-hero-image-bg{
    position:relative !important;
    overflow:hidden !important;
    isolation:isolate !important;
    min-height:620px !important;
    display:flex !important;
    align-items:center !important;
}

.service-hero-image-bg .service-bg-image{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
    transform:scaleX(-1) !important;
    z-index:-2 !important;
}

.service-hero-image-bg .service-bg-overlay{
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 44%, rgba(255,215,0,.18) 100%) !important;
    z-index:-1 !important;
    pointer-events:none !important;
}

.service-hero-image-bg > *:not(.service-bg-image):not(.service-bg-overlay){
    position:relative !important;
    z-index:1 !important;
}

.service-hero-image-bg .wrap{
    position:relative !important;
    z-index:2 !important;
}

.service-hero-image-bg h1,
.service-hero-image-bg p,
.service-hero-image-bg .lead{
    text-shadow:0 1px 2px rgba(255,255,255,.35) !important;
}

@media(max-width:768px){
    .service-hero-image-bg{
        min-height:560px !important;
    }

    .service-hero-image-bg .service-bg-overlay{
        background:rgba(255,255,255,.88) !important;
    }
}


/* Remove duplicate services lower image card; keep only top hero background image */
.services-visual-card,
.services-side-image,
.services-visual-overlay{
    display:none !important;
}


/* =====================================================
   ELIGIBILITY FLOW + MAP SECTION RATIO UPDATE
   Desktop target: 1920x1080 visual ratio
   Mobile target: 1080x2400 vertical experience
   ===================================================== */

.elig-step{
  display:none;
}

.elig-step.is-active{
  display:block;
}

.elig-step-0{
  text-align:center;
  padding:18px 0 10px;
}

.elig-start{
  width:100%;
  justify-content:center;
  min-height:58px;
  font-size:1.05rem;
}

/* Map / India section desktop ratio */
#india,
.india-section,
.beneficiary-section,
.map-section,
#india-stage{
  box-sizing:border-box;
}

#india,
.india-section,
.beneficiary-section,
.map-section{
  min-height:100vh !important;
  aspect-ratio:16 / 9;
  display:flex;
  align-items:center;
}

/* Keep map + form visible inside 1920x1080 style screen */
#india .wrap,
.india-section .wrap,
.beneficiary-section .wrap,
.map-section .wrap{
  width:100%;
}

/* India stage should not collapse */
#india-stage,
.india-stage{
  min-height:620px !important;
}

/* Mobile: full vertical 1080x2400 style */
@media(max-width:768px){
  #india,
  .india-section,
  .beneficiary-section,
  .map-section{
    min-height:100svh !important;
    aspect-ratio:9 / 20;
    padding-top:80px !important;
    padding-bottom:40px !important;
    align-items:flex-start !important;
  }

  #india .wrap,
  .india-section .wrap,
  .beneficiary-section .wrap,
  .map-section .wrap{
    min-height:calc(100svh - 120px);
  }

  #india-stage,
  .india-stage{
    min-height:420px !important;
  }

  .eligibility-card{
    width:100% !important;
  }
}


/* Eligibility card first screen clean fix */
.eligibility-card .eligibility-top-static{
  display:none !important;
}

.elig-step-title{
  margin-bottom:18px !important;
}

.elig-step-title .eligibility-label{
  display:inline-flex !important;
  align-items:center !important;
  margin-bottom:14px !important;
  padding:9px 16px !important;
  border-radius:999px !important;
  background:#FFD700 !important;
  color:#000 !important;
  font-size:.72rem !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
}

.elig-step-title h3{
  margin:0 0 10px !important;
  font-family:var(--font-display) !important;
  font-size:clamp(1.45rem,2.4vw,2rem) !important;
  line-height:1.05 !important;
  color:#000 !important;
}

.elig-step-title p{
  margin:0 !important;
  color:var(--ink-soft) !important;
  font-size:.98rem !important;
  line-height:1.45 !important;
}

.elig-step-0.is-active{
  min-height:220px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:28px 0 !important;
}

.elig-step-0 .elig-start{
  max-width:100% !important;
}


/* Final eligibility step visibility fix */
.solar-eligibility-form .elig-step{
  display:none !important;
}
.solar-eligibility-form .elig-step.is-active{
  display:block !important;
}
.solar-eligibility-form .elig-step-0.is-active{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  min-height:220px !important;
}
.eligibility-intro{
  max-width:360px !important;
  margin:0 auto !important;
  text-align:center !important;
  color:#444 !important;
  font-weight:700 !important;
  line-height:1.45 !important;
}


/* =====================================================
   MOBILE ELIGIBILITY STEP VISIBILITY FIX
   ===================================================== */

.solar-eligibility-form .elig-step{
  display:none !important;
}

.solar-eligibility-form .elig-step.is-active{
  display:block !important;
}

.solar-eligibility-form .elig-step-0.is-active{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  min-height:220px !important;
}

@media(max-width:768px){
  .solar-eligibility-card{
    overflow:visible !important;
    min-height:auto !important;
  }

  .solar-eligibility-form{
    overflow:visible !important;
  }

  .solar-eligibility-form .elig-step.is-active{
    display:block !important;
    width:100% !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  .solar-eligibility-form .elig-step-1.is-active,
  .solar-eligibility-form .elig-step-2.is-active{
    min-height:auto !important;
    padding-top:6px !important;
  }

  .bill-options{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  .bill-option{
    width:100% !important;
    min-height:52px !important;
    font-size:.92rem !important;
  }

  .elig-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .elig-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .elig-start{
    background:#FF671F !important;
    color:#FFFFFF !important;
  }
}


/* =====================================================
   FINAL MOBILE MAP + FORM LAYOUT FIX
   Keeps map visible but ensures eligibility form does not disappear.
   ===================================================== */

@media(max-width:768px){

  /* India section should flow naturally on mobile */
  #india,
  .india-section,
  .beneficiary-section,
  .map-section{
    min-height:auto !important;
    aspect-ratio:auto !important;
    padding-top:56px !important;
    padding-bottom:32px !important;
    display:block !important;
    overflow:visible !important;
  }

  #india .wrap,
  .india-section .wrap,
  .beneficiary-section .wrap,
  .map-section .wrap{
    min-height:auto !important;
    display:block !important;
    overflow:visible !important;
  }

  .india-wrap{
    display:flex !important;
    flex-direction:column !important;
    gap:16px !important;
    overflow:visible !important;
  }

  .india-stage,
  #india-stage{
    order:1 !important;
    min-height:390px !important;
    height:390px !important;
    overflow:hidden !important;
    border-radius:28px !important;
  }

  .india-side,
  .india-form-panel{
    order:2 !important;
    width:100% !important;
    display:block !important;
    position:relative !important;
    overflow:visible !important;
  }

  .india-statecount{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    margin-bottom:14px !important;
  }

  .india-statecount > div{
    min-height:90px !important;
    padding:14px 8px !important;
    border-radius:24px !important;
  }

  .india-statecount .num{
    font-size:2rem !important;
    line-height:1 !important;
  }

  .india-statecount .lbl{
    font-size:.62rem !important;
    line-height:1.1 !important;
    letter-spacing:.06em !important;
  }

  .solar-eligibility-card,
  .eligibility-card{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    position:relative !important;
    width:100% !important;
    margin:0 !important;
    padding:18px !important;
    border-radius:28px !important;
    overflow:visible !important;
    min-height:auto !important;
  }

  .elig-step-0.is-active{
    min-height:160px !important;
    padding:18px 0 !important;
  }

  .eligibility-intro{
    font-size:.98rem !important;
    line-height:1.45 !important;
    max-width:300px !important;
  }

  .elig-start{
    width:100% !important;
    min-height:54px !important;
    background:#FF671F !important;
    color:#FFFFFF !important;
    border-radius:16px !important;
  }

  /* Map popup smaller so it does not dominate mobile */
  .in-popup{
    width:145px !important;
    max-width:145px !important;
  }

  .in-popup img{
    height:132px !important;
    padding:4px !important;
  }

  .in-popup .pcap{
    padding:7px !important;
  }

  .in-popup .pst-name{
    font-size:10px !important;
  }

  .in-popup .ptitle,
  .in-popup .psub{
    font-size:8px !important;
    line-height:1.15 !important;
  }

  .in-popup .pcta{
    font-size:8px !important;
    padding:5px 7px !important;
    white-space:normal !important;
    line-height:1.15 !important;
  }

  /* Prevent next section from coming before form */
  .why-section,
  #why{
    margin-top:28px !important;
  }
}


/* =====================================================
   FINAL FORCE CSS: Eligibility mobile visibility
   ===================================================== */
.solar-eligibility-form [data-step]{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
}

.solar-eligibility-form [data-step].is-active{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
}

.solar-eligibility-form [data-step="0"].is-active{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}

@media(max-width:768px){
  .solar-eligibility-card,
  .eligibility-card,
  .india-form-panel{
    overflow:visible !important;
    height:auto !important;
    max-height:none !important;
  }

  .solar-eligibility-form [data-step].is-active{
    position:relative !important;
    z-index:5 !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }

  .solar-eligibility-form [data-step="1"].is-active{
    display:block !important;
    min-height:620px !important;
  }

  .solar-eligibility-form [data-step="2"].is-active{
    display:block !important;
    min-height:520px !important;
  }
}


/* =====================================================
   FINAL MOBILE HEADER GAP + ELIGIBILITY VISIBILITY FIX
   Purpose:
   1) Reduce blank gap after header.
   2) Show eligibility CTA before map on mobile.
   3) Keep form steps working after click.
   ===================================================== */

@media (max-width: 768px){

  /* Reduce top blank space after header */
  main,
  .site-main,
  .page-main,
  .landing-main{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  section:first-of-type,
  .hero,
  .hero-section,
  .landing-hero,
  .home-hero,
  #india,
  .india-section,
  .beneficiary-section,
  .map-section{
    padding-top: 28px !important;
  }

  /* Heading area tighter */
  #india .sec-head,
  .india-section .sec-head,
  .beneficiary-section .sec-head,
  .map-section .sec-head{
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    padding-top: 0 !important;
  }

  #india .sec-head h2,
  .india-section .sec-head h2,
  .beneficiary-section .sec-head h2,
  .map-section .sec-head h2,
  .h-sec{
    margin-top: 0 !important;
  }

  /* Mobile order: stats + eligibility first, map after */
  .india-wrap{
    display:flex !important;
    flex-direction:column !important;
    gap:16px !important;
  }

  .india-side,
  .india-form-panel{
    order:1 !important;
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    overflow:visible !important;
  }

  .india-statecount{
    order:1 !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    margin-bottom:14px !important;
  }

  .solar-eligibility-card,
  .eligibility-card{
    order:2 !important;
    display:block !important;
    width:100% !important;
    visibility:visible !important;
    opacity:1 !important;
    height:auto !important;
    min-height:auto !important;
    margin:0 !important;
    padding:18px !important;
    overflow:visible !important;
  }

  .india-stage,
  #india-stage{
    order:2 !important;
    width:100% !important;
    height:390px !important;
    min-height:390px !important;
    margin-top:6px !important;
    overflow:hidden !important;
    border-radius:28px !important;
  }

  /* First screen of form */
  .solar-eligibility-form [data-step]{
    display:none !important;
    opacity:0 !important;
    visibility:hidden !important;
  }

  .solar-eligibility-form [data-step].is-active{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
  }

  .solar-eligibility-form [data-step="0"].is-active{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:16px !important;
    min-height:160px !important;
  }

  .eligibility-intro{
    margin:0 auto !important;
    max-width:310px !important;
    text-align:center !important;
    font-size:.98rem !important;
    line-height:1.45 !important;
    font-weight:600 !important;
    color:#333 !important;
  }

  .elig-start,
  [data-start-eligibility]{
    width:100% !important;
    min-height:54px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#FF671F !important;
    color:#fff !important;
    border-radius:16px !important;
    font-weight:800 !important;
  }

  /* Step 1/2 mobile form readability */
  .bill-options{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  .elig-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .elig-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
}

/* Desktop remains normal */

/* Mobile map first final override */


@media(max-width:768px){
  .india-wrap{
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
  }
  .india-stage,
  #india-stage{
    order:1!important;
    height:390px!important;
    min-height:390px!important;
    max-height:390px!important;
    margin-top:0!important;
    overflow:hidden!important;
  }
  .india-side,
  .india-form-panel{
    order:2!important;
    display:block!important;
    width:100%!important;
    overflow:visible!important;
  }
  .india-statecount{
    order:1!important;
    margin-top:0!important;
    margin-bottom:12px!important;
  }
  .solar-eligibility-card,
  .eligibility-card{
    order:2!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
}

