.ael-diagram{--ad-navy:#112c45;--ad-orange:#c77b21;--ad-soft:#eaf0f3;--ad-gray:#74838e;width:min(100%,1080px);margin:44px auto 36px;color:var(--ad-navy);font-family:inherit}.ael-diagram *{box-sizing:border-box}.ael-diagram svg{display:block;width:100%;height:auto;overflow:visible}.ael-diagram strong,.ael-diagram small{display:block}.ad-icon{width:48px!important;height:48px!important;margin:0 auto 16px;color:var(--ad-navy)}.ad-flow-row{display:flex;align-items:center;justify-content:center;gap:22px}.ad-node{text-align:center;flex:0 1 220px;min-width:0;line-height:1.6}.ad-node strong{font-size:18px;letter-spacing:.02em}.ad-node small{font-size:13px;color:var(--ad-gray);margin-top:4px}.ad-link{height:1px;flex:1 1 100px;background:#cad2d8;position:relative;max-width:150px}.ad-link:before{content:'';position:absolute;inset:0;background:var(--ad-orange);transform:scaleX(var(--p,0));transform-origin:left}.ad-link:after{content:'';position:absolute;right:0;top:-3px;border-left:5px solid #9daab3;border-top:3px solid transparent;border-bottom:3px solid transparent}.ad-battery{display:block;width:min(64%,420px);height:auto;margin:14px auto;mix-blend-mode:multiply}.ad-vertical{display:flex;justify-content:center;align-items:center;gap:20px;height:86px;color:var(--ad-gray);font-size:13px}.ad-wire{height:100%;width:1px;background:#b9c5cc}.ad-charge,.ad-discharge{writing-mode:vertical-rl;font-weight:600}.ad-charge{color:var(--ad-navy);opacity:clamp(.2,calc(1 - (var(--p,0) - .3)*4),1)}.ad-discharge{color:var(--ad-orange);opacity:clamp(.2,calc((var(--p,0) - .55)*5),1)}.ad-physical_flow .ad-charge,.ad-physical_flow .ad-discharge{visibility:hidden}.ad-caption{display:block;text-align:center;font-size:14px}.ad-role-divider{padding:40px 0 30px;text-align:center;color:var(--ad-gray);font-size:13px}.ad-roles .ad-link{background:transparent;border-bottom:1px dashed #a9b6bf}.ad-roles .ad-link:before{background:transparent;border-bottom:1px dashed var(--ad-orange)}.ad-key{display:flex;justify-content:center;gap:24px;margin-top:24px;font-size:12px;color:var(--ad-gray)}.ad-key span:last-child{color:var(--ad-orange)}.ad-chart svg,.ad-revenue svg{max-width:900px;margin:auto}.ad-axis{fill:none;stroke:#ccd5db;stroke-width:1}.ad-gridline{fill:none;stroke:#e9eef1;stroke-width:1}.ad-generation{fill:none;stroke:var(--ad-orange);stroke-width:3;stroke-dasharray:8 6}.ad-demand{fill:none;stroke:var(--ad-navy);stroke-width:3}.ad-controlled{fill:none;stroke:#718b9a;stroke-width:3;opacity:clamp(0,calc((var(--p,0) - .55)*4),1)}.ad-surplus{fill:#eacb92;fill-opacity:calc(.12 + var(--p,0)*.35)}.ad-svg-labels{font-size:18px;fill:#7a8993;text-anchor:middle}.ad-legend{display:flex;gap:24px;justify-content:center;font-size:13px;margin-top:16px}.ad-orange{color:var(--ad-orange)}.ad-energy-stages{display:flex;gap:40px;justify-content:center;margin:30px 0 8px;font-size:18px;font-weight:600}.ad-stage{opacity:clamp(.32,calc(1 - (var(--p,0)*3 - var(--i,0) - .5)*(var(--p,0)*3 - var(--i,0) - .5)),1)}.ad-market-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;text-align:center}.ad-market strong{font-size:24px;margin:20px 0 10px}.ad-market span{font-size:15px}.ad-market small{font-size:13px;color:var(--ad-gray);margin-top:8px}.ad-icon-disc{width:108px;height:108px;margin:auto;border-radius:50%;background:radial-gradient(circle,#fff 36%,#edf2f5 38%,#e6edf1 55%,#f4f7f8 58%);display:grid;place-items:center}.ad-icon-disc .ad-icon{margin:0;width:58px!important;height:58px!important}.ad-unit-rule{height:1px;background:#e4eaee;margin:48px auto;width:80%}.ad-unit-metric{text-align:center;font-size:27px;margin-bottom:35px}.ad-unit-metric b{color:var(--ad-orange);font-size:44px}.ad-owner-row{gap:50px}.ad-collector{width:65%;height:25px;margin:18px auto 30px;border:1px solid #c8d3da;border-top:0;position:relative}.ad-collector:after{content:'';position:absolute;width:1px;height:30px;top:24px;left:50%;background:#c8d3da}.ad-unit>.ad-node{margin:0 auto}.ad-cyber{min-height:220px}.ad-cyber .ad-node{flex-basis:260px}.ad-cyber .ad-node strong{font-size:16px}.ad-revenue-base{fill:none;stroke:#d6dfe4;stroke-width:2}.ad-revenue-line{fill:none;stroke:var(--ad-navy);stroke-width:3;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p,0))}.ad-revenue-point{fill:var(--ad-orange);opacity:clamp(.12,calc((var(--p,0) - var(--threshold))*10 + 1),1)}.ad-revenue-values{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;text-align:center;margin:18px auto;max-width:900px}.ad-revenue-values small{font-size:13px;color:var(--ad-gray);margin-bottom:5px}.ad-revenue-values strong{font-size:20px;color:var(--ad-navy)}.ad-revenue-values>div{opacity:clamp(.4,calc((var(--p,0) - var(--threshold))*10 + 1),1)}.ad-revenue-values>div:last-child strong{color:var(--ad-orange)}.ad-unit-label{font-size:12px;color:var(--ad-gray);text-align:right;max-width:900px;margin:20px auto}.ad-tax{max-width:900px;margin:auto}.ad-tax-head,.ad-tax-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:30px;align-items:center;padding:25px 0;border-bottom:1px solid #e6ebef}.ad-tax-head strong{font-size:19px}.ad-tax-row>span{font-size:16px}.ad-tax-row>strong{font-size:38px;letter-spacing:-.035em}.ad-tax-row>strong:last-child,.ad-tax-head strong:last-child{color:var(--ad-orange)}.ad-tax-row strong small{display:inline;font-size:14px;font-weight:400;margin-left:5px}.ad-tax-difference{margin:40px 0 0 36%;opacity:clamp(.3,calc((var(--p,0) - .6)*4),1)}.ad-tax-difference span{font-size:15px}.ad-tax-difference strong{font-size:62px;color:var(--ad-orange);margin-top:10px;letter-spacing:-.04em}.ad-tax-difference small{display:inline;font-size:20px;margin-left:8px;letter-spacing:0}.ad-process{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:36px 28px;padding:15px 0;isolation:isolate}.ad-process-track{position:absolute;inset:30px 8% auto;height:1px;background:#e3e9ed;z-index:-1}.ad-process-step{text-align:center;opacity:clamp(.3,calc((var(--p,0) - var(--threshold))*9 + 1),1)}.ad-process-number{display:grid;place-items:center;margin:0 auto 18px;width:44px;height:44px;border:1px solid #d7e0e5;border-radius:50%;color:var(--ad-orange);background:white;font-size:14px}.ad-process-step strong{font-size:16px;line-height:1.7}
@media(max-width:650px){.ael-diagram{margin:28px auto}.ad-flow-row{gap:10px}.ad-node{flex-basis:100px}.ad-icon{width:34px!important;height:34px!important;margin-bottom:12px}.ad-node strong{font-size:12px}.ad-node small{font-size:10px;line-height:1.65}.ad-link{flex-basis:18px;min-width:12px}.ad-vertical{height:64px;font-size:11px;gap:13px}.ad-battery{width:85%;max-width:360px}.ad-caption{font-size:12px}.ad-role-divider{padding-top:28px;font-size:11px}.ad-key{display:block;text-align:center;font-size:10px;line-height:1.8}.ad-key span{display:block}.ad-chart svg,.ad-revenue svg{width:100%}.ad-svg-labels{font-size:24px}.ad-legend{font-size:10px;gap:14px}.ad-energy-stages{font-size:15px;gap:28px;margin-top:22px}.ad-market-grid{gap:12px}.ad-icon-disc{width:76px;height:76px}.ad-icon-disc .ad-icon{width:42px!important;height:42px!important}.ad-market strong{font-size:19px;margin:16px 0 8px}.ad-market span{font-size:11px}.ad-market small{font-size:11px}.ad-unit-metric{font-size:22px}.ad-unit-metric b{font-size:35px}.ad-owner-row{gap:16px}.ad-cyber{min-height:150px}.ad-cyber .ad-node strong{font-size:11px}.ad-revenue-values{grid-template-columns:repeat(3,1fr);gap:18px 10px}.ad-revenue-values small{font-size:12px}.ad-revenue-values strong{font-size:18px}.ad-unit-label{font-size:10px;text-align:center}.ad-tax-head,.ad-tax-row{gap:10px;padding:18px 0;grid-template-columns:1fr 1fr 1fr}.ad-tax-head strong{font-size:13px}.ad-tax-row>span{font-size:11px}.ad-tax-row>strong{font-size:24px}.ad-tax-row strong small{font-size:10px;display:block;margin:3px 0 0}.ad-tax-difference{margin:28px 0 0;text-align:center}.ad-tax-difference span{font-size:12px}.ad-tax-difference strong{font-size:48px}.ad-tax-difference small{font-size:15px}.ad-process{grid-template-columns:repeat(2,1fr);gap:24px 20px}.ad-process-step strong{font-size:13px}.ad-process-number{width:38px;height:38px;font-size:12px}.ad-process-track{display:none}}
@media(prefers-reduced-motion:reduce){.ael-diagram{--p:1!important}.ad-stage,.ad-charge,.ad-discharge,.ad-process-step,.ad-revenue-point,.ad-revenue-values>div,.ad-tax-difference{opacity:1!important}.ad-revenue-line{stroke-dashoffset:0!important}.ad-link:before{transform:scaleX(1)!important}}
/* All energy motion is a deterministic function of section scroll progress. */
.ad-energy-motion{width:200px;margin:14px auto 2px;--charge:clamp(0,calc(var(--p,0)/.35),1);--discharge:clamp(0,calc((var(--p,0) - .65)/.35),1)}.ad-energy-motion svg{width:100%;overflow:visible}.ad-energy-guide{fill:none;stroke:#d8e1e7;stroke-width:1.3}.ad-charge-path,.ad-discharge-path{fill:none;stroke-width:3;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1}.ad-charge-path{stroke:#112c45;stroke-dashoffset:calc(1 - var(--charge));opacity:clamp(.15,calc(1 - var(--discharge)*1.2),1)}.ad-discharge-path{stroke:#c77b21;stroke-dashoffset:calc(1 - var(--discharge))}.ad-charge-shell{fill:none;stroke:#112c45;stroke-width:1.5}.ad-charge-level{fill:#c77b21;transform-box:fill-box;transform-origin:left center;transform:scaleX(calc(.15 + var(--charge)*.70 - var(--discharge)*.65))}.ad-stacked{margin:0 auto 64px;max-width:900px}.ad-chart-context{font-size:13px;line-height:1.7;text-align:center;margin:10px 0;color:#74838e}.ad-chart-context:first-child{color:#c77b21}.ad-stack-solar{opacity:calc(.55 + var(--p,0)*.45)}.ad-stack-surplus{fill:none;stroke:#c77b21;stroke-width:2;stroke-dasharray:7 6;opacity:clamp(.2,calc(var(--p,0)*2),1)}.ad-unit-outbound{text-align:center;font-size:13px;color:#74838e;margin:22px 0 0}
@media(max-width:650px){.ad-chart-context{font-size:10px}.ad-stacked{margin-bottom:36px}.ad-energy-motion{width:160px}.ad-unit-outbound{font-size:11px}}
@media(prefers-reduced-motion:reduce){.ad-charge-path,.ad-discharge-path{stroke-dashoffset:0;opacity:1}.ad-charge-level{transform:scaleX(.65)}}
.ad-settlement-line{width:78%;height:16px;border:1px solid #c77b21;border-top:0;margin:22px auto 0;opacity:calc(.3 + var(--p,0)*.7);position:relative}.ad-settlement-line:after{content:'';position:absolute;left:-4px;top:0;border-bottom:6px solid #c77b21;border-left:3px solid transparent;border-right:3px solid transparent}.ad-curtailment-key{flex-wrap:wrap;color:#718b9a;font-size:11px}.ad-discharge-area{fill:#bad6e5;opacity:clamp(0,calc((var(--p,0) - .65)/.35),1)}.ad-energy-copy{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;margin:22px auto;color:#74838e;font-size:12px}.ad-energy-copy span:nth-child(2){color:#112c45}.ad-energy-copy span:last-child{color:#648da1}@media(max-width:650px){.ad-energy-copy{font-size:10px;gap:7px 12px}.ad-curtailment-key{font-size:9px;gap:6px}}

/* v27 arrow precision: anchor tips on the shaft center at all responsive sizes. */
.ael-diagram .ad-link{height:2px}
.ael-diagram .ad-link:after{top:50%;transform:translateY(-50%);border-left-width:7px;border-top-width:4px;border-bottom-width:4px}
.ael-diagram .ad-roles .ad-link,.ael-diagram .ad-roles .ad-link:before{border-bottom-width:2px}
.ael-diagram .ad-wire{width:2px}
.ael-diagram .ad-charge-path,.ael-diagram .ad-discharge-path{stroke-width:2.2;vector-effect:non-scaling-stroke}
.ael-diagram .ad-charge-shell{stroke-width:1.4;vector-effect:non-scaling-stroke}
.ael-diagram .ad-energy-guide{stroke-width:1;vector-effect:non-scaling-stroke}
