/* Extra story hold lets the next surface cover the stationary sticky scene. */
#story{height:840svh}
#story.scene-unavailable{display:none!important;height:0}
.scenario-premise:has(+ #story.scene-unavailable){display:none}
.scene-unavailable #story-sticky{position:relative;height:auto;overflow:visible}
.scene-unavailable #premise{position:relative;inset:auto;clip-path:none!important;transform:none!important;visibility:visible!important;border-radius:32px}
.scene-unavailable #story-cover,.scene-unavailable #tour-plaques,.scene-unavailable #object-hotspot,.scene-unavailable #status{display:none}
.scene-unavailable #story-canvas{position:relative;inset:auto;height:auto;opacity:1!important}
#story.scene-unavailable + .benefits{margin-top:0}
.benefits{position:relative;z-index:2;margin-top:-100svh;min-height:100svh;box-sizing:border-box;border-radius:32px 32px 0 0;background:#E8EAEC;padding:140px var(--page-gutter) 120px}
.battery-tile>span{display:flex;align-items:center;gap:4px}
.charging-zap{display:inline-block;width:14px;height:14px;flex:none;background:currentColor;mask:url('./assets/bento/zap.svg') center/contain no-repeat;-webkit-mask:url('./assets/bento/zap.svg') center/contain no-repeat}
.battery-animated{position:absolute;right:10px;top:10px;width:34%;height:auto}
.battery-charge-bar{animation:battery-charge 8s ease-in-out var(--bar-delay) infinite;animation-play-state:paused}
.support-icon::after{animation:support-presence 4s ease-in-out infinite;animation-play-state:paused}
.bento-motion-active .battery-charge-bar,.bento-motion-active .support-icon::after{animation-play-state:running}
@keyframes battery-charge{0%,12%,85%,100%{fill-opacity:.2}35%,65%{fill-opacity:1}}
@keyframes support-presence{0%,100%{box-shadow:0 0 0 0 rgba(94,140,118,0)}40%{box-shadow:0 0 0 5px rgba(94,140,118,.16)}75%{box-shadow:0 0 0 8px rgba(94,140,118,0)}}
@media(prefers-reduced-motion:reduce){.battery-charge-bar,.support-icon::after{animation:none}}
.source-tiles .price-tile{align-items:center;gap:2px;line-height:1.15}
.outage-pattern .outage-cell{border-radius:1px}
.support-icon{position:relative;display:block;flex:none;width:34px;height:34px}
.support-icon::after{content:"";position:absolute;right:-2px;top:-2px;width:9px;height:9px;border:2px solid #FAFAFA;border-radius:50%;background:#5E8C76}
.outage-heading>div>img:first-child{width:76px;max-width:76%;align-self:flex-start}
.forecast-logos>img:last-child{margin-bottom:5px}
.benefits .benefit-calculator{position:relative;isolation:isolate;background-image:none}
.benefit-calculator::before{content:"";position:absolute;z-index:-1;pointer-events:none;left:50%;top:var(--graphic-center-y,75%);width:155%;aspect-ratio:880/878;transform:translate(-50%,-50%);background:url('./assets/bento/Beos Logo Outline.svg') center/contain no-repeat;animation:bento-logo-spin 90s linear infinite;animation-play-state:paused}
.bento-motion-active .benefit-calculator::before{animation-play-state:running}
@keyframes bento-logo-spin{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.benefit-calculator::before{animation:none}}
.calculator-icon{display:block;width:18px;height:18px;background:currentColor;mask:url('./assets/header/calculator.svg') center/contain no-repeat;-webkit-mask:url('./assets/header/calculator.svg') center/contain no-repeat}
.benefits-grid{max-width:var(--content-width);margin:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"source outages log" "source support log" "chart chart log" "chart chart calculator";grid-template-rows:auto 140px auto auto;gap:20px}
.benefit{min-width:0;background:#FAFAFA;border-radius:22px;overflow:hidden;box-sizing:border-box}
.benefit h2{margin:0;font-size:clamp(24px,2.1vw,32px);font-weight:600;line-height:1.06;letter-spacing:-.05em}
.benefit-source{grid-area:source;padding:10px;display:flex;flex-direction:column}
.source-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.source-tiles>img,.source-tiles>div{width:100%;aspect-ratio:185/124;object-fit:cover;border-radius:11px;box-sizing:border-box;background:#E8EAEC}
.benefit-source h2{display:flex;align-items:center;justify-content:center;text-align:center;flex:1;padding:26px 25px;margin-top:0}
.battery-tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:12px}
.battery-tile>img{position:absolute;right:10px;top:10px;width:34%}
.battery-tile strong{font-size:42px;font-weight:500;line-height:1;letter-spacing:-.05em}
.battery-tile span{font-size:13px;color:#5E8C76;margin-top:4px}
.price-tile{display:flex;flex-direction:column;justify-content:center;padding:12px;gap:6px;font-size:clamp(19px,1.65vw,26px);font-weight:600;letter-spacing:-.055em}
.price-tile span{display:flex;align-items:center;gap:6px;white-space:nowrap}.price-tile img{width:24px;height:24px}
.benefit-outages{grid-area:outages;padding-top:38px;display:flex;flex-direction:column;justify-content:space-between;gap:30px}
.outage-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px}
.outage-heading>div{width:100px;flex-shrink:0;display:flex;flex-direction:column;gap:12px}.outage-heading img{width:100%;max-height:28px;object-fit:contain}
.outage-pattern{display:grid;grid-template-columns:repeat(16,1fr);gap:1px}.outage-cell{height:33px;background:#F1F2F3;display:grid;place-items:center}.outage-cell.active{background:#C2CCD6}.outage-cell.amber{background:#F7EFE2}.outage-cell.amber.active{background:#D58924}.outage-cell img{width:16px;height:16px;opacity:.5}.outage-cell.active img{opacity:1}.outage-cell.amber.active img{filter:brightness(0) invert(1)}
.benefit-support{grid-area:support;display:grid;place-items:center;padding:24px;background-color:#C2CCD6;background-image:linear-gradient(#272D4009 1px,transparent 1px),linear-gradient(90deg,#272D4009 1px,transparent 1px);background-size:50px 50px}
.support-pill{display:flex;align-items:center;justify-content:center;gap:12px;background:#FAFAFA;border-radius:60px;padding:20px;box-shadow:0 12px 14px #272D4029}.support-pill img{width:34px;height:34px}.support-pill h2{font-size:21px;white-space:nowrap}
.benefit-log{grid-area:log;display:flex;flex-direction:column;padding:20px}.schedule-image{display:block;width:100%;height:auto}.benefit-log h2{padding:24px 20px;margin-top:auto}
.benefit-chart{grid-area:chart;padding:10px;display:flex;flex-direction:column}.chart-image{width:100%;height:auto;display:block;border-radius:12px}.chart-caption{display:flex;gap:24px;align-items:flex-end;padding:22px 20px 18px}.chart-caption>div:first-child{flex:1}.chart-caption p{font-size:15px;line-height:1.3;letter-spacing:-.025em;margin:10px 0 0}.forecast-logos{display:flex;align-items:center;gap:22px;width:230px}.forecast-logos img{width:calc(50% - 11px);height:auto;max-height:60px;object-fit:contain}
.benefit-calculator{grid-area:calculator;min-height:230px;padding:38px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;text-align:center;color:#FAFAFA;background:#D58924 url('./assets/bento/Beos Logo Outline.svg') center/cover no-repeat}
.bento-calculate{display:flex;align-items:center;gap:12px;border:0;border-radius:12px;padding:18px 28px;background:#FAFAFA;color:#D58924;font:inherit;cursor:pointer}.bento-calculate img{width:18px;height:18px}.bento-calculate{transition:background-color 200ms ease-out}@media(hover:hover){.bento-calculate:not(:disabled):hover{background:#D5D7DB}}@media(prefers-reduced-motion:reduce){.bento-calculate{transition:none}}.bento-calculate:focus-visible{outline:2px solid #272D40;outline-offset:4px}
@media(max-width:1100px){.benefits-grid{gap:14px}.outage-heading{padding:0 20px;flex-wrap:wrap}.outage-heading>div{flex-direction:row;width:100%;gap:16px}.outage-heading img{width:80px}.support-pill{padding:15px;gap:8px}.support-pill h2{font-size:16px}.chart-caption{flex-direction:column;align-items:stretch}.forecast-logos{align-self:flex-end}.benefit-source h2{padding:22px 12px}.battery-tile strong{font-size:34px}}
@media(max-width:760px){.benefits{padding:72px var(--page-gutter)}.benefits-grid{grid-template-columns:1fr 1fr;grid-template-areas:"source outages" "source support" "chart chart" "log calculator";grid-template-rows:auto auto auto auto}.benefit h2{font-size:24px}.benefit-support{padding:16px}.support-pill{flex-direction:column;border-radius:24px}.support-pill h2{white-space:normal;text-align:center}.benefit-log{padding:12px}.benefit-log h2{padding:20px 8px}.price-tile{font-size:19px}.battery-tile strong{font-size:30px}.battery-tile span{font-size:10px}.outage-heading{padding:0 16px}.benefit-calculator{padding:26px 16px}}
@media(max-width:480px){.benefits-grid{display:flex;flex-direction:column;gap:16px}.benefit-source h2{padding:26px 20px}.price-tile{font-size:25px}.battery-tile strong{font-size:42px}.battery-tile span{font-size:13px}.outage-heading{flex-wrap:nowrap;padding:0 24px}.outage-heading>div{width:90px;flex-direction:column}.support-pill{flex-direction:row;padding:20px}.support-pill h2{font-size:20px}.benefit-support{min-height:140px}.chart-caption{padding:20px 12px}.benefit-log h2{padding:26px 18px}.benefit-log .schedule-image{max-height:380px;object-fit:contain}.forecast-logos{width:210px}}
.benefit.benefit-reports{padding:10px}
.reports-image{display:block;width:100%;height:auto;border-radius:10px}
.reports-copy{padding:22px 20px 18px}
.benefit-reports .reports-copy h2{padding:0;margin:0}
.reports-copy p{margin:12px 0 0;font-size:16px;line-height:1.5;letter-spacing:-.025em;color:#272D40}
@media(max-width:1100px){.reports-copy{padding:20px 12px 18px}.reports-copy h2 br{display:none}}
@media(max-width:480px){.reports-image{max-height:380px;object-fit:contain}.reports-copy{padding:22px 18px}}
