.energy-story { width: 100%; min-width: 0; }
.energy-house-scene { position: relative; margin: 0; border: 1px solid var(--rkv-border); border-radius: 24px; overflow: hidden; background: var(--rkv-navy-deep); }
.energy-house-scene video { display: block; width: 100%; height: auto; aspect-ratio: 3/2; object-fit: contain; }
.energy-house-scene > figcaption { position: absolute; bottom: 9px; right: 12px; left: auto; font-size: .65rem; color: white; background: #061e34b8; border-radius: 8px; padding: 5px 8px; }
.energy-house-scene .scene-detail-link { top: 16px; bottom: auto; left: auto; right: 16px; font-size: .7rem; }
.energy-video-navigation { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.energy-video-navigation button { flex: 1 1 150px; min-height: 44px; padding: 10px 14px; border: 1px solid var(--rkv-border); border-radius: 12px; background: transparent; color: var(--rkv-navy); font: 750 .8rem/1.5 var(--rkv-font-body); cursor: pointer; }
.energy-video-navigation button[aria-pressed="true"] { color: white; border-color: var(--rkv-navy); background: var(--rkv-navy); }
.energy-scene-description { max-width: 85ch; margin: 16px 0 8px; min-height: 3.3em; color: var(--rkv-text-soft); font-size: .9rem; line-height: 1.65; }
.energy-video-tools { display: flex; flex-wrap: wrap; gap: 4px 24px; align-items: center; }
.energy-video-tools button { border: 0; background: none; padding: 0; font: inherit; font-size: .82rem; font-weight: 750; cursor: pointer; }
.energy-video-tools a { font-size: .82rem; }
@media(max-width:600px) {
 .energy-house-scene { border-radius: 18px; }
 .energy-house-scene > figcaption { position: static; background: var(--rkv-navy-deep); font-size: .66rem; padding: 7px 10px; border-radius: 0; }
 .energy-house-scene .scene-detail-link { display: none; }
 .energy-video-navigation { gap: 6px; }
 .energy-video-navigation button { flex-basis: calc(50% - 6px); font-size: .74rem; padding-inline: 8px; }
 .energy-scene-description { min-height: 5em; }
}

.energy-assumptions { max-width: 85ch; margin-block: 8px; font-size: .8rem; color: var(--rkv-text-soft); }
.energy-assumptions summary { min-height: 44px; cursor: pointer; display: flex; align-items: center; font-weight: 750; }
.energy-assumptions summary::before { content: "+"; margin-right: 8px; }
.energy-assumptions[open] summary::before { content: "−"; }
