/*
Theme Name: WattDekho
Description: WattDekho theme. Know the cost. Choose what fits. Bilingual (English and Hindi) design for solar and EV costs, with editable blocks, calculators and comparisons. Use with the WattDekho Core plugin, Polylang and Rank Math.
Author: WattDekho
Version: 2.8.1
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: wattdekho
*/

/* Self-hosted fonts: Latin and Devanagari split so each page loads only what it uses */
@font-face{font-family:"Bricolage Grotesque";src:url("assets/fonts/bricolage-grotesque.woff2") format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-400-latin.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-024F,U+2013-2026,U+20B9,U+2192-2193}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-400-deva.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0900-097F,U+1CD0-1CFF,U+200C-200D,U+25CC,U+A8E0-A8FF}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-600-latin.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0000-024F,U+2013-2026,U+20B9,U+2192-2193}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-600-deva.woff2") format("woff2");font-weight:600;font-display:swap;unicode-range:U+0900-097F,U+1CD0-1CFF,U+200C-200D,U+25CC,U+A8E0-A8FF}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-700-latin.woff2") format("woff2");font-weight:700;font-display:swap;unicode-range:U+0000-024F,U+2013-2026,U+20B9,U+2192-2193}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-700-deva.woff2") format("woff2");font-weight:700;font-display:swap;unicode-range:U+0900-097F,U+1CD0-1CFF,U+200C-200D,U+25CC,U+A8E0-A8FF}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-800-latin.woff2") format("woff2");font-weight:800;font-display:swap;unicode-range:U+0000-024F,U+2013-2026,U+20B9,U+2192-2193}
@font-face{font-family:"Mukta";src:url("assets/fonts/mukta-800-deva.woff2") format("woff2");font-weight:800;font-display:swap;unicode-range:U+0900-097F,U+1CD0-1CFF,U+200C-200D,U+25CC,U+A8E0-A8FF}

/* ===== LandedSolar design tokens ===== */
:root{
  --night:#1C2451; --night-2:#27316A; --on-night:#EEF1FA; --on-night-2:#B7BEDB;
  --sun:#F4B400; --sun-soft:#FFF3CC;
  --paper:#F4F6FA; --panel:#FFFFFF; --ink:#18203F; --ink-2:#56607A; --line:#D8DEEA;
  --save:#0E7F57; --grid:#C9432A; --focus:#1F5FFF;
  --loss:#E6C66B; --c1:#27316A; --c2:#4D5DAE; --c3:#8C98D4; --c4:#8A4F9E; --c5:#C39BD3;
  --r-s:6px; --r-m:12px;
  --display:"Bricolage Grotesque","Mukta",system-ui,-apple-system,"Segoe UI",sans-serif;
  --body:"Mukta",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --night:#10142E; --night-2:#1A2046; --on-night:#EEF1FA; --on-night-2:#A9B0CF;
    --sun:#FFC52E; --sun-soft:#3A3212;
    --paper:#0F1326; --panel:#171C36; --ink:#E7EAF5; --ink-2:#A3AAC6; --line:#2C3458;
    --save:#43C08E; --grid:#F07A5E; --focus:#8EB0FF;
    --loss:#B8993F; --c1:#6E7FD6; --c2:#8F9CE3; --c3:#B9C1EE; --c4:#B57FC7; --c5:#D9B8E6;
  }
}
:root[data-theme="dark"]{
  --night:#10142E; --night-2:#1A2046; --on-night:#EEF1FA; --on-night-2:#A9B0CF;
  --sun:#FFC52E; --sun-soft:#3A3212;
  --paper:#0F1326; --panel:#171C36; --ink:#E7EAF5; --ink-2:#A3AAC6; --line:#2C3458;
  --save:#43C08E; --grid:#F07A5E; --focus:#8EB0FF;
  --loss:#B8993F; --c1:#6E7FD6; --c2:#8F9CE3; --c3:#B9C1EE; --c4:#B57FC7; --c5:#D9B8E6;
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.6;font-variant-numeric:tabular-nums}
:lang(hi) body{line-height:1.72}
img,svg{max-width:100%}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:2px}
.wrap{max-width:1200px;margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px;top:0;background:var(--sun);color:var(--night);padding:.6rem 1rem;z-index:20;font-weight:700}
.skip:focus{left:1rem}
h1,h2,h3,legend,.brand,.big,.bc-row b,.facts b,.kpis b{font-family:var(--display)}

/* ===== header (night band) ===== */
.site{background:var(--night);color:var(--on-night)}
.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}
.brand{font-weight:800;font-size:1.3rem;text-decoration:none;display:flex;align-items:center;gap:.55rem;letter-spacing:-.01em;color:var(--on-night)}
.brand svg{width:26px;height:26px;flex:none}
.hdr-right{display:flex;align-items:center;gap:1.1rem}
nav.main ul{list-style:none;margin:0;padding:0;display:flex;gap:1.3rem;align-items:center}
nav.main a{text-decoration:none;font-weight:500;font-size:.98rem;color:var(--on-night-2);padding:.6rem 0;display:inline-block}
nav.main a:hover,nav.main a[aria-current="page"]{color:var(--on-night)}
nav.main a[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--sun)}
nav.main a.cta{background:var(--sun);color:#1C2451;padding:.5rem 1rem;border-radius:var(--r-s);font-weight:700;box-shadow:none}
.langsw{font-size:.92rem;font-weight:600;text-decoration:none;color:var(--on-night);border:1.5px solid color-mix(in srgb,var(--on-night) 35%,transparent);border-radius:999px;padding:.3rem .85rem;white-space:nowrap}
.langsw:hover{border-color:var(--sun)}
.menu{display:none}
@media (max-width:900px){
  nav.main{display:none}
  .menu{display:block;position:relative}
  .menu summary{list-style:none;cursor:pointer;font-weight:600;min-height:48px;display:flex;align-items:center;color:var(--on-night)}
  .menu summary::-webkit-details-marker{display:none}
  .menu ul{position:absolute;right:0;top:100%;background:var(--panel);color:var(--ink);border-radius:var(--r-m);list-style:none;margin:.3rem 0 0;padding:.4rem 0;min-width:250px;z-index:10;box-shadow:0 12px 24px rgba(0,0,0,.18)}
  .menu a{display:block;padding:.75rem 1.1rem;text-decoration:none}
}

/* ===== page header (continues night band) ===== */
header.top{background:var(--night);color:var(--on-night);padding:1.6rem 0 2.6rem}
header.top .lede{color:var(--on-night-2)}
.crumbs{font-size:.88rem;color:var(--on-night-2);margin:0 0 .9rem}
.crumbs a{color:var(--on-night-2)}
h1{font-weight:750;font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.06;letter-spacing:-.02em;margin:0;max-width:22ch;text-wrap:balance}
:lang(hi) h1{line-height:1.25;letter-spacing:0}
.lede{max-width:62ch;margin:1rem 0 0;font-size:1.12rem;color:var(--ink-2)}

/* ===== home hero ===== */
.heroband{background:var(--night);color:var(--on-night);position:relative;overflow:hidden}
.heroband::after{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--sun) 55%,transparent) 0,transparent 68%);pointer-events:none}
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:3.5rem;align-items:center;padding-top:3.5rem;padding-bottom:4.5rem;position:relative;z-index:1}
.hero h1{font-size:clamp(2.4rem,5.6vw,4.4rem);max-width:15ch}
:lang(hi) .hero h1{line-height:1.22}
.hero .lede{color:var(--on-night-2)}
.hero-cta{margin:2rem 0 0;display:flex;flex-wrap:wrap;gap:1rem 1.6rem;align-items:center}
.textlink{color:var(--on-night);font-weight:600}
@media (max-width:880px){.hero{grid-template-columns:1fr;gap:2.4rem;padding-top:2.4rem;padding-bottom:3rem}}

/* the bill card: the site's signature element */
.billcard{margin:0;background:var(--panel);color:var(--ink);border-radius:var(--r-m);padding:1.6rem 1.5rem 1.3rem;position:relative;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.billcard::before,.board::before{content:"";position:absolute;left:0;right:0;top:-8px;height:16px;
  background:radial-gradient(circle at 8px 0,transparent 7px,var(--panel) 7.5px) repeat-x;background-size:16px 16px;pointer-events:none}
.bc-title{margin:0 0 1.1rem;font-weight:600;color:var(--ink-2);border-bottom:1.5px dashed var(--line);padding-bottom:.8rem}
.bc-item{margin-bottom:1.1rem}
.bc-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.bc-row span{font-size:.95rem}
.bc-row b{font-size:1.9rem;font-weight:780;letter-spacing:-.02em;white-space:nowrap}
.bc-bar{display:flex;height:14px;border-radius:4px;overflow:hidden;background:var(--paper);margin-top:.35rem}
.bc-bar .s,.key.s{background:var(--sun)} .bc-bar .f,.key.f{background:var(--c2)}
.billcard figcaption{font-size:.82rem;color:var(--ink-2);border-top:1.5px dashed var(--line);padding-top:.8rem}
.key{display:inline-block;width:.75rem;height:.75rem;border-radius:2px;margin:0 .3rem 0 .2rem;vertical-align:-1px}

/* ===== buttons ===== */
button,.button{font:inherit;font-weight:700;min-height:50px;padding:.7rem 1.4rem;border-radius:var(--r-s);border:0;background:var(--night);color:var(--on-night);cursor:pointer;display:inline-flex;align-items:center;text-decoration:none;font-size:1rem}
.button.sun{background:var(--sun);color:#1C2451}
button:hover,.button:hover{filter:brightness(1.08)}
button[disabled]{opacity:.6;cursor:progress}

/* ===== home sections ===== */
.tools{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:-2rem;position:relative;z-index:2}
.toolcard{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:1.6rem 1.6rem 1.4rem;text-decoration:none;color:var(--ink)}
.toolcard:hover{border-color:var(--night-2)}
.toolcard svg{width:120px;height:64px;color:var(--night-2);margin-bottom:1rem}
.toolcard h2{font-size:1.55rem;margin:0 0 .4rem;letter-spacing:-.01em}
.toolcard p{margin:0 0 1.2rem;color:var(--ink-2)}
.toolcard .go{margin-top:auto;font-weight:700;text-decoration:underline;text-decoration-color:var(--sun);text-decoration-thickness:3px;text-underline-offset:.3em}
@media (max-width:760px){.tools{grid-template-columns:1fr}}
.band{padding:3.4rem 0;border-bottom:1px solid var(--line)}
.band:last-child{border-bottom:0}
.band h2{font-weight:720;font-size:clamp(1.6rem,2.8vw,2.2rem);margin:0 0 1.4rem;max-width:28ch;letter-spacing:-.01em;line-height:1.15}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:0;padding:0;list-style:none}
.facts b{display:block;font-size:2.8rem;font-weight:780;line-height:1;letter-spacing:-.03em;margin-bottom:.5rem}
.facts span{color:var(--ink-2)}
@media (max-width:760px){.facts{grid-template-columns:1fr}}
ol.steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
ol.steps li{counter-increment:s;position:relative;padding-top:3.2rem}
ol.steps li::before{content:counter(s);position:absolute;top:0;left:0;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--sun);color:#1C2451;display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:1.15rem}
ol.steps b{display:block;font-size:1.12rem;margin-bottom:.25rem}
ol.steps p{margin:0;color:var(--ink-2)}
@media (max-width:760px){ol.steps{grid-template-columns:1fr}}
.srcnote{font-size:.85rem;color:var(--ink-2);margin-top:1.6rem;max-width:80ch}

/* ===== calculators ===== */
.tool{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:2.4rem;padding:0 0 3.5rem;margin-top:-1.4rem;position:relative;z-index:2}
@media (max-width:960px){.tool{grid-template-columns:1fr;gap:2rem}}
form#calc{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:1.5rem 1.4rem .6rem}
form fieldset{border:0;margin:0 0 1.5rem;padding:0 0 1.3rem;min-width:0;border-bottom:1.5px dashed var(--line)}
form fieldset:last-of-type{border-bottom:0}
legend{font-weight:720;font-size:1.12rem;padding:0;margin-bottom:.8rem;letter-spacing:-.01em}
.field{margin-bottom:.95rem}
.row2{display:grid;grid-template-columns:1fr 1fr;column-gap:.75rem}
.row2 > .field{display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
.row2 > .field > label{align-self:end}
@media (max-width:420px){.row2{grid-template-columns:1fr}}
label,.glabel{display:block;font-size:.97rem;font-weight:600;margin-bottom:.3rem}
.hint{display:block;font-size:.86rem;color:var(--ink-2);margin-top:.3rem;line-height:1.45}
.unit{position:relative}
.unit input{padding-right:4.6rem}
.unit span{position:absolute;right:.8rem;top:50%;transform:translateY(-50%);font-size:.88rem;color:var(--ink-2);pointer-events:none}
input[type=text],input[type=email],input[type=tel],select,textarea{
  width:100%;min-height:50px;font:inherit;font-size:1.05rem;color:var(--ink);background:var(--paper);
  border:1.5px solid var(--line);border-radius:var(--r-s);padding:.6rem .8rem;transition:border-color .15s,background .15s}
input:focus,select:focus,textarea:focus{background:var(--panel);border-color:var(--night-2);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--focus) 30%,transparent)}
textarea{min-height:110px;resize:vertical}
input:user-invalid,select:user-invalid{border-color:var(--grid)}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-2) 50%),linear-gradient(135deg,var(--ink-2) 50%,transparent 50%);
  background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:2.2rem}
.check{display:flex;gap:.65rem;align-items:flex-start;font-size:.95rem;font-weight:400}
.check input{width:20px;height:20px;margin-top:.2rem;accent-color:var(--night-2);flex:none}
.presetnote{font-size:.88rem;color:var(--ink-2);background:var(--sun-soft);border-radius:var(--r-s);padding:.55rem .8rem;margin:.5rem 0 0}
.derived{margin:.3rem 0 0;font-weight:700;min-height:1.5em;color:var(--c1)}
.choices{display:flex;flex-wrap:wrap;gap:.5rem}
.choices label{display:inline-flex;align-items:center;gap:.4rem;min-height:46px;padding:0 1rem;border:1.5px solid var(--line);border-radius:999px;background:var(--paper);font-weight:600;cursor:pointer;margin:0}
.choices input{accent-color:var(--night-2);width:18px;height:18px;margin:0}
.choices label:has(input:checked){border-color:var(--night-2);background:var(--panel);box-shadow:inset 0 0 0 1px var(--night-2)}
details.fees{border:1.5px solid var(--line);border-radius:var(--r-s);padding:.1rem 1rem;margin-top:.4rem;background:var(--paper)}
details.fees summary{cursor:pointer;font-weight:650;min-height:48px;display:flex;align-items:center;gap:.6rem;list-style:none}
details.fees summary::-webkit-details-marker{display:none}
details.fees summary::before{content:"+";display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:var(--night-2);color:var(--on-night);font-weight:700;line-height:1;flex:none}
details.fees[open] summary::before{content:"−"}
details.fees[open]{padding-bottom:.7rem}

/* results = the new bill */
.results{position:sticky;top:1rem;align-self:start}
@media (max-width:960px){.results{position:static}}
.board{background:var(--panel);border-radius:var(--r-m);padding:1.7rem 1.5rem 1.5rem;position:relative;box-shadow:0 14px 32px rgba(0,0,0,.12)}
.board h2{font-size:1.35rem;margin:0;padding-bottom:.9rem;border-bottom:1.5px dashed var(--line);letter-spacing:-.01em}
.empty{color:var(--ink-2);margin:1rem 0 .2rem;font-size:1.02rem}
.towers{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;position:relative;height:320px;margin:2rem 0 .6rem;padding-left:3rem}
.axis{position:absolute;left:0;top:0;bottom:0;width:2.6rem;font-size:.76rem;color:var(--ink-2)}
.axis span{position:absolute;right:.3rem;transform:translateY(50%)}
.tower{position:relative;display:flex;flex-direction:column;justify-content:flex-end}
.stack{display:flex;flex-direction:column-reverse;width:100%;max-width:140px;margin:0 auto;border-radius:6px 6px 0 0;overflow:hidden}
.seg{width:100%;transition:height .35s ease}
@media (prefers-reduced-motion:reduce){.seg{transition:none}}
.gridline{position:absolute;left:3rem;right:0;border-top:2.5px dashed var(--grid);pointer-events:none}
.gridline b{position:absolute;right:0;top:-1.6rem;font-size:.82rem;color:var(--grid);font-weight:700;background:var(--panel);padding:0 .35rem}
.tlabels{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;padding-left:3rem}
.tl{text-align:center}
.tl .name{font-weight:700;font-size:1rem}
.tl .what{font-size:.8rem;color:var(--ink-2);margin-bottom:.3rem;line-height:1.35}
.tl .big{font-weight:780;font-size:2.2rem;line-height:1.05;letter-spacing:-.02em}
.tl .sub{font-size:.88rem;color:var(--ink-2)}
.save{color:var(--save);font-weight:700}
.worse{color:var(--grid);font-weight:700}
.legend{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:1.2rem 0 0;padding:0;list-style:none;font-size:.82rem;color:var(--ink-2)}
.legend i{display:inline-block;width:.8rem;height:.8rem;border-radius:2px;margin-right:.35rem;vertical-align:-1px}
.annual{margin-top:1.3rem;padding:1rem 1.1rem;background:var(--sun-soft);border-radius:var(--r-s);font-size:1rem;font-weight:500}
.annual strong{font-family:var(--display)}
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.4rem;margin-top:1.3rem}
.kpis div{border-bottom:1px solid var(--line);padding-bottom:.7rem}
.kpis b{display:block;font-size:1.65rem;line-height:1.15;font-weight:760;letter-spacing:-.015em}
.kpis span{font-size:.88rem;color:var(--ink-2)}
.chart{margin-top:1.4rem}
.chart svg{width:100%;height:auto;display:block}
.chart .ax{stroke:var(--line)}
.chart text{fill:var(--ink-2);font-size:11px;font-family:var(--body)}
.btnrow{margin-top:1.3rem}
.btnrow .button{width:100%;justify-content:center;background:var(--sun);color:#1C2451}
table.data{width:100%;border-collapse:collapse;font-size:.92rem;margin-top:1rem}
.data th,.data td{text-align:right;padding:.5rem .55rem;border-bottom:1px solid var(--line);vertical-align:top}
.data th{font-weight:700}
.data th:first-child,.data td:first-child{text-align:left}
.data tfoot td{font-weight:800;border-bottom:0;border-top:2px solid var(--ink)}
.data.text td,.data.text th{text-align:left}
.data.text thead th{background:var(--paper)}
.tablewrap{overflow-x:auto}
details.more{margin-top:1rem;font-size:.95rem}
details.more summary{cursor:pointer;font-weight:650;min-height:44px;display:flex;align-items:center}

/* ===== quote form ===== */
.formbox{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:1.8rem;max-width:760px;margin-top:-1.4rem;position:relative;z-index:2;box-shadow:0 18px 50px rgba(0,0,0,.1)}
.formbox fieldset{border-bottom:1.5px dashed var(--line)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.status{margin-top:.8rem;font-size:.95rem;font-weight:600}

/* ===== articles ===== */
article{padding:3rem 0 3.5rem}
article .col{max-width:70ch}
article h2{font-weight:720;font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.18;margin:2.6rem 0 .8rem;letter-spacing:-.01em}
article .col > h2:first-child{margin-top:0}
article h3{font-size:1.2rem;margin:1.8rem 0 .5rem}
article dl{margin:0}
article dt{font-weight:700;margin-top:1.1rem}
article dd{margin:.2rem 0 0;color:var(--ink-2)}
.formula{background:var(--sun-soft);border-radius:var(--r-s);padding:1rem 1.2rem;overflow-x:auto;font-size:.98rem}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-weight:650;padding:1rem 2rem 1rem 0;position:relative;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:.2rem;top:.85rem;font-size:1.4rem;line-height:1;color:var(--night-2)}
.faq details[open] summary::after{content:"−"}
.faq details p{margin:0 0 1rem;color:var(--ink-2)}
.sources{padding-left:1.2rem}
.sources li{margin-bottom:.5rem;font-size:.93rem;color:var(--ink-2)}
.callout{background:var(--sun-soft);border-radius:var(--r-s);padding:1rem 1.2rem;margin:1.4rem 0}

/* ===== footer ===== */

footer.site-foot .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}
footer.site-foot ul{list-style:none;margin:0;padding:0}
footer.site-foot li{margin-bottom:.5rem}
footer.site-foot a{color:var(--on-night-2);text-decoration:none}
footer.site-foot a:hover{color:var(--on-night);text-decoration:underline}
footer.site-foot b{color:var(--on-night);display:block;margin-bottom:.6rem;font-family:var(--display)}
@media (max-width:700px){footer.site-foot .wrap{grid-template-columns:1fr}}

/* ===== WordPress additions ===== */
.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{clip-path:none;height:auto;width:auto;left:1rem;top:1rem;z-index:100;background:var(--sun);color:#1C2451;padding:.6rem 1rem}
.admin-bar .results{top:calc(1rem + 32px)}
nav.main li.cta a{background:var(--sun);color:#1C2451;padding:.5rem 1rem;border-radius:var(--r-s);font-weight:700;box-shadow:none}
nav.main .current-menu-item > a{color:var(--on-night);box-shadow:inset 0 -3px 0 var(--sun)}
nav.main li.cta.current-menu-item > a{box-shadow:none}
.custom-logo{max-height:34px;width:auto}
.crumbs p{margin:0}
.crumbs .separator{padding:0 .25rem}
.metaline{color:var(--on-night-2);font-size:.9rem;margin:.9rem 0 0}

/* entry content: reading width by default, tools full width */
.entry{padding:3rem 1.25rem 3.5rem}
.entry:has(> .tool:first-child),.entry:has(> .formbox:first-child){padding-top:0}
.entry > *{max-width:70ch}
.entry > .tool,.entry > .fullw,.entry > .statelist,.entry > .postlist{max-width:none}
.entry > .tool{margin-bottom:1rem}
.entry h2{font-weight:720;font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.18;margin:2.6rem 0 .8rem;letter-spacing:-.01em}
.entry > h2:first-child,.entry > .tool + h2{margin-top:1rem}
.entry h3{font-size:1.2rem;margin:1.8rem 0 .5rem}
.entry dl{margin:0} .entry dt{font-weight:700;margin-top:1.1rem} .entry dd{margin:.2rem 0 0;color:var(--ink-2)}
.entry .sources{padding-left:1.2rem}
.entry ul:not([class]),.entry ol:not([class]){padding-left:1.3rem}

/* front page sections carry their own .wrap */
.front .tools{margin-top:-2rem}

/* lists: archives, state hub, glossary */
.postlist{list-style:none;margin:0;padding:0;display:grid;gap:0}
.postlist li{border-bottom:1px solid var(--line);padding:1.2rem 0}
.postlist h2{font-size:1.3rem;margin:0 0 .3rem}
.postlist h2 a{text-decoration:none}
.postlist h2 a:hover{text-decoration:underline}
.postlist p{margin:0;color:var(--ink-2)}
.postlist .date{font-size:.85rem;color:var(--ink-2);margin-bottom:.2rem}
.statelist{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;list-style:none;margin:1.2rem 0 1.6rem;padding:0}
.statelist li a{display:block;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:1.1rem 1.2rem;text-decoration:none;height:100%}
.statelist li a:hover{border-color:var(--night-2)}
.statelist b{display:block;font-family:var(--display);font-size:1.25rem;margin-bottom:.2rem}
.statelist span{font-size:.9rem;color:var(--ink-2)}
.azlist{columns:2 260px;column-gap:2rem;list-style:none;margin:0;padding:0}
.azlist li{break-inside:avoid;padding:.6rem 0;border-bottom:1px solid var(--line)}
.azlist a{font-weight:650;text-decoration:none}
.azlist a:hover{text-decoration:underline}
.azlist p{margin:.15rem 0 0;font-size:.92rem;color:var(--ink-2)}
.backlink{margin-top:2rem;font-weight:600}
.pagination{margin-top:2rem;display:flex;gap:.6rem;flex-wrap:wrap}
.pagination .page-numbers{padding:.4rem .8rem;border:1px solid var(--line);border-radius:var(--r-s);text-decoration:none}
.pagination .current{background:var(--night);color:var(--on-night);border-color:var(--night)}

/* alerts form */
.formbox.inline{margin-top:1.2rem;max-width:720px}
.notice{padding:.9rem 1.1rem;border-radius:var(--r-s);font-weight:600;margin:0 0 1.2rem}
.notice.ok{background:color-mix(in srgb,var(--save) 14%,var(--panel));color:var(--ink)}
.notice.err{background:color-mix(in srgb,var(--grid) 14%,var(--panel));color:var(--ink)}
.charges{margin:0 0 1.6rem}
.charges caption{text-align:left;font-weight:700;padding-bottom:.4rem}


/* =====================================================================
   WattDekho 2.0: blocks, footer, articles
   ===================================================================== */
.wd-inner{max-width:1200px;margin:0 auto;padding:0 20px;box-sizing:border-box}
.wd-art{width:100%;height:auto;display:block}
.wd-ico{width:40px;height:40px;color:var(--night-2)}
.wd-muted{color:var(--ink-2)}
.wd-empty{background:var(--panel);border:1.5px dashed var(--line);border-radius:var(--r-m);padding:1.2rem 1.4rem;color:var(--ink-2)}
.wd-empty .wd-chans{margin-top:1rem}

/* buttons */
.wd-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:var(--r-s);font-weight:700;text-decoration:none;font-size:1rem;border:0;cursor:pointer}
.wd-btn-sun{background:var(--sun);color:#1C2451}
.wd-btn-night{background:var(--night);color:var(--on-night)}
.wd-btn-ghost{background:transparent;color:var(--on-night);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--on-night) 55%,transparent)}
.wd-btn:hover{filter:brightness(1.07)}
.wd-actions{display:flex;flex-wrap:wrap;gap:14px;margin:1.8rem 0 0}

/* front page rhythm */
main.front{padding-bottom:56px}
main.front > *:not(.wd-hero):not(.alignfull){max-width:1200px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px;box-sizing:border-box}
main.front > * + *{margin-top:56px}
main.front > .wd-overlap{margin-top:-56px;position:relative;z-index:2}

/* hero */
.wd-hero{background:var(--night);color:var(--on-night);position:relative;overflow:hidden;padding:56px 0 110px}
.wd-hero::after{content:"";position:absolute;right:-140px;top:-180px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--sun) 50%,transparent) 0,transparent 68%);pointer-events:none}
.wd-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;position:relative;z-index:1}
.wd-hero h1{font-weight:780;font-size:clamp(2.4rem,5.4vw,4.2rem);line-height:1.04;letter-spacing:-.02em;margin:0;max-width:14ch}
:lang(hi) .wd-hero h1{line-height:1.22;letter-spacing:0}
.wd-lede{color:var(--on-night-2);font-size:1.18rem;max-width:34rem;margin:1.1rem 0 0}
.wd-hero-visual{background:#fff;border-radius:16px;padding:18px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.wd-hero-photo{width:100%;height:auto;border-radius:10px;display:block}
@media (max-width:880px){.wd-hero{padding:36px 0 90px}.wd-hero-grid{grid-template-columns:1fr;gap:28px}}

/* tool cards */
.wd-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.wd-tool{display:flex;flex-direction:column;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:24px;text-decoration:none;color:var(--ink)}
.wd-tool:hover{border-color:var(--night-2)}
.wd-tool h3{font-family:var(--display);font-weight:720;font-size:1.4rem;margin:.4rem 0 0}
.wd-tool p{margin:0;color:var(--ink-2)}
.wd-go{margin-top:auto;padding-top:10px;font-weight:700;text-decoration:underline;text-decoration-color:var(--sun);text-decoration-thickness:3px;text-underline-offset:.3em}
@media (max-width:820px){.wd-tools{grid-template-columns:1fr}}

/* illustration banner */
.wd-art-banner{display:grid;grid-template-columns:minmax(0,340px) 1fr auto;gap:32px;align-items:center;border-radius:14px;padding:28px 36px;position:relative;overflow:hidden}
.wd-tone-night{background:var(--night);color:var(--on-night)}
.wd-tone-night p{color:var(--on-night-2)}
.wd-tone-soft{background:var(--sun-soft);color:var(--ink)}
.wd-art-banner h2{font-family:var(--display);font-weight:780;font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.15;margin:0;letter-spacing:-.01em}
.wd-art-banner p{margin:.4rem 0 0}
.wd-tone-soft .wd-ab-art{background:var(--night);border-radius:12px;padding:14px}
@media (max-width:860px){.wd-art-banner{grid-template-columns:1fr;padding:24px}}

/* photo banner: real text over the photo, brand fade behind it */
.wd-photo-banner{position:relative;min-height:440px;border-radius:14px;overflow:hidden;display:flex;background:var(--night)}
.wd-pb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wd-focus-right{object-position:80% 78%}.wd-focus-left{object-position:25% 50%}.wd-focus-bottom{object-position:50% 80%}
.wd-photo-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--night) 0,var(--night) 30%,rgba(28,36,81,.8) 44%,rgba(28,36,81,0) 64%)}
.wd-pos-top::after{background:linear-gradient(180deg,var(--night) 0,rgba(28,36,81,.85) 30%,rgba(28,36,81,0) 55%)}
.wd-pb-copy{position:relative;z-index:1;color:var(--on-night);padding:44px 48px;max-width:520px;align-self:center}
.wd-pos-top .wd-pb-copy{align-self:flex-start}
.wd-pb-copy h2{font-family:var(--display);font-weight:780;font-size:clamp(1.8rem,3.6vw,2.8rem);line-height:1.06;margin:0;letter-spacing:-.02em}
:lang(hi) .wd-pb-copy h2{line-height:1.25;letter-spacing:0}
.wd-pb-copy p{color:#C9CEE6;font-size:1.1rem;margin:.8rem 0 1.4rem}
@media (max-width:760px){
  .wd-photo-banner{flex-direction:column;min-height:0}
  .wd-pb-img{position:relative;height:240px}
  .wd-photo-banner::after{display:none}
  .wd-pb-copy{padding:24px}
}

/* steps */
.wd-steps{display:grid;grid-template-columns:1fr 460px;gap:48px;align-items:center}
.wd-steps h2,.wd-guides h2,.wd-notify h2{font-family:var(--display);font-weight:780;font-size:clamp(1.6rem,2.8vw,2.2rem);margin:0 0 1.2rem;letter-spacing:-.01em}
.wd-steps-list{list-style:none;counter-reset:s;margin:0;padding:0;display:flex;flex-direction:column;gap:18px}
.wd-steps-list li{counter-increment:s;display:grid;grid-template-columns:40px 1fr;column-gap:16px}
.wd-steps-list li::before{content:counter(s);grid-row:span 2;width:40px;height:40px;border-radius:50%;background:var(--sun);color:#1C2451;display:grid;place-items:center;font-family:var(--display);font-weight:800}
.wd-steps-list b{font-size:1.1rem}
.wd-steps-list p{margin:2px 0 0;color:var(--ink-2)}
.wd-card-art{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:20px}
@media (max-width:860px){.wd-steps{grid-template-columns:1fr}}

/* guides */
.wd-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.wd-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.wd-guide{display:flex;flex-direction:column;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:22px;text-decoration:none;color:var(--ink)}
.wd-guide:hover{border-color:var(--night-2)}
.wd-guide h3{font-family:var(--display);font-size:1.2rem;line-height:1.25;margin:0}
.wd-guide p{margin:0;color:var(--ink-2);font-size:.96rem}
.wd-kicker{font-size:.8rem;font-weight:700;color:var(--c2);text-transform:uppercase;letter-spacing:.06em}
@media (max-width:820px){.wd-guide-grid{grid-template-columns:1fr}}

/* notify */
.wd-notify{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:30px 36px}
.wd-notify h2{margin:0}.wd-notify p{margin:.4rem 0 0;color:var(--ink-2)}
@media (max-width:860px){.wd-notify{grid-template-columns:1fr;padding:24px}}
.wd-chans{display:flex;flex-wrap:wrap;gap:12px}
.wd-chan{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border-radius:8px;border:1.5px solid var(--line);background:var(--panel);color:var(--ink);text-decoration:none;font:inherit;font-weight:650;font-size:.97rem;cursor:pointer}
.wd-chan:hover{border-color:var(--night-2)}
.wd-chan[hidden]{display:none}

/* chips */
.wd-chips-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.wd-chip{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:6px 14px;text-decoration:none;color:var(--ink);font-size:.93rem;background:var(--panel)}

/* comparison */
.wd-disclosure{background:var(--sun-soft);border-radius:var(--r-s);padding:.7rem 1rem;font-size:.93rem}
.wd-compare{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden;font-size:.95rem}
.wd-compare th,.wd-compare td{padding:14px 16px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.wd-compare thead th{border-top:0;border-left:1px solid var(--line)}
.wd-compare tbody td{border-left:1px solid var(--line)}
.wd-compare tbody th{width:240px;font-weight:650}
.wd-why{display:block;font-weight:400;font-size:.85rem;color:var(--ink-2)}
.wd-prod{display:flex;flex-direction:column;gap:8px}
.wd-prod b{font-family:var(--display);font-size:1.1rem}
.wd-prod span{color:var(--ink-2);font-size:.9rem}
.wd-prod-img{width:100%;height:120px;object-fit:contain;background:var(--paper);border-radius:8px}
.wd-figure{margin:1.6rem 0}
.wd-figure figcaption{color:var(--ink-2);font-size:.9rem;margin-top:.4rem}

/* pages: let designed blocks use the full content width */
.entry > .wd-tools,.entry > .wd-art-banner,.entry > .wd-photo-banner,.entry > .wd-steps,.entry > .wd-guides,.entry > .wd-notify,.entry > .wd-chips-row,.entry > .tablewrap,.entry > .wd-disclosure,.entry > .wd-empty,.entry > .wp-block-group.is-style-wd-card{max-width:none}
.entry > .wd-tools,.entry > .wd-art-banner,.entry > .wd-photo-banner,.entry > .wd-steps,.entry > .wd-guides,.entry > .wd-notify{margin:2.4rem 0}

/* block styles for core blocks */
.is-style-wd-takeaways{background:var(--sun-soft);border-radius:12px;padding:20px 22px!important}
.is-style-wd-takeaways > :first-child{margin-top:0;font-family:var(--display);font-size:1.15rem}
.is-style-wd-takeaways ul{margin:.4rem 0 0;padding-left:1.2rem}
.is-style-wd-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px 22px!important}
.is-style-wd-soft{background:var(--sun-soft);border-radius:12px;padding:18px 22px!important}
ul.is-style-wd-checks{list-style:none;padding-left:0}
ul.is-style-wd-checks li{padding-left:1.8rem;position:relative;margin:.4rem 0}
ul.is-style-wd-checks li::before{content:"";position:absolute;left:0;top:.35em;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--sun)}
.wp-block-table table{width:100%;border-collapse:collapse;font-size:.95rem}
.wp-block-table th,.wp-block-table td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.wp-block-table thead{background:var(--paper)}

/* article */
.article-grid{display:grid;grid-template-columns:220px minmax(0,70ch) 1fr;gap:40px;padding:40px 20px 56px;max-width:1200px;margin:0 auto;box-sizing:border-box}
.article-body > *{max-width:70ch}
.article-body h2{font-family:var(--display);font-weight:720;font-size:clamp(1.45rem,2.4vw,1.9rem);line-height:1.2;margin:2.4rem 0 .7rem;scroll-margin-top:1rem}
.article-body h3{font-size:1.2rem;margin:1.6rem 0 .4rem}
.article-body h4{font-size:1.05rem;margin:1.2rem 0 .3rem}
.toc{position:sticky;top:1rem;align-self:start;font-size:.93rem}
.toc b{display:block;margin-bottom:.6rem}
.toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem;border-left:2px solid var(--line)}
.toc a{display:block;padding-left:.8rem;color:var(--ink-2);text-decoration:none;margin-left:-2px;border-left:2px solid transparent}
.toc a:hover{color:var(--ink);border-left-color:var(--sun)}
.article-aside{display:flex;flex-direction:column;gap:16px;align-self:start}
.byline{color:var(--on-night-2);font-size:.95rem;margin:.9rem 0 0}
.byline b{color:var(--on-night);font-weight:600}
@media (max-width:1080px){.article-grid{grid-template-columns:minmax(0,1fr)}.toc{position:static}.article-aside{order:3}}

/* footer */
.site-foot{padding:0;background:var(--night);color:var(--on-night-2)}
.site-foot a{color:var(--on-night-2);text-decoration:none}
.site-foot a:hover{color:var(--on-night);text-decoration:underline}
.ft-notify{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:36px 20px;border-bottom:1px solid #333D72}
.ft-notify b{display:block;font-family:var(--display);font-size:1.6rem;font-weight:750;color:var(--on-night);letter-spacing:-.01em}
.ft-notify p{margin:.3rem 0 0}
.site-foot .wd-chan{background:transparent;color:var(--on-night);border-color:#3A4478}
.site-foot .wd-chan:hover{border-color:var(--sun);text-decoration:none}
.ft-main{display:grid;grid-template-columns:1.5fr repeat(4,minmax(0,1fr));gap:36px;padding:44px 20px 32px}
.ft-brand{display:flex;flex-direction:column;gap:14px}
.ft-brand img{height:40px;width:auto;align-self:flex-start}
.ft-tag{font-family:var(--display);font-size:1.25rem;font-weight:700;color:var(--on-night)}
.ft-badge{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;background:#27316A;color:var(--on-night);border-radius:999px;padding:6px 14px;font-size:.88rem}
.ft-badge svg{color:var(--sun)}
.ft-col summary{list-style:none;color:var(--on-night);font-family:var(--display);font-weight:700;margin-bottom:.8rem;cursor:default}
.ft-col summary::-webkit-details-marker{display:none}
.ft-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}
.ft-states{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:18px 20px;border-top:1px solid #333D72}
.ft-states b{color:var(--on-night);margin-right:6px}
.site-foot .wd-chip{background:transparent;color:var(--on-night);border-color:#3A4478}
.ft-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:20px 20px 30px;border-top:1px solid #333D72;font-size:.88rem}
.ft-bottom ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.ft-links{display:flex;flex-wrap:wrap;gap:18px;align-items:center}
@media (max-width:980px){
  .ft-notify{grid-template-columns:1fr}
  .ft-main{grid-template-columns:1fr;gap:0}
  .ft-brand{padding-bottom:24px}
  .ft-col{border-top:1px solid #333D72}
  .ft-col summary{min-height:52px;display:flex;align-items:center;justify-content:space-between;margin:0;cursor:pointer}
  .ft-col summary::after{content:"+";color:var(--sun);font-size:1.4rem}
  .ft-col[open] summary::after{content:"−"}
  .ft-col ul{padding-bottom:1rem}
  .ft-bottom{flex-direction:column;align-items:flex-start}
}
.site-foot .wrap{display:block}

/* ===== writing blocks ===== */
.wd-takeaways{margin:1.6rem 0}
.wd-takeaways > p:first-child,.wd-tk-title{margin:0 0 .4rem;font-family:var(--display);font-weight:700;font-size:1.15rem}
.wd-takeaways ul{margin:.3rem 0 0;padding-left:1.2rem}
.wd-takeaways li{margin:.3rem 0}
.wd-callout{--c:var(--night-2);--bg:color-mix(in srgb,var(--night-2) 7%,var(--panel));margin:1.6rem 0;padding:16px 20px 16px 56px;border-radius:12px;background:var(--bg);position:relative}
.wd-callout::before{content:"";position:absolute;left:18px;top:18px;width:24px;height:24px;border-radius:50%;background:var(--c);-webkit-mask:var(--ico) center/16px no-repeat,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:var(--ico) center/16px no-repeat,linear-gradient(#000 0 0);mask-composite:exclude}
.wd-callout-tip{--c:#0E7F57;--bg:color-mix(in srgb,#0E7F57 8%,var(--panel));--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9V16h7v-2.1A6 6 0 0 0 12 3z' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}
.wd-callout-note{--c:var(--night-2);--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 8h.01M11 12h1v5h1' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E")}
.wd-callout-warning{--c:#B45309;--bg:color-mix(in srgb,#F4B400 14%,var(--panel));--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 7v6M12 17h.01' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E")}
.wd-callout-example{--c:#7A4FA0;--bg:color-mix(in srgb,#7A4FA0 8%,var(--panel));--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 8h8M8 12h8M8 16h5' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}
.wd-callout-label{margin:0 0 .25rem;font-weight:700;color:var(--c);text-transform:uppercase;letter-spacing:.05em;font-size:.82rem}
.wd-callout-body > :first-child{margin-top:0}.wd-callout-body > :last-child{margin-bottom:0}
.wd-stat{margin:1.6rem 0;padding:18px 22px;background:var(--sun-soft);border-radius:12px;display:flex;flex-direction:column;gap:2px}
.wd-stat b{font-family:var(--display);font-weight:800;font-size:clamp(2rem,4vw,2.8rem);line-height:1.05;letter-spacing:-.02em}
.wd-stat span{font-weight:600}
.wd-stat small{color:var(--ink-2);font-size:.85rem}
.wd-inline-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:1.8rem 0;padding:18px 22px;background:var(--panel);border:1px solid var(--line);border-radius:12px}
.wd-inline-cta div{display:flex;flex-direction:column}
.wd-inline-cta b{font-family:var(--display);font-size:1.15rem}
.wd-inline-cta span{color:var(--ink-2);font-size:.95rem}
@media (max-width:600px){.wd-inline-cta{flex-direction:column;align-items:flex-start}}
.wd-sources ol,.wd-sources ul{padding-left:1.2rem}
.wd-sources li{margin-bottom:.5rem;font-size:.93rem;color:var(--ink-2)}
/* editor-only helpers */
.wd-faq-item-edit{border-bottom:1px solid var(--line);padding:.6rem 0}
.wd-faq-q{font-weight:650;margin:0 0 .3rem}
.wd-faq-a{margin:0;color:var(--ink-2)}


/* ===== 2.5 design pass: critique fixes ===== */
/* Browser surfaces */
::selection{background:var(--sun);color:#1C2451}
input,textarea{caret-color:var(--night-2)}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}
a{text-underline-offset:.18em}
table,.kpis,.wd-stat b,.wd-compare td,.tlabels{font-variant-numeric:tabular-nums}

/* Callout colours as tokens, with readable dark-mode values */
:root{--c-tip:#0E7F57;--c-note:#3B4BA0;--c-warn:#A34A06;--c-ex:#7A4FA0}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--c-tip:#5FD4A4;--c-note:#AAB5F2;--c-warn:#FFB45C;--c-ex:#D2B0F0}}
:root[data-theme="dark"]{--c-tip:#5FD4A4;--c-note:#AAB5F2;--c-warn:#FFB45C;--c-ex:#D2B0F0}
.wd-callout-tip{--c:var(--c-tip);--bg:color-mix(in srgb,var(--c-tip) 10%,var(--panel))}
.wd-callout-note{--c:var(--c-note);--bg:color-mix(in srgb,var(--c-note) 10%,var(--panel))}
.wd-callout-warning{--c:var(--c-warn);--bg:color-mix(in srgb,var(--c-warn) 12%,var(--panel))}
.wd-callout-example{--c:var(--c-ex);--bg:color-mix(in srgb,var(--c-ex) 10%,var(--panel))}
/* No side-tab borders: full tinted panels */
.wd-callout{border-left:0;border-radius:12px}
.wd-stat{border-left:0;border-radius:12px;background:var(--sun-soft)}
.formula{border-left:0;border:0;background:var(--sun-soft)}
/* One depth cue per surface: soft offset shadow, no hairline border; neutral (not coloured) shadows on navy */
.board{border:0}
.formbox{box-shadow:none}
.billcard,.wd-hero-visual{box-shadow:0 14px 28px rgba(0,0,0,.28)}

/* Section heading above tool cards (hidden when the cards overlap the hero) */
.wd-sec-h{font-family:var(--display);font-weight:780;font-size:clamp(1.6rem,2.8vw,2.2rem);margin:0 0 1.2rem;letter-spacing:-.01em}
.wd-tools-wrap{display:block}
.wd-tools-wrap .wd-tools{margin:0}

/* Worked-example card for "How it works" (replaces the clip-art roof) */
.wd-example{background:var(--panel);border-radius:var(--r-m);padding:22px 22px 18px;box-shadow:0 14px 34px rgba(0,0,0,.12)}
.wd-example p{margin:0}
.wd-example .ex-title{font-weight:650;color:var(--ink-2);padding-bottom:.7rem;border-bottom:1.5px dashed var(--line);margin-bottom:.9rem}
.wd-example dl{display:grid;grid-template-columns:1fr auto;gap:.55rem 1rem;margin:0}
.wd-example dt{color:var(--ink-2)}
.wd-example dd{margin:0;font-family:var(--display);font-weight:760;font-size:1.15rem;text-align:right;font-variant-numeric:tabular-nums}
.wd-example .ex-total{grid-column:1/-1;margin-top:.5rem;padding:.8rem 1rem;background:var(--sun-soft);border-radius:var(--r-s);font-weight:600}
.wd-example small{display:block;margin-top:.8rem;color:var(--ink-2);font-size:.8rem}

/* Guide cards: category as a meta line under the title, not an eyebrow */
.wd-guide .wd-meta{margin-top:auto;padding-top:.5rem;font-size:.82rem;color:var(--ink-2)}

/* Guide sidebar */
.aside-cta{display:flex;flex-direction:column;gap:.5rem;background:var(--sun-soft);border-radius:12px;padding:18px}
.aside-cta b{font-family:var(--display);font-size:1.05rem;line-height:1.3}
.aside-cta span{font-size:.9rem;color:var(--ink-2)}
.aside-cta .wd-btn{min-height:44px;margin-top:.3rem}
.aside-related{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px}
.article-aside{position:sticky;top:1rem}
@media (max-width:1080px){.article-aside{position:static}}

/* Touch targets at least 44px */
.wd-chip{display:inline-flex;align-items:center;min-height:44px;padding:0 16px}
.wd-head a{display:inline-flex;align-items:center;min-height:44px}
.langsw{display:inline-flex;align-items:center;min-height:44px;padding:0 14px}
.ft-links a{display:inline-flex;align-items:center;min-height:44px}

/* Header WhatsApp icon: phones only (desktop shows the full button in the menu) */
.hdr-wa{display:none}
@media (max-width:900px){
  .hdr-wa{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--sun);color:#1C2451}
  .hdr-wa svg{width:22px;height:22px}
}

/* Mobile answer bar for calculators */
.wd-answerbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:40;display:none;align-items:center;justify-content:space-between;gap:12px;
  min-height:56px;padding:10px 16px;border:0;border-radius:14px;background:#1C2451;color:#EEF1FA;font:inherit;text-align:left;box-shadow:0 10px 24px rgba(0,0,0,.3);cursor:pointer}
.wd-answerbar span{font-weight:600;font-size:.95rem;line-height:1.3;font-variant-numeric:tabular-nums}
.wd-answerbar b{color:#F4B400;white-space:nowrap;font-size:.9rem}
@media (max-width:880px){.wd-answerbar:not([hidden]){display:flex}}

/* Mobile: result figures stay on two lines at most; tool cards become compact rows */
@media (max-width:520px){
  .kpis b{font-size:clamp(1.1rem,5.2vw,1.45rem);line-height:1.2}
  .wd-tools{gap:12px}
  .wd-tool{display:grid;grid-template-columns:40px 1fr;column-gap:14px;padding:18px}
  .wd-tool .wd-ico{grid-row:span 3;width:32px;height:32px}
  .wd-tool h3,.wd-tool h2{margin:0;font-size:1.2rem}
  .wd-tool .wd-go{padding-top:6px}
}
.wd-tool h2{font-family:var(--display);font-weight:720;font-size:1.4rem;margin:.4rem 0 0}
.entry > .wd-tools-wrap{max-width:none;margin:2.4rem 0}
.brand{display:inline-flex;align-items:center;min-height:44px}

/* ===== Product page ===== */
.wd-p-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:start;margin-top:-40px;position:relative;z-index:2}
.wd-p-media{background:var(--panel);border-radius:var(--r-m);padding:24px;box-shadow:0 14px 32px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center;min-height:320px}
.wd-p-img{width:100%;height:auto;max-height:420px;object-fit:contain}
.wd-p-art{width:70%;max-width:320px}
.wd-p-summary{padding-top:56px;display:flex;flex-direction:column;gap:18px}
.wd-p-model{margin:0;color:var(--ink-2);font-weight:600}
.wd-p-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.wd-p-facts div{background:var(--panel);border-radius:12px;padding:14px 16px}
.wd-p-facts dt{font-size:.82rem;color:var(--ink-2)}
.wd-p-facts dd{margin:.15rem 0 0;font-family:var(--display);font-weight:720;font-size:1.1rem;line-height:1.25;font-variant-numeric:tabular-nums}
.wd-offer{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;background:var(--sun-soft);border-radius:12px;padding:18px 20px}
.wd-price{margin:0;display:flex;align-items:baseline;gap:8px;flex-basis:100%}
.wd-price b{font-family:var(--display);font-weight:800;font-size:2rem;font-variant-numeric:tabular-nums}
.wd-price span{color:var(--ink-2)}
.wd-price-when{margin:0;flex-basis:100%;font-size:.9rem;color:var(--ink-2)}
.wd-ds{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.wd-disclosure-sm{margin:0;flex-basis:100%;font-size:.8rem;color:var(--ink-2)}
.wd-p-body{display:grid;grid-template-columns:minmax(0,70ch) 1fr;gap:40px;padding-top:40px;padding-bottom:56px}
.wd-p-main h2{font-family:var(--display);font-weight:720;font-size:clamp(1.4rem,2.4vw,1.8rem);margin:1.8rem 0 .8rem}
.wd-p-main h2:first-child{margin-top:0}
.wd-p-specs{width:100%;border-collapse:collapse;background:var(--panel);border-radius:12px;overflow:hidden}
.wd-p-specs th,.wd-p-specs td{padding:12px 16px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.wd-p-specs tr:first-child th,.wd-p-specs tr:first-child td{border-top:0}
.wd-p-specs th{width:45%;font-weight:650}
.wd-p-specs td{font-variant-numeric:tabular-nums}
.wd-p-note{font-size:.88rem;color:var(--ink-2)}
.wd-p-aside{display:flex;flex-direction:column;gap:16px;align-self:start;position:sticky;top:1rem}
.aside-related ul{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.7rem}
.aside-related li{display:flex;flex-direction:column}
.aside-related li span{font-size:.85rem;color:var(--ink-2)}
@media (max-width:900px){
  .wd-p-hero{grid-template-columns:1fr;gap:20px;margin-top:-28px}
  .wd-p-media{min-height:220px}
  .wd-p-summary{padding-top:0}
  .wd-p-body{grid-template-columns:1fr}
  .wd-p-aside{position:static}
}

/* ===== calculator extras (2.7) ===== */
/* result footer: method link, copy link, WhatsApp share */
.sharerow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1rem;margin-top:1.1rem;padding-top:1rem;border-top:1.5px dashed var(--line);font-size:.93rem}
.howcalc{font-weight:600}
.sharebtns{display:flex;flex-wrap:wrap;gap:.5rem}
.linkbtn{min-height:44px;padding:.45rem .9rem;border:1.5px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;text-decoration:none}
.linkbtn:hover{border-color:var(--night-2)}
.nextstep{margin:1rem 0 0;font-size:.97rem}
.nextstep a{font-weight:650}
.board .hint{margin-top:.9rem}
.subhead{font-size:1.05rem;margin:1.3rem 0 .4rem}
ul.checks{list-style:none;padding-left:0;margin:.3rem 0 0}
ul.checks li{padding-left:1.7rem;position:relative;margin:.45rem 0;font-size:.95rem}
ul.checks li::before{content:"";position:absolute;left:0;top:.4em;width:1rem;height:1rem;border-radius:50%;background:var(--sun)}
/* share of units by appliance */
ul.shares{list-style:none;margin:.2rem 0 0;padding:0}
ul.shares li{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--line);font-size:.95rem}
ul.shares b{font-family:var(--display);font-variant-numeric:tabular-nums}
/* month-by-month bars */
.months{margin:1.4rem 0 0}
.months figcaption{font-size:.88rem;color:var(--ink-2);margin-bottom:.5rem}
.months ol{list-style:none;margin:0;padding:1.1rem 0 0;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;align-items:end;height:170px}
.months li{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;min-width:0}
.months .mb{position:relative;display:block;width:100%;background:var(--c3);border-radius:4px 4px 0 0;min-height:4px}
.months li.hi .mb{background:var(--sun)}
.months li.lo .mb{background:var(--c1)}
.months em{position:absolute;left:50%;bottom:100%;transform:translateX(-50%);font-style:normal;font-size:.68rem;color:var(--ink-2);padding-bottom:2px;white-space:nowrap}
.months small{font-size:.68rem;color:var(--ink-2);margin-top:4px;white-space:nowrap}
@media (max-width:520px){.months em{display:none}.months li.hi em,.months li.lo em{display:block}}
/* appliance list in the load calculator */
.applist{display:flex;flex-direction:column;gap:.35rem}
.apphead,.approw{display:grid;grid-template-columns:minmax(0,1fr) 4.4rem 4.6rem;gap:.5rem;align-items:center}
.apphead{font-size:.8rem;color:var(--ink-2);font-weight:600;padding:0 .2rem}
.apphead span:not(:first-child){text-align:center}
.approw{padding:.35rem .4rem;border-radius:var(--r-s)}
.approw.on{background:var(--sun-soft)}
.approw b{display:block;font-weight:600;font-size:.95rem;line-height:1.25}
.approw small{font-size:.8rem;color:var(--ink-2)}
.approw input{min-height:44px;text-align:center;padding:.4rem .3rem}
/* long option text (state names) must not widen the form on phones */
select{max-width:100%;min-width:0;text-overflow:ellipsis}
@media (max-width:960px){.tool{grid-template-columns:minmax(0,1fr)}}
form#calc,form#calc fieldset,.field{min-width:0}
input,select,textarea,button{box-sizing:border-box}

/* 2.8: guides intro, glossary A to Z, product lists */
.guide-topics{margin:1rem 0 1.5rem}
.azjump{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 1rem}
.azjump a{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;min-height:2.4rem;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-weight:650;color:var(--ink);background:var(--panel)}
.azjump a:hover{border-color:var(--ink-2)}
h2.azhead{margin:1.6rem 0 .4rem;font-size:1.3rem;scroll-margin-top:90px}
.wd-prodlist{margin:.4rem 0 1rem;padding-left:1.2rem}
.wd-prodlist li{margin:.35rem 0}
.entry figure.wp-block-table{overflow-x:auto;max-width:100%}

/* 2.8: home page sections (price by size, popular calculators, quick answers) */
main.front > .wd-home-sec{display:block}
.wd-home-sec .wd-head{margin:0 0 1.2rem}
.wd-home-sec .wd-head h2{font-family:var(--display);font-weight:780;font-size:clamp(1.6rem,2.8vw,2.2rem);margin:0;letter-spacing:-.01em}
.wd-home-sec .wd-head a{font-weight:650;color:var(--ink);text-decoration:underline;text-decoration-color:var(--sun);text-decoration-thickness:3px;text-underline-offset:.3em;white-space:nowrap}
.wd-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.wd-mini{display:flex;flex-direction:column;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:18px 20px;text-decoration:none;color:var(--ink);position:relative;padding-right:44px}
.wd-mini::after{content:"→";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-weight:700;color:var(--night-2)}
.wd-mini:hover{border-color:var(--night-2)}
.wd-mini b{font-family:var(--display);font-weight:720;font-size:1.12rem}
.wd-mini span{color:var(--ink-2);font-size:.95rem;line-height:1.45}
.wd-price-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.wd-price{display:flex;flex-direction:column;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:18px;text-decoration:none;color:var(--ink)}
.wd-price:hover{border-color:var(--night-2)}
.wd-price .kw{display:inline-block;align-self:flex-start;background:var(--sun-soft);border-radius:999px;padding:3px 10px;font-weight:700;font-size:.9rem;margin-bottom:8px}
.wd-price b{font-family:var(--display);font-weight:760;font-size:1.25rem;line-height:1.2}
.wd-price small{color:var(--ink-2);font-size:.85rem}
.wd-price .pre{display:block;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);color:var(--ink-2);font-size:.85rem}
.wd-note{margin:1rem 0 0;color:var(--ink-2);font-size:.92rem}
.wd-note a{color:var(--ink)}
.wd-home-faq .faq{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-m);padding:4px 22px}
.wd-home-faq .faq details:last-child{border-bottom:0}
@media (max-width:1000px){.wd-price-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px){.wd-mini-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
  .wd-mini-grid{grid-template-columns:1fr;gap:10px}
  .wd-mini{padding:14px 44px 14px 16px}
  .wd-price-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0;padding:0 0 6px;scrollbar-width:none}
  .wd-price-row::-webkit-scrollbar{display:none}
  .wd-price{flex:0 0 70%;scroll-snap-align:start}
  .wd-home-sec .wd-head{flex-wrap:wrap}
}
