﻿/* =====================================================================
   Synchronous Power - NEW DESIGN (theme.css)
   Loaded AFTER style.css, so it re-skins the whole site without touching content.
   Look: clean white, indigo + sky blue, Plus Jakarta Sans / DM Sans, pill buttons, big rounded cards.
   To change the colours edit the :root variables below.
   (Dark mode is switched off on purpose: this design is light only.)
   ===================================================================== */
:root{--ink:#0b2e36;--mute:#557981;--bg:#ffffff;--card:#ffffff;--line:#e1eff2;--alt:#f5fbfc;--hd:#0b2e36;
  --navy:#0b4b5a;--indigo:#63c42e;--night:#062931;--blue:#19b8db;--sky:#eef9fb;--sky2:#daf1f7;
  --leaf:#63c42e;--lime:#73d346;--sun:#70d13d;--gold:#73d346;--hbg:rgba(255,255,255,.97);--hh:78px;
  --sh:0 6px 24px rgba(6,41,49,.07);--sh2:0 18px 48px rgba(6,41,49,.14);
  --fh:INR,"Plus Jakarta Sans",'Noto Sans Devanagari',system-ui,sans-serif;--fb:INR,'Inter','Noto Sans Devanagari',system-ui,sans-serif;color-scheme:light dark}
body{font:400 16.5px/1.65 var(--fb);color:var(--ink);background:#ffffff}
h1,h2,h3,h4,.brand,.btn,.card h3,.faq summary,.val,.out dd,.job b,.tag,.lang,.drawer a.l,.exp-n b,.exp-n span{font-family:var(--fh)}
h1,h2{letter-spacing:-.02em}
:focus-visible{outline:3px solid var(--blue)}

/* ---------- buttons: indigo pill (primary), sky pill, outline ---------- */
.btn{background:linear-gradient(135deg,var(--indigo),var(--night));color:#ffffff;font-weight:600;font-size:15px;padding:14px 26px;box-shadow:0 8px 20px rgba(99,196,46,.25)}
.btn:hover{box-shadow:0 12px 26px rgba(99,196,46,.34)}
.btn.g{background:linear-gradient(135deg,#82d756,#62c42e);box-shadow:0 8px 20px rgba(112,209,61,.3)}
.btn.g:hover{box-shadow:0 12px 26px rgba(112,209,61,.4)}
.btn.o{background:transparent;border:2px solid currentColor;box-shadow:none;color:#ffffff}
.btn.s{padding:11px 20px;font-size:14px}
.btn.b{background:linear-gradient(135deg,var(--indigo),var(--night))}
.lang{border:1.5px solid var(--line);color:var(--ink);font-weight:600;background:#ffffff}.lang:hover{background:var(--sky);color:var(--ink);border-color:var(--sky2)}

/* ---------- top bar + header ---------- */
.topbar{background:var(--night);color:#b8d7de}.topbar .tc{color:#90dc6a}.topbar a:hover{color:#ffffff}
header{background:var(--hbg);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(6,41,49,.03)}
.nav{height:var(--hh)}
.brand img{height:58px}
nav.dn{gap:clamp(4px,.8vw,12px);font-weight:500;font-size:15.5px}
nav.dn>a,nav.dn .nvb{position:relative;padding:9px 14px;border-radius:10px;border:0;background:none;font:500 15.5px var(--fb);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
nav.dn>a:after,nav.dn .nvb:after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2px;border-radius:2px;background:var(--indigo);transform:scaleX(0);transform-origin:left;transition:transform .25s}
nav.dn>a:hover,nav.dn .nvb:hover{color:var(--indigo);background:#f2faf2}
nav.dn>a[aria-current],nav.dn .nvb[aria-current],nav.dn .nvb[aria-expanded=true]{color:var(--indigo);background:#e8f6e8}
nav.dn>a[aria-current]:after,nav.dn .nvb[aria-current]:after,nav.dn .nvb[aria-expanded=true]:after{transform:scaleX(1)}
.nvb svg{transition:transform .2s}.nvb[aria-expanded=true] svg{transform:rotate(180deg)}
.more{position:relative;display:inline-block}
.mm{position:absolute;right:0;top:calc(100% + 10px);min-width:210px;background:#ffffff;border-radius:16px;box-shadow:var(--sh2);padding:8px;border:1px solid var(--line);display:grid;gap:2px;z-index:60}
.mm a{padding:11px 14px;border-radius:10px;font-weight:500;font-size:15.5px}.mm a:hover,.mm a[aria-current]{background:#e8f6e8;color:var(--indigo)}
.acts{gap:10px}

/* ---------- Cities mega menu (like the reference) ---------- */
.mega{position:absolute;left:0;right:0;top:100%;z-index:55;pointer-events:none}
.mega .wrap{max-width:1240px;pointer-events:none}
.mg{pointer-events:auto;background:#ffffff;border-radius:22px;box-shadow:0 24px 60px rgba(6,41,49,.2);border:1px solid var(--line);padding:30px 40px 30px;margin-top:10px;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 64px;width:max-content;max-width:100%;box-sizing:border-box;max-height:calc(100vh - var(--hh) - 70px);overflow:auto}
.mcol.wide .ml{columns:4;column-gap:48px}.mcol .ml a{break-inside:avoid;white-space:nowrap}
@media(max-width:1500px){.mcol.wide .ml{columns:3}}
.mcol h5{font:700 14px var(--fh);letter-spacing:.07em;margin:0 0 14px;color:var(--ink)}
.mcol a{display:block;padding:7px 0;color:#496269;font-size:16px;font-weight:400;transition:color .15s,transform .15s}
.mcol a:hover{color:var(--indigo);transform:translateX(3px)}

/* ---------- drawer (mobile) ---------- */
.drawer{background:#ffffff}
.drawer a.l,.drawer summary.l{display:flex;align-items:center;gap:14px;padding:14px 6px;border-bottom:1px solid var(--line);font:600 17px var(--fh);min-height:52px;cursor:pointer;list-style:none}
.drawer summary.l::-webkit-details-marker{display:none}
.drawer a.l i,.drawer summary.l i{font-style:normal;width:38px;height:38px;border-radius:12px;background:var(--sky);display:grid;place-items:center;font-size:18px;flex:none}
.drawer summary.l:after{content:"+";margin-left:auto;color:var(--mute);font-size:24px}
.dcities[open] summary.l:after{content:"–"}
.dcity{margin:0 0 0 10px;border-left:2px solid var(--sky2)}.dcity summary{padding:12px 14px;font:600 15px var(--fh);cursor:pointer;color:var(--navy)}
.dcity div{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;padding:0 14px 12px}
.dcity div a{padding:8px 0;color:var(--mute);font-size:15px}
.drawer a.l[aria-current]{color:var(--indigo)}
.scrim{background:rgba(6,41,49,.5)}

/* ---------- hero (home + city pages) ---------- */
.hero2{position:relative;color:#ffffff;background:linear-gradient(100deg,rgba(6,41,49,.88) 0%,rgba(6,41,49,.62) 48%,rgba(6,41,49,.2) 100%),var(--hbgimg,url(../img/photos/home-rooftop.jpg)) center/cover no-repeat;overflow:hidden}
.hero2 .wrap{max-width:1240px;display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center;padding-top:64px;padding-bottom:64px}
.hero2 .badge{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#ffffff;font-weight:500;backdrop-filter:blur(6px)}
.hero2 h1{font-size:clamp(34px,5.2vw,62px);font-weight:700;line-height:1.08;letter-spacing:-.03em}
.hero2 h1 span{color:#90dc6a}
.hero2 .lead{text-align:left;max-width:560px;color:#e8f5e8;margin:18px 0 24px;font-size:19px}
.pills{display:grid;grid-template-columns:repeat(2,max-content);gap:12px;margin:0 0 26px}
.pills span{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);border-radius:12px;padding:11px 16px;font-size:15px;font-weight:500;color:#ffffff}
.pills span:before{content:"✓";color:#90dc6a;font-weight:700}
.rate{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:11px 18px;font-weight:500;margin-top:6px}
.hero2 .cta{margin-top:4px}
.hero2 .btn.o{border-color:rgba(255,255,255,.7)}

/* hero booking card */
.bk{background:#ffffff;color:var(--ink);border-radius:28px;padding:32px 32px 30px;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.bk h2{font-size:clamp(23px,2.6vw,29px);font-weight:700;color:var(--ink)}
.bk .sub2{margin:6px 0 20px;color:var(--mute);font-size:15px}
.bk form{display:grid;gap:14px}
.bk .f{position:relative}
.bk .f label{position:absolute;left:16px;top:7px;margin:0;font:500 12px var(--fb);color:var(--mute);pointer-events:none}
.bk .f input{padding:25px 16px 9px;border-radius:14px;border:1.5px solid var(--line);background:#ffffff;font-size:16px;min-height:58px}
.bk .f input:focus{border-color:var(--indigo);outline:0;box-shadow:0 0 0 3px rgba(99,196,46,.12)}
.bk .bl{font-weight:500;color:var(--mute);font-size:14.5px;margin:2px 0 -4px}
.bk .opts{display:flex;flex-wrap:wrap;gap:10px}
.bk .opts label{margin:0;font-weight:600;font-size:14.5px}
.bk .opts input{position:absolute;opacity:0;width:1px;height:1px}
.bk .opts span{display:inline-block;border:1.5px solid var(--line);border-radius:12px;padding:11px 16px;cursor:pointer;background:#ffffff;transition:all .15s;font-family:var(--fb)}
.bk .opts span:hover{border-color:var(--indigo)}
.bk .opts input:checked+span{background:var(--night);color:#ffffff;border-color:var(--night)}
.bk .opts input:focus-visible+span{outline:3px solid var(--blue);outline-offset:2px}
.bk .go2{background:linear-gradient(135deg,var(--indigo),var(--night));color:#ffffff;border:0;border-radius:14px;min-height:54px;font:600 16px var(--fh);cursor:pointer;box-shadow:0 10px 24px rgba(99,196,46,.3);transition:transform .2s}
.bk .go2:hover{transform:translateY(-2px)}.bk .go2[disabled]{opacity:.7;cursor:wait}
.bk .terms{font-size:13px;color:var(--mute);margin:0}
.bk .er{color:#c0182c;font-size:14px;margin:0}
.bk .hp{position:absolute;left:-9999px;opacity:0}
.bk .done{text-align:center;padding:14px 0}.bk .done .ck2{width:64px;height:64px;border-radius:50%;background:#e6f7ee;color:#139a52;display:grid;place-items:center;font-size:30px;margin:0 auto 14px}
.bk .done p{color:var(--mute);margin:8px 0}.bk .done .ref b{color:var(--ink)}

/* ---------- inner page header ---------- */
.ph{background:linear-gradient(120deg,var(--sky),var(--sky2));color:var(--ink);padding:54px 0}
.ph:before{background:radial-gradient(circle,rgba(112,209,61,.25),transparent 70%)}
.ph h1{color:var(--ink);font-weight:700}.ph p{color:var(--mute)}
.ph .badge{background:#ffffff;border:1px solid var(--sky2);color:var(--navy)}

/* ---------- strip, sections ---------- */
.strip{background:#ffffff;box-shadow:none;border-bottom:1px solid var(--line)}
.strip .wrap{gap:14px;padding:22px 20px}
.strip .wrap>div{background:var(--sky);border-radius:14px;padding:13px 10px;font:600 15px var(--fh);color:var(--navy)}
section{padding:76px 0}
.alt{background:linear-gradient(135deg,#f1fcfe,#e6faff)}
.dk{background:linear-gradient(140deg,var(--night),var(--navy));color:#ffffff}
.h h2{font-weight:700;color:var(--ink);font-size:clamp(27px,3.6vw,40px)}
.dk .h h2{color:#ffffff}
.tag{background:var(--sky);color:var(--indigo);font:600 12.5px var(--fh);letter-spacing:.08em}
.dk .tag{background:rgba(255,255,255,.14);color:#90dc6a}
.card{border:1px solid var(--line);border-top:1px solid var(--line);border-radius:24px;box-shadow:var(--sh);padding:28px}
.card:hover{transform:translateY(-5px);box-shadow:var(--sh2);border-color:var(--sky2)}
.card .r a:first-child{color:var(--indigo);font-weight:600}
.ic{border-radius:16px;box-shadow:none}
.card .cimg{margin:-28px -28px 18px;width:calc(100% + 56px);height:170px;border-radius:23px 23px 0 0}
.stat{border-radius:22px}
.pic{border-radius:28px}
.ck li:before{background:var(--indigo)}
.proj,.gal div{border-radius:24px}
.step:before{background:var(--indigo);box-shadow:0 8px 16px rgba(99,196,46,.25)}
.job{border-radius:20px}
.chips span{border-radius:12px;font-weight:500;background:var(--sky);border-color:var(--sky2);color:var(--navy)}
.exp{background:linear-gradient(120deg,#f0faeb,#daf1f7);color:var(--ink)}
.exp-n{border-right:2px solid rgba(99,196,46,.18)}
.exp-n b{color:var(--indigo)}.exp-n span{color:var(--navy)}
.exp-t h2{color:var(--ink)}.exp-t p{color:var(--mute)}
.cta-b{background:linear-gradient(120deg,var(--night),var(--indigo));border-radius:32px}
.cta-b:before{background:radial-gradient(circle,rgba(167,226,129,.35),transparent 70%)}
.sub{background:linear-gradient(120deg,#f0faeb,#daf1f7);color:var(--ink);border-color:var(--sky2);border-radius:28px}
.in{background:#ffffff}.out{background:linear-gradient(150deg,var(--indigo),var(--night))}.out dd.s{color:#90dc6a}
.calc,.calc2{border-radius:28px}
.val{color:var(--indigo)}
input[type=range]{accent-color:var(--indigo)}
input:focus,select:focus,textarea:focus{border-color:var(--indigo)}

/* ---------- FAQ: two columns, plus circle (like the reference) ---------- */
.faq{max-width:1120px;display:grid;grid-template-columns:1fr 1fr;gap:0 56px;align-items:start}
.faq details{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;margin:0;box-shadow:none}
.faq summary{padding:20px 56px 20px 0;font:600 16.5px/1.4 var(--fh);min-height:0}
.faq summary:after{right:0;background:#f1f6f7;color:var(--ink);width:32px;height:32px;font-size:19px}
.faq details[open] summary:after{background:var(--night);color:#ffffff}
.faq details p{padding:0 0 20px}
.faq details[open]{border-color:var(--line)}

/* ---------- footer ---------- */
.fcta{background:linear-gradient(110deg,var(--sky),var(--sky2));color:var(--ink)}
.fcta h3{color:var(--ink)}
footer{background:var(--night);color:#a8cad2}
footer a:hover{color:#90dc6a}
.fg{grid-template-columns:1.5fr .9fr 1.2fr 1fr 1.4fr;gap:30px}
footer h4:after{background:#90dc6a}
.fc2 a:hover{background:var(--blue)}
.fl{border-radius:18px}

/* ---------- city page ---------- */
.crumb{font-size:14px;color:#cfe5cf;margin-bottom:14px}.crumb a{color:#ffffff;text-decoration:underline;text-underline-offset:3px}
.cstats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cstat{background:#ffffff;border:1px solid var(--line);border-radius:22px;padding:24px;text-align:center;box-shadow:var(--sh)}
.cstat b{display:block;font:700 28px var(--fh);color:var(--indigo)}.cstat span{color:var(--mute);font-size:15px}
.office{background:#ffffff;border:1px solid var(--sky2);border-left:6px solid var(--indigo);border-radius:20px;padding:22px 26px;box-shadow:var(--sh);display:flex;gap:16px;align-items:center;flex-wrap:wrap;justify-content:space-between}
.office b{font-family:var(--fh)}
.nearby{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.nearby a{background:var(--sky);border:1px solid var(--sky2);border-radius:12px;padding:10px 18px;font-weight:500;color:var(--navy);transition:all .15s}
.nearby a:hover{background:var(--night);color:#ffffff;border-color:var(--night)}
.csub{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.csub .card{border-radius:22px}

/* ---------- responsive ---------- */
@media(max-width:1180px){.brand img{height:50px}.mega,.more .mm{display:none!important}}
@media(max-width:1000px){.fg{grid-template-columns:1fr 1fr}.cstats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.hero2 .wrap{grid-template-columns:1fr;gap:28px;padding-top:40px;padding-bottom:40px}.faq{grid-template-columns:1fr}}
@media(max-width:620px){.pills{grid-template-columns:1fr 1fr;gap:10px}.pills span{padding:10px 12px;font-size:13.5px}.bk{padding:24px 18px;border-radius:24px}.hero2 .lead{font-size:17px}.csub{grid-template-columns:1fr}section{padding:56px 0}.burger,.lang{border-radius:12px}.fg{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.mcol a{transition:none}}

/* the same booking form inside the quotation pop-up */
.bk.bkm{box-shadow:none;padding:6px 4px 4px;border-radius:0;background:transparent}
.bkm h2{padding-right:44px}
.mc .bk .f input{min-height:58px;margin:0}
.mc .bk .opts label{margin:0}

/* ---------- contact page (new look, same form) ---------- */
.ct{grid-template-columns:.8fr 1.2fr;gap:30px;align-items:start}
.cinfo{background:linear-gradient(150deg,var(--night),var(--navy));color:#ffffff;border-radius:28px;padding:34px 30px;box-shadow:var(--sh2)}
.cinfo h3{font-size:26px;color:#ffffff}.cinfo p{color:#cfe5cf;margin:10px 0 18px}
.cinfo .mc-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.cinfo .mc-list li{display:flex;gap:12px;align-items:center}
.cinfo .mc-list i{font-style:normal;width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.12);display:grid;place-items:center;flex:none}
.cinfo a:hover{color:#90dc6a}
.cf{border-radius:28px;box-shadow:var(--sh2);border:1px solid var(--line)}
.cf-h{background:#ffffff;color:var(--ink);padding:30px 32px 6px}
.cf-h:after{display:none}
.cf-tag{background:var(--sky);color:var(--indigo);font:600 12px var(--fh);letter-spacing:.08em}
.cf-h h2{color:var(--ink);font-size:28px;font-weight:700}.cf-h p{color:var(--mute)}
.cf form{padding:18px 32px 28px}
.cf-types span{border-width:1.5px;border-radius:14px;font-weight:600;font-family:var(--fh)}
.cf-types input:checked+span{border-color:var(--night);background:var(--night);color:#ffffff;box-shadow:0 8px 18px rgba(6,41,49,.25)}
.cf-types span:hover{border-color:var(--indigo)}
.cf-f label{font:500 13.5px var(--fb);color:var(--mute)}
.cf-f input,.cf-f select,.cf-f textarea{border-radius:14px;border:1.5px solid var(--line);background:#ffffff}
.cf-f input:focus,.cf-f select:focus,.cf-f textarea:focus{border-color:var(--indigo);outline:0;box-shadow:0 0 0 3px rgba(99,196,46,.12)}
.cf-go{background:linear-gradient(135deg,var(--indigo),var(--night));border-radius:14px;box-shadow:0 10px 24px rgba(99,196,46,.3);font-family:var(--fh);font-weight:600;font-size:16px}
.cf-go:hover{box-shadow:0 14px 30px rgba(99,196,46,.4)}
.cf-call{color:var(--indigo)}
.cf-ok{color:#139a52}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
@media(max-width:900px){.ct{grid-template-columns:1fr}.cinfo{order:2}.cf form{padding:16px 18px 24px}.cf-h{padding:24px 18px 4px}}

/* Design 1 extras */
.brand img{height:58px}.topbar{background:var(--night)}.topbar .tc{color:var(--gold)}
.btn.g{color:#ffffff}header{border-bottom:3px solid transparent;border-image:linear-gradient(90deg,#63c42e,#73d346,#70d13d) 1}
.hero2 h1 span{color:#73d346}.fcta{background:linear-gradient(110deg,#f0faeb,#dbf3ce)}

/* ===================== DESIGN 2 - "Solar Dusk" (navy + sun orange) ===================== */
body{background:var(--alt)}
section{padding:88px 0}
.topbar{background:var(--night);font-size:13px;letter-spacing:.01em}
header{background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid rgba(11,75,90,.08)}
nav.dn>a,nav.dn .nvb{border-radius:10px;font-weight:600;color:var(--navy)}
nav.dn>a:hover,nav.dn .nvb:hover,nav.dn>a[aria-current]{background:var(--sky);color:var(--indigo)}
.btn{border-radius:12px;letter-spacing:.01em;background:linear-gradient(135deg,#82d756,var(--indigo));box-shadow:0 10px 24px rgba(99,196,46,.3);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn.b,.btn.g{background:linear-gradient(135deg,#11697d,var(--night));box-shadow:0 10px 24px rgba(6,41,49,.25)}
.btn.o{border-radius:12px;border-color:rgba(255,255,255,.7)}
.hero2{background:radial-gradient(900px 420px at 85% 0%,rgba(120,212,73,.35),transparent 60%),linear-gradient(105deg,rgba(6,41,49,.96) 0%,rgba(9,55,65,.82) 52%,rgba(9,55,65,.4) 100%),var(--hbgimg,url(../img/photos/home-rooftop.jpg)) center/cover no-repeat}
.hero2 h1{font-weight:800;letter-spacing:-.03em}.hero2 h1 span{color:#90dc6a}
.hero2 .badge,.ph .badge{background:rgba(144,220,106,.16);border:1px solid rgba(144,220,106,.5);color:#c6edb2;border-radius:999px}
.pills span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:10px;color:#ffffff}
.ph{background:radial-gradient(700px 300px at 90% 0%,rgba(120,212,73,.28),transparent 65%),linear-gradient(120deg,#062931,#0b4b5a);color:#ffffff}
.ph h1,.ph p{color:#ffffff}
.tag{background:rgba(99,196,46,.1);color:var(--indigo);border-radius:8px;padding:6px 12px}
.h h2{color:var(--navy);font-weight:800}
.card{border-radius:16px;border:1px solid var(--line);background:#ffffff;transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-6px);box-shadow:var(--sh2);border-color:rgba(99,196,46,.45)}
.card .cimg,.who .pic img{border-radius:12px}
.stat,.cstat{border-radius:16px;background:#ffffff;border:1px solid var(--line);border-bottom:3px solid var(--indigo)}
.dk .stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-bottom:3px solid var(--indigo);color:#ffffff}
.dk .stat b{color:#ffffff}.dk .stat span{color:#c3e5ed}
.dk .h p{color:#c3e5ed}
.exp{background:linear-gradient(120deg,#f1fbec,#e8f8fb)}
.fcta{background:linear-gradient(110deg,#82d756,var(--indigo));color:#ffffff}.fcta h3{color:#ffffff}
.fcta .btn{background:var(--night);box-shadow:none}
footer{background:linear-gradient(180deg,#093741,#052229);color:#a8cad2}
footer h4{color:#ffffff}footer h4:after{background:var(--indigo)}
input,select,textarea{border-radius:10px}

/* ===================== DARK MODE (follows device / browser setting) ===================== */
@media(prefers-color-scheme:dark){
:root{--ink:#e8f4f7;--mute:#9cc0c8;--bg:#07272f;--card:#0e3b45;--line:#1d5562;--alt:#092e37;--hd:#ffffff;--sky:#11424e;--sky2:#15505e;--hbg:rgba(7,39,47,.88);--navy:#9ae3f4;--night:#041a20;--sh:0 6px 24px rgba(0,0,0,.35);--sh2:0 18px 48px rgba(0,0,0,.5)}
body,main{background:#07272f;color:var(--ink)}
section{background:transparent}.alt{background:#092e37}
.dk{background:linear-gradient(140deg,#041a20,#0b424f)}
header{background:var(--hbg);border-bottom-color:rgba(255,255,255,.08)}
nav.dn>a,nav.dn .nvb{color:#daf0f6}
nav.dn>a:hover,nav.dn .nvb:hover,nav.dn>a[aria-current]{background:#11424e;color:#90dc6a}
.lang{background:#0e3b45;color:#e8f4f7;border-color:#225f6d}
.mm,.drawer,.mega .mg,.mega .wrap>div{background:#0e3b45;color:#e8f4f7;border-color:#225f6d}
.mm a,.drawer a,.mega a{color:#daf0f6}
.h h2,.exp-t h2,h1,h2,h3{color:#ffffff}
.h p,p{color:var(--mute)}
.card,.stat,.cstat,.who .pic,.faq details,.job,.out,.est,.sh{background:var(--card);border-color:var(--line);color:var(--ink)}
.dk .stat{background:rgba(255,255,255,.07)}
.card h3,.stat b,.cstat b{color:#ffffff}.card p,.stat span,.cstat span{color:var(--mute)}
.exp{background:linear-gradient(120deg,#0b424f,#092e37)}
.tag{background:rgba(144,220,106,.14);color:#90dc6a}
input,select,textarea{background:#092e37;color:#e8f4f7;border-color:#225f6d}
::placeholder{color:#7ea8b1}
.faq summary{color:#ffffff}.faq summary:after{background:#11424e;color:#ffffff}
.tabbar{background:#092e37;border-top-color:#1d5562}.tabbar a{color:#b8d7de}
.select2-dropdown,.select2-container--default .select2-selection--single{background:#0e3b45;color:#e8f4f7;border-color:#225f6d}
.hero2 .btn.o,.btn.o{color:#ffffff}
.btn.b,.btn.g{background:linear-gradient(135deg,#1b859d,#0b4b5a)}
.fcta .btn{background:#041a20}
footer{background:linear-gradient(180deg,#062931,#031316)}
}
.dk .g5{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.dk .g5{grid-template-columns:1fr 1fr}}

.card .k{color:#4b9423!important}
@media(prefers-color-scheme:dark){
.f input,.f select,.f textarea,.bk input,.bk select,.bk textarea{background:#092e37!important;color:#e8f4f7!important;border-color:#225f6d!important}
.bkm label>span,.bkm label span{background:#11424e!important;color:#daf0f6!important;border-color:#225f6d!important}
.bkm label input:checked+span{background:#63c42e!important;color:#ffffff!important}
.card .k{color:#afe693!important}
}
@media(prefers-color-scheme:dark){
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),select,textarea{background:#092e37!important;color:#e8f4f7!important;border-color:#225f6d!important}
.cf-h{background:#11424e!important;color:#e8f4f7}.cf-h h2,.cf-h h3{color:#ffffff!important}
.cinfo{background:linear-gradient(150deg,#0b424f,#041a20)!important;color:#e8f4f7}
.cf-go{background:linear-gradient(135deg,#82d756,#63c42e)!important;color:#ffffff}
.cf-tabs button,.cf-tab{background:#0e3b45;color:#daf0f6;border-color:#225f6d}
}
.go2,.cf-go{background:linear-gradient(135deg,#82d756,#63c42e)!important;color:#ffffff!important}

/* =====================================================================
   DARK MODE FIXES (final pass - keep this block LAST in the file)
   Problem: several components had hard-coded white/light backgrounds
   while dark mode turned their headings white (invisible text).
   Here every such surface gets a dark colour. Light mode is untouched.
   ===================================================================== */
@media(prefers-color-scheme:dark){

/* ---- hero "Book a FREE Solar Consultation" card ---- */
.bk{background:var(--card);color:var(--ink);border:1px solid var(--line);box-shadow:0 30px 70px rgba(0,0,0,.55)}
.bk h2,.bk .done h2{color:#ffffff}
.bk .sub2,.bk .terms,.bk .bl,.bk .f label,.bk .done p{color:var(--mute)}
.bk .opts span{background:#092e37;border-color:#225f6d;color:#daf0f6}
.bk .opts span:hover{border-color:#82d756}
.bk .opts input:checked+span{background:#63c42e;border-color:#82d756;color:#ffffff}
.bk .er{color:#ff9a9a}
.bk .done .ref b{color:#ffffff}
.bk .done .ck2{background:rgba(19,154,82,.22);color:#5ee09a}
.bk.bkm{background:transparent;border:0;box-shadow:none}

/* ---- trust strip under hero ---- */
.strip{background:var(--card);border-bottom-color:var(--line)}

/* ---- savings calculator (home) ---- */
.calc{border:1px solid var(--line)}
.in{background:var(--card)}
.in h3{color:#ffffff}
.in .note{color:var(--mute)}
.val{color:#90dc6a}

/* ---- savings calculator (calculator page) ---- */
.eg,.xt{background:var(--card);border-color:var(--line)}
.eg>div,.eg>div:nth-child(odd),.eg>div:nth-child(-n+2),
.xt>div,.xt>div:nth-child(odd),.xt>div:nth-last-child(-n+2){border-color:var(--line)}
.eg small,.xt small{color:var(--mute)}
.eg b,.xt b{color:#ffffff}
.eg b.c1{color:#6de4ff}.eg b.c2{color:#95dd6f}
.est{background:var(--card);border-color:var(--line)}
.pt button.on{background:#11424e;border-color:#4ddeff;color:#9ae3f4;box-shadow:0 0 0 1px #4ddeff inset}
.er{background:rgba(224,49,49,.16);color:#ffb3b3}

/* ---- government subsidy banner ---- */
.sub{background:linear-gradient(120deg,#11424e,#1b390d);border-color:#316518;color:#d0f1c1}
.sub h2{color:#d0f1c1}
.sub p{color:#bceaa7;opacity:1}

/* ---- subsidy scheme + brochure blocks (solar-info) ---- */
.si-subh{background:linear-gradient(135deg,#182a10,#10301c);color:#e8f4f7}
.si-subh h3{color:#c6edb2}
.si-subh p{color:#cfe3c8}
.si-pts span{background:#11424e;color:#e8f4f7;box-shadow:none}
.si-tbl,.si-pm{background:#0e3b45;color:#e8f4f7}
.si-tbl h4,.si-pm b{color:#9ae3f4}
.si-tbl th{background:#1886a1}
.si-tbl td{color:#e8f4f7;border-bottom-color:#1d5562}
.si-tbl td:last-child{color:#7ddd6d}
.si-pm span{filter:none}
.si-tbl h4 em{color:#ff8a80}

/* ---- header menus ---- */
.mm a:hover,.mm a[aria-current]{background:#11424e;color:#90dc6a}
nav.dn>a:hover,nav.dn .nvb:hover{background:#11424e;color:#90dc6a}
nav.dn .nvb[aria-expanded=true],nav.dn .nvb[aria-current]{background:#11424e;color:#90dc6a}
.mcol h5{color:#ffffff}
.mcol a:hover{color:#90dc6a}
.drawer a.l[aria-current]{color:#90dc6a}

/* ---- cards, tables, forms, misc surfaces that stayed white ---- */
.office{background:var(--card);border-color:var(--line);border-left-color:#63c42e;color:var(--ink)}
.tbl{background:var(--card)}
.tbl th{background:#11424e;color:#ffffff}
.tbl td{color:var(--ink)}
.sw{background:var(--alt)}
.sw button{color:var(--ink)}
.sw button.on{background:#63c42e;color:#ffffff}
.up{background:#63c42e;color:#ffffff}
.cf-types span{background:var(--card);color:var(--ink);border-color:var(--line)}
.cf-types input:checked+span{background:rgba(130,215,86,.16);border-color:#82d756;color:#ffffff;box-shadow:none}
.cf-f label{color:var(--mute)}
.faq details[open] summary:after{background:#63c42e;color:#ffffff}
.faq details{border-bottom-color:var(--line)}
.fcta{background:linear-gradient(110deg,#54a727,#63c42e)}
.cf-call{color:#6de4ff}
.map-fb{color:#ffffff}
.chips span{background:var(--sky);color:#daf0f6;border-color:var(--line)}
.nearby a{color:#daf0f6}
.nearby a:hover{background:#63c42e;border-color:#63c42e;color:#ffffff}
.dcity summary{color:#9ae3f4}
}

/* dark mode extras */
@media(prefers-color-scheme:dark){
.gv-meter i{background:#255f6d}
.pcard img,.gal figure{background:#11424e}
.si-5 i{background:#e8f4f7}
.mc-copy.done{background:#e8f4f7;color:#085a6d}
.ph .badge{background:rgba(144,220,106,.16);color:#c6edb2}
}
