/* Sunlight, clear numbers and everyday life. Shared across the working and reading surfaces. */
:root{--ink:#123d32;--muted:#536860;--line:#d8e2dc;--soft:#f1f6f2;--accent:#116b4d;--pale:#fff3bc;--sun:#ffcd38;--sky:#dcecf5;--clay:#c84d2b;--max:1320px}
body{background:#fdfefb;color:var(--ink)}
.header{background:#fdfefb;color:var(--ink);border-bottom:1px solid var(--line)}
.header-inner{min-height:86px}
.header .brand,.header .brand span,.header .nav a,.header .locale{color:var(--ink)}
.brand{display:inline-flex;align-items:center;gap:4px;font-family:Georgia,serif;font-size:1.75rem}
.brand:before{content:"";display:block;width:27px;height:27px;border-radius:50%;background:var(--sun);margin-right:8px;flex-shrink:0}
.header .locale{border-color:var(--line);font-size:.875rem}
.header .nav a{padding:9px 0;font-size:.9375rem}
.header .nav a[aria-current=page]{text-decoration-color:var(--accent);text-underline-offset:9px}
.button{background:var(--accent);border-color:var(--accent);border-radius:4px;font-size:1rem}
.button:hover{background:#0b4f39;border-color:#0b4f39}
.button.secondary{background:transparent;color:var(--ink);border-color:#b1c8bb}
.button.sun{background:var(--sun);border-color:var(--sun);color:var(--ink)}
.button.sun:hover{background:#f4bf20;border-color:#f4bf20}
.intro:has(+.workspace-switch){padding:31px 0 26px}
.intro:has(+.workspace-switch) h1{font-size:clamp(2rem,3.25vw,3rem)}
.intro:has(+.workspace-switch) .eyebrow{display:flex;align-items:center;gap:10px;color:var(--accent)}
.intro:has(+.workspace-switch) .eyebrow:before{content:"";height:9px;width:28px;background:var(--sun)}
.visual-calculator{gap:40px;grid-template-columns:372px minmax(0,1fr)}
.inputs-panel{border-color:#c5d5ca;border-radius:9px;box-shadow:0 6px 24px #183d3007}
.wizard-top{background:#ffefad;border-top:5px solid var(--sun)}
.wizard-top p,.wizard-top h2,#step-position{color:var(--ink)}
.step-nav{background:#fff8dd;border-bottom:1px solid #e8dfb9}
.step-nav button{font-size:.875rem;min-height:48px}
.step-nav button:hover{background:#ffe998}
.step-nav button[aria-current=step]{border-color:var(--ink);color:var(--ink)}
.quick-jumps button{background:#f0f6f2}.quick-jumps span{font-size:.8125rem}
.wizard-step .step-tip,.wizard-step .hint{font-size:.8125rem}
.wizard-direction .button:not(.secondary){background:var(--sun);border-color:var(--sun);color:var(--ink)}
.wizard-direction .button:not(.secondary):hover{background:#f4bf20}
.visual-calculator>.result{border-top:4px solid var(--accent);padding-top:21px}
.metric-row{border:0;background:#e8f1ed;border-radius:5px;padding:0 20px}
.metric{padding:20px 20px 20px 0}.metric+.metric{border-left-color:#c8dbcf}
.metric b{font-size:2.25rem;color:#0b523a}
.capacity-column.is-selected{background:#fff1ae}.capacity-column.is-selected .capacity-fill{background:var(--accent)}
.supply-direct{background:#d3a119}.supply-stored{background:var(--accent)}.supply-grid{background:#cbd6db}
.notice{background:var(--sky);border-left-color:#257194;border-radius:0 4px 4px 0}
.country-grid .country{background:#f1f6f2}
footer{background:#133f32;color:#eef5ef;margin-top:60px;padding:42px 0}
footer a,footer nav a{color:#eef5ef}
.aside{background:#fff4bf;padding:23px;border-top:4px solid var(--sun);border-radius:0 0 5px 5px}
.article{color:#293e35}.article h2,.article h3{color:var(--ink)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-color:#b55325}
@media(max-width:1100px){.visual-calculator{grid-template-columns:340px minmax(0,1fr);gap:28px}}
@media(max-width:850px) and (min-width:761px){.visual-calculator{grid-template-columns:310px minmax(0,1fr);gap:22px}}
@media(max-width:760px){.header-inner{min-height:0}.brand{font-size:1.5rem}.brand:before{width:23px;height:23px}.header .nav a{font-size:.875rem}.nav{gap:18px}.visual-calculator{grid-template-columns:1fr;gap:24px}.intro:has(+.workspace-switch){padding:25px 0 22px}.metric-row{padding:0 15px}.metric b{font-size:2rem}.workspace-switch{background:#fdfefb!important}.workspace-switch button[aria-pressed=true]{background:var(--ink);border-color:var(--ink)}footer{margin-top:35px}}

/* Editorial pages have their own rhythm; the calculator stays a compact workspace. */
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.home-hero{display:grid;grid-template-columns:1fr 1.12fr;margin:34px 0 76px;align-items:stretch}
.home-hero-copy{background:var(--sun);padding:52px 45px;display:flex;flex-direction:column;align-items:flex-start}
.home-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3rem,5.3vw,5rem);line-height:1.04;letter-spacing:-.045em;margin:18px 0 26px}
.home-hero-copy>p:not(.eyebrow){font-size:1.08rem;line-height:1.7;max-width:420px;margin:0 0 27px}
.home-secondary{font-size:.9rem;margin-top:19px;text-underline-offset:4px}
.solar-photo{margin:0;min-width:0;position:relative}
.solar-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.solar-photo figcaption{font-size:.7rem;line-height:1.4;color:var(--muted);padding:9px 0}
.solar-photo figcaption a{color:inherit}
.home-hero .solar-photo{background:var(--soft)}
.home-hero .solar-photo img{height:100%;object-position:34% center}
.home-hero figcaption{position:absolute;right:10px;bottom:8px;left:10px;text-align:right;color:white;text-shadow:0 1px 3px #000;padding:4px 6px;background:#173b2caa;left:auto}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:30px}
.section-heading h2,.home-principle h2{font-family:Georgia,serif;font-size:clamp(2rem,3.5vw,3.15rem);font-weight:400;letter-spacing:-.025em;line-height:1.15;margin:9px 0 0}
.section-heading>p{max-width:440px;margin:0;color:var(--muted)}
.section-heading>a{white-space:nowrap;font-weight:650;font-size:.9rem}
.country-grid{margin:0;gap:24px}
.country-grid .country{border:1px solid var(--line);border-radius:0;padding:29px 32px;background:#eef5ef}
.country-grid .country:nth-child(2){background:#e5f0f6}
.country-top{display:flex;align-items:center;gap:17px;font-size:.85rem;color:var(--muted)}
.country-top .number{font-family:Georgia,serif;font-size:2.2rem;color:var(--ink);font-weight:400}
.country h3{font-size:1.8rem;margin:15px 0 10px}
.country p{max-width:460px}.country .text-link{display:inline-block;margin:14px 0 0 18px}
.home-principle{margin:72px 0;padding:44px 5%;display:grid;grid-template-columns:1fr 1fr;column-gap:60px;background:#fff2bc;border-left:5px solid var(--sun)}
.home-principle .eyebrow{grid-column:1/-1;margin-bottom:12px}
.home-principle h2{grid-row:2/4;margin:0}.home-principle p:not(.eyebrow){margin:0 0 18px;max-width:440px}
.journey{margin:65px 0}.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.journey-grid a{padding:25px 22px 28px 0;margin-right:24px;display:flex;flex-direction:column;text-decoration:none;position:relative;gap:10px}
.journey-grid a:hover strong{text-decoration:underline;text-underline-offset:4px}
.journey-number{font-size:.8125rem;color:var(--clay);font-weight:700}.journey-grid strong{font-size:1.12rem}.journey-grid span:not(.journey-number){font-size:.9rem;color:var(--muted);line-height:1.6}.journey-grid b{margin-top:auto;padding-top:8px}
.home-journal{margin:70px 0}.home-story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.journal-intro{padding:56px 0 38px;max-width:950px}.journal-intro h1{font:400 clamp(2.6rem,4.8vw,4.4rem)/1.1 Georgia,serif;letter-spacing:-.035em;max-width:900px;margin:17px 0 24px}.journal-intro>p:not(.eyebrow){color:var(--muted);font-size:1.13rem;max-width:700px;margin-bottom:20px}
.journal-toolbar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:20px 0 26px;gap:18px}.journal-toolbar>p{font-size:.85rem;white-space:nowrap;margin:0}
.topic-filters{display:flex;gap:9px;flex-wrap:wrap}.topic-filters button{background:transparent;border:1px solid #bbccc1;padding:10px 15px;color:var(--ink);font:inherit;font-size:.875rem;border-radius:3px;cursor:pointer;min-height:44px}.topic-filters button:hover{background:#edf4ef}.topic-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}
.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 28px}.post-card{min-width:0;border-top:2px solid #98b4a4;display:flex;flex-direction:column;padding-top:21px}.post-card .solar-photo{order:0;margin:-21px 0 21px}.post-card .solar-photo figcaption{font-size:.66rem}.post-copy{display:flex;flex-direction:column;flex:1}.topic-label{font-size:.73rem;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:#835020}.post-card h2{font:400 1.8rem/1.2 Georgia,serif;letter-spacing:-.025em;margin:13px 0}.post-card h2 a{text-decoration:none;color:var(--ink)}.post-card h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.post-copy>p{font-size:.97rem;color:var(--muted);line-height:1.6;margin:0 0 20px}.post-meta{font-size:.79rem;color:var(--muted);margin-top:auto;padding-top:5px}.text-link{font-weight:650;text-underline-offset:4px}.post-copy>.text-link{font-size:.9rem;margin-top:18px}.post-featured{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;border:0;background:var(--sky);padding:0;gap:0}.post-featured .solar-photo{margin:0}.post-featured .solar-photo img{height:100%;min-height:355px}.post-featured .solar-photo figcaption{position:absolute;left:10px;bottom:8px;background:#fffdf1e8;padding:4px 8px}.post-featured .post-copy{padding:38px}.post-featured h2{font-size:clamp(2rem,3vw,2.8rem)}
.breadcrumbs{display:flex;gap:11px;flex-wrap:wrap;font-size:.8rem;color:var(--muted);padding-top:27px}.breadcrumbs a{color:inherit}.story-heading{max-width:960px;padding:38px 0 32px}.story-heading h1{font:400 clamp(2.5rem,4.8vw,4rem)/1.12 Georgia,serif;letter-spacing:-.03em;margin:17px 0 25px}.story-deck{font-size:1.15rem;color:var(--muted);max-width:830px}.story-byline{display:flex;gap:12px 18px;flex-wrap:wrap;font-size:.82rem;margin-top:25px}.story-byline a{color:var(--muted)}
.story-layout{display:grid;grid-template-columns:240px minmax(0,790px);gap:70px;align-items:start;border-top:1px solid var(--line);padding-top:35px}.story-toc{position:sticky;top:28px;font-size:.88rem}.story-toc ol{padding-left:21px;margin:22px 0 30px}.story-toc li{padding:0 0 15px 2px}.story-toc a{text-underline-offset:3px}.story-toc .button{font-size:.9rem}.story-body{font-size:1.02rem;line-height:1.8;padding:0;max-width:none}.story-body>section{scroll-margin-top:24px}.story-body h2{font:400 1.95rem/1.25 Georgia,serif;letter-spacing:-.02em;margin-top:40px;margin-bottom:17px}.story-body h3{font-size:1.2rem}.story-body .solar-photo{margin-bottom:38px}.story-body section:first-of-type h2{margin-top:15px}.article p{overflow-wrap:break-word}.article li{padding-bottom:7px}.decision-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:25px 0;border-block:1px solid var(--line);margin:24px 0}.decision-trio b{font-size:.95rem}.decision-trio p{font-size:.89rem;margin:10px 0 0}.worked-example,.example-box{background:#fff5ca;border-left:4px solid var(--sun);padding:22px;margin:24px 0}.reading-table{width:100%;border-collapse:collapse;margin:24px 0;font-size:.88rem;line-height:1.6;table-layout:fixed}.reading-table th,.reading-table td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.reading-table th{background:#e7f0e9;color:var(--ink);font-weight:650}.reading-table td:first-child{font-weight:650}.story-sources{border-top:1px solid var(--line);margin-top:38px;padding-top:1px}.story-sources li,.story-sources p{font-size:.87rem}.story-next{background:var(--ink);color:white;margin-top:35px;padding:32px}.story-next h2,.story-next a,.story-next .eyebrow{color:white}.story-next .button.sun{color:var(--ink);margin-right:18px;margin-bottom:16px}.story-next h2{margin-top:15px}.story-next>a:not(.button){font-size:.88rem;display:inline-block}.related-stories{margin:70px 0}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:38px}.related-grid .solar-photo{display:none}
.policy-heading{max-width:950px;padding-top:42px}.policy-heading h1{font:400 clamp(2.2rem,4vw,3.5rem)/1.15 Georgia,serif;letter-spacing:-.03em}.policy-layout{display:grid;grid-template-columns:235px minmax(0,790px);gap:65px;align-items:start}.policy-nav nav{display:flex;flex-direction:column;border-top:2px solid var(--sun)}.policy-nav a{padding:12px 9px;border-bottom:1px solid var(--line);font-size:.9rem;text-decoration:none}.policy-nav a[aria-current=page]{background:#fff2bc;font-weight:700}.policy-body{padding:0;max-width:none;font-size:1rem;line-height:1.8}.policy-body .lead{font:400 1.8rem/1.3 Georgia,serif;margin-top:0}.policy-body h2{font:400 1.65rem/1.25 Georgia,serif;margin-top:32px}.contact-block,.policy-status,.storage-controls{background:#edf5ef;padding:25px;margin:24px 0;border-left:4px solid var(--accent)}.contact-block>a{display:block;font-size:clamp(1rem,2.2vw,1.7rem);margin:12px 0;overflow-wrap:anywhere}.contact-block>span{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.contact-block p{font-size:.86rem}.storage-controls .actions{display:flex;flex-wrap:wrap;gap:12px}
.tool-reading{border-top:1px solid var(--line);margin:45px 0;padding-top:25px}.tool-reading h2{font:400 1.75rem Georgia,serif}.tool-reading>div{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:23px 0}.tool-reading>div>a{background:#fff4c4;padding:24px;font-size:1rem;text-decoration:none;line-height:1.5}.tool-reading>div>a:hover{text-decoration:underline}.tool-reading>a{font-size:.9rem}
.site-footer>.wrap{display:block}.footer-brand{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid #426753}.footer-brand p{font:400 1.5rem/1.3 Georgia,serif;margin:0}.site-footer .brand,.site-footer .brand span{color:white}.footer-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:30px 0}.footer-columns h2{font-size:.9rem;margin:0 0 18px;color:#ffdc76}.footer-columns nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-columns nav a{font-size:.87rem;line-height:1.4;text-decoration:none}.footer-columns nav a:hover{text-decoration:underline}.footer-bottom{padding-top:23px;border-top:1px solid #426753;display:flex;justify-content:space-between;gap:15px;color:#bed3c4;font-size:.74rem}
@media(max-width:1050px){.home-hero-copy{padding:35px 30px}.home-hero h1{font-size:3.65rem}.story-layout{grid-template-columns:200px minmax(0,1fr);gap:40px}.policy-layout{grid-template-columns:200px minmax(0,1fr);gap:40px}.post-featured .post-copy{padding:28px}.home-story-grid{gap:20px}.country .text-link{display:block;margin:17px 0 0}.header .nav{gap:22px}.journey-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.home-hero{grid-template-columns:1fr;margin:20px 0 42px}.home-hero-copy{padding:30px 25px 34px}.home-hero h1{font-size:3.6rem}.home-hero .solar-photo img{height:auto;aspect-ratio:4/3}.home-hero-copy>p:not(.eyebrow){font-size:1rem}.home-secondary{font-size:.86rem}.section-heading{display:block;margin-bottom:24px}.section-heading>p,.section-heading>a{display:block;margin-top:20px}.section-heading h2{font-size:2.2rem}.country-grid{gap:18px}.country-grid .country{padding:25px}.home-principle{display:block;padding:28px 24px;margin:42px 0}.home-principle h2{margin-bottom:22px;font-size:2.3rem}.journey{margin:40px 0}.journey-grid a{padding:20px 12px 20px 0;margin-right:15px}.journey-grid strong{font-size:1rem}.journey-grid span:not(.journey-number){font-size:.86rem}.home-story-grid{grid-template-columns:1fr;gap:32px}.home-journal{margin:42px 0}.journal-intro{padding:32px 0 28px}.journal-intro h1{font-size:2.75rem}.journal-intro>p:not(.eyebrow){font-size:1rem}.journal-toolbar{display:block}.journal-toolbar>p{margin-top:18px}.topic-filters{gap:7px}.topic-filters button{font-size:.79rem;padding:9px 12px}.journal-grid{grid-template-columns:1fr;gap:30px}.post-featured{display:block;grid-column:auto}.post-featured .solar-photo img{min-height:0;height:auto;aspect-ratio:4/3}.post-featured .post-copy{padding:25px}.post-card h2{font-size:1.9rem}.journal-grid .post-card:not(.post-featured){padding-top:22px}.journal-grid .post-card:not(.post-featured) .solar-photo{margin-top:-22px}.story-heading{padding:28px 0}.story-heading h1{font-size:2.55rem}.story-deck{font-size:1.04rem}.story-byline{font-size:.77rem;gap:9px 12px}.breadcrumbs{padding-top:21px;font-size:.74rem;gap:8px}.story-layout{display:flex;flex-direction:column;gap:30px;padding-top:25px}.story-toc{position:static;width:100%;background:#eef5ef;padding:20px}.story-toc ol{margin:16px 0 12px}.story-toc li{padding-bottom:11px}.story-toc .button{padding:9px 15px}.story-body{font-size:1rem;width:100%}.story-body h2{font-size:1.75rem}.decision-trio{grid-template-columns:1fr;gap:18px}.decision-trio p{margin-top:7px}.reading-table{border-top:2px solid var(--accent)}.reading-table thead{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.reading-table tbody,.reading-table tr,.reading-table td{display:block;width:100%}.reading-table tr{padding:12px 0;border-bottom:1px solid #b8cdc0}.reading-table td{padding:7px 10px;border:0}.reading-table td:before{content:attr(data-label);display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;margin-bottom:3px}.story-next{padding:25px}.story-next .button{display:inline-block;margin-right:0}.related-stories{margin:40px 0}.related-grid{grid-template-columns:1fr;gap:30px}.policy-heading{padding-top:30px}.policy-layout{display:flex;flex-direction:column;gap:30px}.policy-nav{width:100%}.policy-nav nav{display:grid;grid-template-columns:1fr 1fr}.policy-nav a{font-size:.82rem;padding:12px}.policy-body{width:100%;font-size:.98rem}.policy-body .lead{font-size:1.6rem}.contact-block,.policy-status,.storage-controls{padding:20px}.tool-reading>div{grid-template-columns:1fr;gap:12px}.tool-reading>div>a{padding:18px}.footer-brand{display:block}.footer-brand p{margin:22px 0 0;font-size:1.3rem}.footer-columns{grid-template-columns:1fr 1fr;gap:28px 24px}.footer-columns>div:last-child{grid-column:1/-1}.footer-columns nav a{font-size:.88rem;min-height:26px}.footer-bottom{display:block;font-size:.74rem}.footer-bottom span{display:block;margin-bottom:10px}.header .nav{gap:18px}.header .nav a{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Keep filtered comparisons spacious and worked bill arithmetic easy to scan. */
.button{gap:8px}
.worked-example dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 24px;margin:20px 0;padding:15px 0;border-block:1px solid #dfd3a2}
.worked-example dd{margin:0;font-weight:650;font-variant-numeric:tabular-nums;text-align:right}
@media(min-width:761px){.journal-grid[data-active-topic]:not([data-active-topic=all]){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:400px){.worked-example dl{grid-template-columns:1fr;gap:4px}.worked-example dd{margin-bottom:10px;text-align:left}}
