/* A solar-plus-flow-storage chapter within the TrueLens presentation. */
.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0;white-space:nowrap}
.storage-section{display:grid;grid-template-columns:1fr 1fr;gap:50px 65px;padding-top:80px;padding-bottom:70px;background:#e4e7dc;border-top:1px solid var(--line)}
.storage-intro h2{font-size:clamp(38px,4.3vw,68px);line-height:1.08;letter-spacing:-.06em;margin:30px 0}.storage-intro h2 em{color:#526a38}.storage-intro>p{font-size:14px;line-height:1.8;max-width:520px;color:#59614f}.storage-intro .storage-proposal{margin-top:20px;color:var(--ink)}.storage-source{display:inline-flex;gap:30px;margin-top:24px;padding-bottom:7px;border-bottom:1px solid #a1ad91;font:9px var(--mono)}.storage-source:hover{color:#577829}
.flow-illustration{background:#f1f2e9;border:1px solid #b7c3a8;align-self:center;padding:25px 29px 20px;position:relative;overflow:hidden}.flow-label{display:flex;justify-content:space-between;gap:15px;font:8px var(--mono);letter-spacing:.6px;color:#63764f}.flow-label>span:last-child{color:#80906e}.flow-top{display:flex;align-items:center;gap:18px;padding:27px 0 22px;border-bottom:1px solid #ced6c3}.flow-sun{font:43px var(--serif);color:#627d3e}.flow-top strong{font-size:18px;font-weight:400;display:block;letter-spacing:-.4px}.flow-top div>span{font:8px/1.8 var(--mono);color:#728163;display:block;margin-top:5px}.flow-top b{font-size:30px;font-weight:400;margin-left:auto;color:#698e3e}
.flow-machine{display:grid;grid-template-columns:1fr .85fr 1fr;align-items:center;gap:27px;position:relative;padding:37px 12px 28px}.flow-tank{border:1px solid #8eaa6c;border-radius:50% / 9%;position:relative;height:150px;z-index:2;overflow:hidden;display:flex;align-items:center;flex-direction:column;justify-content:space-between;padding:18px 4px 16px;background:#e8eedf;box-shadow:inset 10px 0 20px #42532808}.flow-tank>span{font:12px var(--mono);z-index:1}.flow-tank small{font:8px var(--mono);position:relative;z-index:1}.flow-tank i{position:absolute;left:0;right:0;bottom:0;height:65%;background:linear-gradient(0deg,#b9d195aa,#c4df9b40);border-top:1px solid #afc28c;border-radius:50% / 6%;animation:electrolyte-drift 6s ease-in-out infinite alternate}.tank-b{border-color:#7e9da3;background:#e4edef}.tank-b i{background:linear-gradient(0deg,#a1c3caaa,#c3dee140);border-color:#9abdc5;animation-delay:-3s}.flow-stack{height:134px;background:#253622;color:#dbebce;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;z-index:2;border:1px solid #4e663c;box-shadow:0 10px 25px #233a1820}.flow-stack>span{font-size:25px;color:#c5fc62;line-height:.8}.flow-stack strong{font:9px var(--mono);letter-spacing:1px}.flow-stack div{font:34px var(--sans);color:#9bbe76;line-height:1}.flow-stack small{font:8px var(--mono);color:#a9bd96}.flow-pipe{position:absolute;top:80px;bottom:56px;width:29%;border:1px dashed #7d995b;border-radius:12px;z-index:1}.pipe-a{left:19%;animation:pipe-pulse 3s ease-in-out infinite}.pipe-b{right:19%;border-color:#799fa8;animation:pipe-pulse 3s ease-in-out infinite reverse}.flow-pipe:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#93b965;left:45%;top:-4px;animation:pipe-packet 3s ease-in-out infinite}.pipe-b:after{background:#89b4bf;animation-delay:-1.5s}.flow-instruments{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:2px 0 25px}.flow-instruments>span{border:1px solid #c4cfb7;font:7px var(--mono);color:#657554;padding:6px}.flow-bottom{border-top:1px solid #ced6c3;border-bottom:1px solid #ced6c3;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:19px 0;font:9px var(--mono)}.flow-bottom strong{font:12px var(--sans)}.flow-bottom b{font-size:22px;font-weight:400;color:#6e8b48}.flow-note{font:8px/1.7 var(--mono);color:#7a856d;margin-top:17px}
.storage-questions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border-top:1px solid #bdc8af;padding-top:31px}.storage-questions article>span{font:8px var(--mono);letter-spacing:.6px;color:#768569}.storage-questions h3{font-size:22px;letter-spacing:-.7px;margin:15px 0 12px}.storage-questions p{font-size:12px;line-height:1.8;color:#68715d}.storage-questions a{display:inline-block;font:9px var(--mono);border-bottom:1px solid #a6b793;margin-top:18px;padding-bottom:5px}
.analytics-tabs{gap:30px}.analytics-tabs button{white-space:nowrap}.storage-balance{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:20px 0 4px}.storage-balance[hidden]{display:none}.storage-balance>div{border-left:1px solid #536949;padding-left:17px}.storage-balance span{display:block;color:#a0b192;font:8px/1.5 var(--mono)}.storage-balance strong{display:block;font:27px var(--sans);font-weight:400;color:#d9e9cb;letter-spacing:-.8px;margin:8px 0}.storage-balance small{font:8px/1.6 var(--mono);color:#8e9e83}.storage-soc-line{fill:none;stroke:#e4b58b;stroke-width:2.4;stroke-linejoin:round}.storage-target-line{stroke:#e4b58b;stroke-width:1;stroke-dasharray:3 6;opacity:.5}#analytics-plot[data-view=storage]{max-height:550px}#analytics-plot[data-view=storage] .plot-dot{fill:#e4b58b}
.motion-paused .flow-tank i,.motion-paused .flow-pipe,.motion-paused .flow-pipe:after{animation-play-state:paused}
@keyframes electrolyte-drift{from{transform:translateY(0)}to{transform:translateY(-5px)}}@keyframes pipe-pulse{0%,100%{opacity:.5}50%{opacity:1}}@keyframes pipe-packet{0%,100%{left:15%}50%{left:85%}}
@media(max-width:1100px){.storage-section{gap:35px}.flow-illustration{padding:22px}.flow-machine{gap:18px;padding-left:0;padding-right:0}.flow-tank{height:135px}.flow-label{font-size:7px}.flow-stack{height:123px}.storage-questions{gap:30px}.storage-questions h3{font-size:20px}.desktop-nav{gap:19px}}
@media(max-width:800px){.storage-section{grid-template-columns:1fr;padding-top:55px;padding-bottom:50px}.storage-intro h2{font-size:52px}.flow-illustration{width:100%;max-width:610px}.storage-questions{gap:23px}.storage-questions h3{font-size:19px}.flow-machine{gap:40px}.flow-tank{height:160px}.analytics-tabs{gap:20px}.storage-balance{gap:10px}.storage-balance>div{padding-left:12px}.storage-balance strong{font-size:23px}}
@media(max-width:600px){.storage-intro h2{font-size:42px}.storage-intro>p{font-size:13px}.flow-illustration{padding:19px 16px}.flow-label{font-size:6px;letter-spacing:.3px;gap:10px}.flow-machine{gap:20px;padding-top:30px}.flow-tank{height:130px}.flow-tank>span{font-size:10px}.flow-tank small{font-size:7px}.flow-stack{height:115px;gap:8px}.flow-stack small{font-size:7px}.flow-top strong{font-size:17px}.flow-top div>span{font-size:7px}.flow-instruments{gap:4px;margin-bottom:19px}.flow-instruments>span{font-size:6px;padding:5px}.flow-bottom{font-size:8px}.flow-bottom strong{font-size:11px}.flow-note{font-size:7px}.storage-questions{grid-template-columns:1fr;gap:25px}.storage-questions h3{font-size:22px;margin-top:10px}.analytics-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.analytics-tabs button{font-size:11px}.storage-balance{grid-template-columns:1fr;gap:16px}.storage-balance>div{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;column-gap:15px}.storage-balance strong{margin:0;text-align:right;font-size:24px}.storage-balance small{grid-column:1/-1;margin-top:7px}.storage-balance span{font-size:8px}.flow-pipe{top:65px}}
@media(prefers-reduced-motion:reduce){.flow-tank i,.flow-pipe,.flow-pipe:after{animation:none!important}}
