/* Shared platform pages, outage comparison and complete navigation. */
.technology-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;padding-block:64px}
.technology-hero h1{font-size:clamp(2.6rem,5vw,4.8rem);line-height:1.06;letter-spacing:-.04em;margin:12px 0 24px}
.technology-hero img{width:100%;height:410px;object-fit:cover;border-radius:24px}
.technology-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;counter-reset:steps}
.technology-flow article{position:relative;border-top:2px solid #bcb0ff;padding:24px 0 0}
.technology-flow .step-orb{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#e5ddff;color:#4933ed;font-weight:700;margin-bottom:20px}
.technology-flow h2{font-size:1.35rem;line-height:1.25}
.technology-flow p{font-size:1rem;line-height:1.7}
.release-story{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.release-story p{max-width:65ch}
.release-art{max-width:100%;width:100%;max-height:370px;object-fit:contain;border-radius:20px}
.release-story .patent-note{display:inline-block;font-size:.875rem;padding:8px 14px;background:#eee9ff;border:1px solid #d2c7ff;border-radius:20px}
.outage-section{margin-top:64px;padding-block:70px;border-block:1px solid #d9d4ff;background:linear-gradient(140deg,#f0ebff,#eefaff)}
.outage-section .section-heading{max-width:800px;margin-bottom:30px}
.outage-section h2{font-size:clamp(1.8rem,3.4vw,2.7rem);line-height:1.12}
.outage-target{padding:28px;border-radius:20px;background:#fff;border:1px solid #d6ccff;margin:24px 0}
.outage-target label{display:flex;justify-content:space-between;gap:20px;font-weight:700;font-size:1.05rem}
.outage-target output{color:#4933ed}
.outage-target input[type=range]{appearance:auto;display:block;width:100%;height:30px;margin:24px 0 8px;padding:0;accent-color:#4933ed;cursor:pointer;min-height:0;border:0}
.target-stops{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.target-stops button{font:inherit;font-size:.9rem;border:0;border-radius:8px;background:transparent;color:#526171;min-height:42px;padding:8px 4px;cursor:pointer}
.target-stops button[aria-pressed=true]{background:#ece6ff;color:#3920d8;font-weight:700}
.target-stops button:first-child{text-align:left}.target-stops button:last-child{text-align:right}
.outage-inputs{padding:22px;border:1px solid #d6dbe5;border-radius:16px;background:#fff;margin:20px 0}
.outage-inputs summary{font-weight:700;cursor:pointer;color:#173247;min-height:28px}
.outage-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 16px}
.outage-field-grid label,.outage-design label{display:block;font-size:.875rem;line-height:1.45;font-weight:600;margin-bottom:5px}
.outage-section input:not([type=range]):not([type=checkbox]),.outage-section select{width:100%;padding:8px 10px;min-height:40px;border:1px solid #b8c3d3;border-radius:7px;background:#fff;color:#173247;font:inherit}
.outage-check{display:flex;align-items:flex-start;gap:10px;margin:12px 0;font-size:.95rem;line-height:1.5}
.outage-check input{width:18px;height:18px;margin:3px 0;accent-color:#4933ed;flex:0 0 auto}
.outage-designs,.outage-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}
.outage-design{margin:0;min-width:0;padding:20px;border:1px solid #cfc8e7;border-radius:16px;background:#fff}
.outage-design legend{padding:0 8px;font-weight:700;font-size:1.05rem}
.outage-design .design-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.outage-design .design-fields>div:last-child{grid-column:1/-1}
.outage-design input{font-variant-numeric:tabular-nums}
.outage-section .fine{font-size:.875rem;line-height:1.65}
.outage-result{padding:24px;background:#fff;border:1px solid #cfd6e4;border-radius:16px;min-width:0}
.outage-result h4{font-size:1.1rem;line-height:1.4;margin:0 0 18px}
.outage-verdict{font-size:1.1rem;font-weight:700;color:#865300;min-height:54px;line-height:1.4;margin:0 0 20px}
.outage-verdict.met{color:#08775f}
.outage-metric{margin:18px 0;font-size:.9rem}
.outage-metric>div{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.outage-metric strong{white-space:nowrap;font-size:1rem}
.outage-bar{height:7px;border-radius:5px;background:#e9e7f3;overflow:hidden;margin-top:8px}
.outage-bar span{display:block;height:100%;background:#6952ed;border-radius:5px}
.outage-results-header{margin-top:36px}
.outage-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:24px}
.outage-assumptions{padding:22px 0;border-top:1px solid #cec9e6}
.outage-assumptions summary{font-weight:700;cursor:pointer}
.tool-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.tool-jump a{display:inline-flex;padding:10px 16px;border:1px solid #c9bdff;border-radius:30px;text-decoration:none;color:#3525c5;background:#f4f0ff;font-size:.95rem}
.release-topic-lead{max-width:780px}
.release-topic-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.release-topic-sections article{padding-top:20px;border-top:2px solid #d9d0ff}
.release-topic-sections h2{font-size:1.4rem}
.release-topic-sections p{font-size:1.05rem;line-height:1.75}
.regional-complete .regional-diagram{border:0;background:none;padding:0;margin:0}
.regional-complete .regional-diagram figure{margin:0}
.regional-complete .regional-vector-desktop svg,.regional-complete .regional-vector-mobile svg{width:100%;height:auto;max-height:900px}
.release-phone{width:min(100%,310px);border:8px solid #122c43;border-radius:42px;background:#fff;padding:22px 18px;box-shadow:0 22px 45px #14354a1a;margin:20px auto;min-height:480px}
.release-phone:before{content:'';display:block;width:88px;height:15px;border-radius:10px;background:#122c43;margin:-12px auto 22px}
.release-phone h3{font-size:1.45rem;line-height:1.2;margin:16px 0}
.release-phone .app-reading{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #e0e4ec;font-size:.9rem}
.release-phone .app-action{background:#e9f6f3;border-radius:14px;padding:15px;margin-top:20px;font-size:.9rem;line-height:1.6}
.release-phone .fine{font-size:.75rem;margin-top:8px}
.release-thermal{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}
.release-thermal img{width:100%;height:120px;object-fit:contain}
.release-thermal h3{font-size:1.1rem}
.release-thermal p{font-size:.95rem;line-height:1.65}
.release-home-photo{width:100%;height:auto;border-radius:24px;display:block}
.expanded-planner{max-width:960px}.planner-chapter{padding:20px 0;border-bottom:1px solid #d4d5e5;margin-bottom:18px}.planner-chapter>summary{font-weight:700;font-size:1.2rem;cursor:pointer}.planner-chapter .local-tool-grid{margin-top:24px}.expanded-planner label{font-size:.95rem}.expanded-planner fieldset{margin:25px 0;border:0;padding:0}.expanded-planner legend{font-weight:650;margin-bottom:14px}.expanded-planner .planner-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.expanded-planner .planner-checks input{min-height:0;width:18px;height:18px}.expanded-planner .planner-checks label{display:flex;gap:10px;align-items:flex-start;padding:10px}.expanded-planner textarea{margin:10px 0 20px}#local-brief-text{white-space:pre-wrap}
.footer-intro{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:32px 0;border-bottom:1px solid #cfd3e6}
.footer-intro p{font-size:1rem;margin:10px 0 0;max-width:60ch}
.footer-intro .brand img{width:190px;height:auto}
.comprehensive-footer nav.footer-site-nav{grid-template-columns:1fr 1fr 1.15fr 1fr 1.1fr;gap:28px;margin:30px 0 0}
.footer-contact{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;padding:22px 0;border-top:1px solid #cfd3e6;margin-top:26px;font-size:.9rem}
.footer-identity{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.8rem;color:#526171;padding:0 0 24px}
.finder-update-note{border-left:3px solid #8068ed;background:#f4f1ff;padding:20px 24px;margin-top:24px}
.finder-update-note h2{font-size:1.2rem}.finder-update-note p{font-size:.95rem;line-height:1.7}
:is(.outage-section,.technology-hero) :is(button,a,input,select,summary):focus-visible{outline:3px solid #6d52e8;outline-offset:4px}
@media(max-width:1000px){.outage-designs,.outage-results{grid-template-columns:1fr}.outage-design .design-fields{grid-template-columns:repeat(4,1fr)}.outage-design .design-fields>div:last-child{grid-column:auto}.outage-verdict{min-height:0}.outage-results{gap:16px}.comprehensive-footer nav.footer-site-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.technology-hero,.release-story{grid-template-columns:1fr;gap:24px;padding-block:38px}.technology-hero img{height:260px}.technology-flow,.release-topic-sections{grid-template-columns:1fr;gap:24px}.outage-target{padding:20px 16px}.outage-target label{flex-direction:column;gap:6px}.outage-section{padding-block:44px;margin-top:44px}.outage-field-grid{grid-template-columns:1fr 1fr;gap:16px}.outage-design .design-fields{grid-template-columns:1fr 1fr}.outage-design .design-fields>div:last-child{grid-column:1/-1}.target-stops button{font-size:.8rem}.comprehensive-footer nav.footer-site-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.footer-intro{align-items:flex-start;flex-direction:column}.footer-intro .button{width:auto}.release-thermal{grid-template-columns:1fr}.release-thermal article{display:grid;grid-template-columns:100px 1fr;gap:8px 20px}.release-thermal article img{grid-row:1/3;height:110px}.release-thermal article h3,.release-thermal article p{margin:0}.outage-result{padding:20px}.release-story{padding-block:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Guided outage comparison: everyday choices first, specifications on request. */
.outage-simple{background:linear-gradient(140deg,#f1edff,#f5fbff)}
.outage-simple .section-heading{max-width:790px;margin-bottom:32px}
.outage-simple .section-heading p:not(.eyebrow){font-size:1.1rem;line-height:1.65;max-width:65ch}
.outage-choices{display:grid;grid-template-columns:1fr 1.15fr;gap:32px;align-items:start}
.outage-simple .outage-target{margin:0;padding:26px;background:white;border-radius:18px}
.outage-simple .outage-target label{display:block;font-size:1.05rem;line-height:1.5}
.outage-simple .outage-target output{display:block;margin:26px 0 8px;font-size:2rem;letter-spacing:-.04em}
.outage-step{display:inline-grid;place-items:center;width:26px;height:26px;margin-right:9px;border:1px solid #bbaaff;color:#5138db;border-radius:50%;font-size:.8rem;vertical-align:middle;flex-shrink:0}
.outage-needs{padding:0;border:0;min-width:0;margin:0}
.outage-needs legend{font-weight:700;font-size:1.05rem;line-height:1.5;margin-bottom:16px;padding:0}
.outage-profiles{display:grid;gap:9px}
.outage-profile{display:flex;gap:12px;align-items:center;padding:13px 16px;border:1px solid #d6d6e8;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}
.outage-profile:hover{border-color:#9380e7}
.outage-profile:has(input:checked){border-color:#755ae8;background:#f6f3ff;box-shadow:inset 0 0 0 1px #755ae8}
.outage-simple .outage-profile input[type=radio]{width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:#5b3fe3;flex:0 0 18px;border:0}
.outage-profile strong{display:block;font-size:.98rem;color:#173247;line-height:1.4}
.outage-profile small{display:block;font-size:.85rem;color:#526171;line-height:1.5;margin-top:2px}
.outage-needs>.fine{margin:12px 0 0;color:#59677b}
#outage-custom{font-weight:700;color:#5333c9}
.outage-conditions{display:grid;grid-template-columns:minmax(190px,1fr) minmax(210px,1fr) 1.1fr;align-items:center;gap:20px;padding:22px 0;margin:20px 0 24px;border-block:1px solid #d9d3ec}
.outage-conditions>div{display:flex;align-items:center;gap:12px}
.outage-conditions label{font-size:.875rem;line-height:1.45}
.outage-conditions>div label{max-width:150px}
.outage-simple .outage-conditions select{width:auto;min-width:120px;flex:1}
.outage-conditions .fine{font-size:.8rem;margin:0;color:#59677b}
.outage-conditions .outage-check{margin:0}
.outage-comparison-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.outage-comparison-heading h3{font-size:1.3rem;margin:0;line-height:1.4}
#outage-comparison-target{font-size:.9rem;font-weight:700;white-space:nowrap;color:#5034d5}
.outage-simple #outage-status{min-height:1.5em;margin:8px 0 0;color:#626d7d}
.outage-simple .results-pending{visibility:hidden}
.outage-simple .outage-results{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:20px 0 18px;align-items:start}
.outage-simple .outage-result{border-radius:18px;padding:24px;border:1px solid #d1d8e6;position:relative}
.outage-simple .outage-result.target-met{border-color:#8bbeb1}
.outage-art-group{height:76px;display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:18px}
.outage-art-group>span{display:block;width:86px;height:76px;min-width:0}
.outage-art-group>span[hidden]{display:none}
.outage-art-group svg{width:100%;height:100%;overflow:hidden}
.outage-option-label{font-size:.75rem;font-weight:700;color:#736895;letter-spacing:.15em;margin:0 0 5px}
.outage-simple .outage-result h4{font-size:1.3rem;line-height:1.25;margin:0 0 8px;min-height:1.25em}
.outage-design-description{font-size:.9rem;line-height:1.5;color:#526171;min-height:3em;margin:0 0 20px}
.outage-simple .outage-verdict{font-size:.85rem;line-height:1.5;font-weight:650;min-height:2.9em;margin:0 0 12px;color:#84551b}
.outage-simple .outage-verdict.met{color:#066d56}
.outage-duration{font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.12;font-weight:750;letter-spacing:-.035em;color:#173247;margin:0 0 8px;overflow-wrap:anywhere}
.outage-duration-label{font-size:.8rem;line-height:1.5;color:#5e6a7a;margin:0 0 12px;min-height:2.4em}
.outage-simple .outage-bar{height:6px;background:#eeedf6;margin:14px 0}
.outage-simple .outage-bar span{background:#bc8342}
.outage-simple .target-met .outage-bar span{background:#308f79}
.outage-reason{font-size:.8rem;line-height:1.5;color:#795127;min-height:3.5em;margin:0 0 16px}
.outage-card-details{border-top:1px solid #e3e5ec;padding-top:15px}
.outage-card-details summary{font-size:.85rem;font-weight:600;line-height:1.5;cursor:pointer;color:#5035cb}
.outage-simple .outage-metric{font-size:.8rem;margin:16px 0}
.outage-simple .outage-metric strong{font-size:.85rem;white-space:normal;text-align:right}
.outage-simple .outage-equipment-detail{font-size:.8rem;margin:18px 0 0;border-top:1px solid #e3e5ec;padding-top:14px}
.outage-equipment-detail>div{display:flex;justify-content:space-between;gap:14px;margin:9px 0;line-height:1.5}
.outage-equipment-detail dt{color:#536274}.outage-equipment-detail dd{font-weight:600;margin:0}
.outage-simple #outage-scope{color:#59677b;max-width:85ch;margin:16px 0 26px}
.outage-advanced{border:1px solid #cec6e9;border-radius:14px;padding:19px 24px;background:#ffffffb5;margin:26px 0}
.outage-advanced>summary{cursor:pointer;color:#5034d5;font-size:1rem;font-weight:650;line-height:1.5}
.outage-advanced>h4{font-size:1.1rem;margin:24px 0 8px}
.outage-simple .outage-actions{margin-top:22px}
.outage-simple .outage-assumptions{margin-top:30px;padding-top:20px}
.outage-simple button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1000px){.outage-choices{gap:22px}.outage-conditions{grid-template-columns:1fr 1fr}.outage-conditions>.fine{grid-column:1/-1}.outage-simple .outage-result{padding:20px}.outage-simple .outage-result h4{font-size:1.2rem}.outage-simple .outage-design-description{min-height:4.5em}.outage-simple .outage-verdict{min-height:4.5em}}
@media(max-width:760px){.outage-choices{grid-template-columns:1fr;gap:26px}.outage-simple .outage-results{grid-template-columns:1fr}.outage-simple .outage-design-description,.outage-simple .outage-verdict,.outage-duration-label,.outage-reason{min-height:0}.outage-simple .outage-target label{display:block}.outage-simple .outage-target{padding:22px}.outage-simple .outage-target output{margin-top:18px;font-size:1.65rem}.outage-simple .outage-result{padding:24px}.outage-art-group{justify-content:flex-start;height:66px;margin-bottom:14px}.outage-art-group>span{height:66px}.outage-option-label{position:absolute;right:24px;top:26px}.outage-duration{font-size:2.3rem}.outage-comparison-heading{align-items:flex-start}.outage-comparison-heading h3{font-size:1.2rem}.outage-simple .outage-needs>.fine{font-size:.8rem}.outage-advanced{padding:19px}.outage-simple .target-stops{gap:0}.outage-simple .target-stops button{font-size:.8rem;overflow-wrap:anywhere}}
@media(max-width:450px){.outage-conditions{grid-template-columns:1fr;gap:16px}.outage-conditions>div{justify-content:space-between}.outage-conditions>div label{max-width:none}.outage-simple .outage-conditions select{flex:0 1 140px}.outage-comparison-heading{display:block}.outage-comparison-heading h3{margin-bottom:10px}.outage-advanced .outage-field-grid,.outage-advanced .design-fields{grid-template-columns:1fr}.outage-advanced .design-fields>div:last-child{grid-column:auto}}
/* Daily cost comparison: a short guided form and compact, readable results. */
.daily-intro.page-intro{padding-block:40px 24px}
.daily-intro h1{max-width:850px;font-size:clamp(2rem,4.3vw,3.4rem);line-height:1.12;margin-bottom:16px}
.daily-intro .lead{font-size:1.13rem;max-width:760px;line-height:1.65}
.daily-intro .tool-jump{margin-top:20px}
.daily-simple{padding:12px 0 38px}
.daily-simple h2{font-size:1.4rem;line-height:1.4;margin:0 0 18px}
.daily-simple h3{font-size:1.2rem;line-height:1.35;margin:0 0 10px}
.daily-simple .fine{font-size:.875rem;line-height:1.6;margin:12px 0;color:#526171}
#daily-form{padding:24px;border:1px solid #d9d1ee;background:linear-gradient(130deg,#f1edff,#f5f9ff);border-radius:18px}
.daily-controls{display:grid;grid-template-columns:1.25fr 1fr .65fr;gap:18px;align-items:end}
.daily-simple label{display:block;font-size:.88rem;font-weight:650;line-height:1.5;margin:0 0 7px;color:#19354c}
.daily-simple select,.daily-simple input[type=number]{background:#fff;border:1px solid #bfc9d9;border-radius:8px;font:inherit;font-size:.94rem;color:#153148;width:100%;min-height:44px;padding:9px 12px}
.daily-input-summary{display:flex;flex-wrap:wrap;gap:8px 24px;margin:17px 0 4px;font-size:.82rem;line-height:1.5}
.daily-input-summary>span{display:flex;flex-wrap:wrap;gap:5px 8px}.daily-input-summary>span>span{color:#566378}
.daily-input-summary strong{color:#173247}
.daily-disclosure{border:0;border-top:1px solid #d6dae7;border-radius:0;padding:15px 0;margin:0;background:none}
.daily-disclosure>summary{cursor:pointer;font-size:.94rem;line-height:1.5;color:#5334d0;font-weight:650}
#daily-details{padding-bottom:0;margin-top:14px}
.daily-field-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px 16px;margin-top:20px;align-items:end}
.daily-simple .daily-check{display:flex;gap:10px;align-items:center;margin-top:18px;font-weight:500}
.daily-simple input[type=checkbox]{width:18px;height:18px;min-height:18px;padding:0;margin:0;flex:none;accent-color:#5b3fe3}
#daily-status{min-height:1.5em;margin:15px 0 7px;font-size:.8rem;color:#64718a}
.daily-simple #scenario-results{background:none;padding:0;margin:0;border:0;box-shadow:none}
.daily-results.daily-pending{visibility:hidden}
.daily-simple .daily-scope{margin:0 0 15px;max-width:900px}
.daily-results>h2{margin-bottom:7px}
.daily-cost-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}
.daily-cost-card{position:relative;border:1px solid #d4dce8;border-radius:14px;padding:21px 22px;background:#fff;min-width:0}
.daily-cost-card:nth-child(2){background:#f5f2ff;border-color:#d3c7ff}
.daily-cost-card:nth-child(3){background:#e9f8f3;border-color:#a4cebe}
.daily-letter{display:block;font-size:.73rem;color:#687089;font-weight:700;letter-spacing:.1em;margin-bottom:6px}
.daily-simple .daily-cost-card h3{font-size:1.12rem;margin:0 0 6px}
.daily-cost-card p{font-size:.85rem;line-height:1.5;color:#526171;min-height:3em;margin:0 0 14px;max-width:none}
.daily-cost-card>strong{display:block;color:#112f44;font-size:clamp(1.75rem,3.2vw,2.35rem);line-height:1.2;letter-spacing:-.04em;overflow-wrap:anywhere}
.daily-cost-card>small{display:block;font-size:.78rem;color:#526171;margin:3px 0 14px}
.daily-cost-track{height:5px;border-radius:4px;background:#dce3ea;overflow:hidden}
.daily-cost-track span{display:block;height:100%;background:#778ba0;border-radius:inherit}
.daily-cost-card:nth-child(2) .daily-cost-track span{background:#7c59dd}
.daily-cost-card:nth-child(3) .daily-cost-track span{background:#239477}
.daily-savings{background:#f5f3fd;border-radius:14px;padding:20px 24px;margin:0}
.daily-simple .daily-savings h3{margin:0 0 15px}
.daily-saving-row{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:18px;align-items:center;padding:10px 0}
.daily-saving-row+.daily-saving-row{border-top:1px solid #ddd8ee;margin-top:6px;padding-top:16px}
.daily-saving-row h4{font-size:.94rem;line-height:1.5;margin:0}
.daily-saving-row small{display:block;font-size:.73rem;color:#59677c;line-height:1.5}
.daily-saving-row strong{display:block;font-size:1.45rem;line-height:1.4;color:#0a725d;overflow-wrap:anywhere}
.daily-saving-row+.daily-saving-row strong{font-size:1.1rem;color:#5136bc}
.daily-saving-row .higher-cost{color:#a74e25!important}
.daily-simple .daily-savings>.fine{font-size:.78rem;margin-bottom:0;max-width:95ch}
.daily-rate-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:16px 0 0;border-top:1px solid #d6dae7;margin-top:18px}
.daily-rate-strip span{display:block;font-size:.78rem;line-height:1.5;color:#526171}
.daily-rate-strip strong{display:block;font-size:.98rem;line-height:1.5;margin-top:3px}
.daily-simple .daily-rate-note{font-size:.78rem;margin-top:5px}
.daily-schedule-copy{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:20px 0}
.daily-schedule-copy h4{font-size:1rem;margin:0 0 6px}.daily-schedule-copy p{font-size:.9rem;line-height:1.65;margin:0}
.daily-chart{overflow:auto;padding-bottom:10px}
.daily-chart-row{display:grid;grid-template-columns:140px repeat(6,minmax(75px,1fr));gap:12px;align-items:end;min-width:680px;margin-bottom:10px}
.daily-chart-row>strong{font-size:.8rem;align-self:center;line-height:1.5}
.daily-chart-times span{font-size:.68rem;line-height:1.5;color:#526171}
.daily-chart-cell{height:64px;display:flex;flex-direction:column;justify-content:flex-end;gap:5px}
.daily-chart-bar{display:block;width:100%;background:#778ba0;border-radius:3px;min-height:1px}.daily-chart-row:nth-child(3) .daily-chart-bar{background:#7c59dd}.daily-chart-row:nth-child(4) .daily-chart-bar{background:#239477}
.daily-chart-cell small{font-size:.7rem;color:#526171}
.daily-table-scroll{overflow:auto;margin-top:18px}.daily-table-scroll table{border-collapse:collapse;min-width:680px;width:100%;font-size:.82rem}.daily-table-scroll th,.daily-table-scroll td{text-align:right;padding:10px;border-bottom:1px solid #dce1e9}.daily-table-scroll th:first-child,.daily-table-scroll td:first-child{text-align:left}.daily-table-scroll th{line-height:1.5;color:#526171}
.daily-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.daily-actions .button{font-size:.92rem;min-height:44px;padding:12px 18px}
.daily-simple :is(input,select,summary,button,a):focus-visible{outline:3px solid #7252e4;outline-offset:3px}
.daily-simple button:disabled{opacity:.5;cursor:not-allowed}
/* Keep the approved outage cards compact as well. */
.outage-simple .outage-design-description{margin-bottom:12px}
.outage-simple .outage-verdict{min-height:0;margin-bottom:9px}
.outage-simple .outage-duration-label{min-height:0;margin-bottom:10px}
.outage-simple .outage-reason{min-height:0;margin-bottom:12px}
.outage-simple .outage-reason:empty{display:none}
@media(max-width:1000px){.daily-field-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.daily-controls{grid-template-columns:1fr 1fr}.daily-controls>div:last-child{grid-column:1/-1;max-width:280px}.daily-cost-card{padding:18px}.daily-saving-row{grid-template-columns:1fr repeat(3,1fr);gap:12px}.daily-saving-row strong{font-size:1.25rem}}
@media(max-width:680px){.daily-intro.page-intro{padding-block:28px 20px}.daily-intro .lead{font-size:1rem}.daily-simple h2{font-size:1.2rem}#daily-form{padding:19px}.daily-controls{grid-template-columns:1fr;gap:14px}.daily-controls>div:last-child{max-width:none}.daily-field-grid{grid-template-columns:1fr 1fr}.daily-cost-cards{grid-template-columns:1fr;gap:10px}.daily-cost-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 16px;padding:17px 19px}.daily-letter{grid-column:1/-1;margin:0 0 3px}.daily-simple .daily-cost-card h3{grid-column:1;grid-row:2;margin:0;font-size:1.03rem}.daily-cost-card p{grid-column:1;grid-row:3/5;min-height:0;margin:0;font-size:.8rem}.daily-cost-card>strong{grid-column:2;grid-row:2/4;align-self:center;font-size:1.7rem}.daily-cost-card>small{grid-column:2;grid-row:4;margin:0;text-align:right}.daily-cost-track{grid-column:1/-1;margin-top:9px}.daily-saving-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.daily-saving-row h4{grid-column:1/-1;font-size:.9rem}.daily-saving-row strong{font-size:1.2rem}.daily-savings{padding:19px}.daily-rate-strip{grid-template-columns:1fr;gap:10px}.daily-rate-strip>div{display:flex;gap:14px;align-items:center;justify-content:space-between}.daily-rate-strip span{max-width:65%}.daily-rate-strip strong{white-space:nowrap;font-size:.88rem}.daily-schedule-copy{grid-template-columns:1fr;gap:18px}.daily-actions{gap:10px}.daily-actions .button{width:100%;text-align:center}.daily-input-summary{gap:5px 18px;font-size:.78rem}.daily-simple{padding-bottom:20px}}
@media(max-width:390px){.daily-field-grid{grid-template-columns:1fr}.daily-cost-card{gap:3px 10px}.daily-cost-card>strong{font-size:1.45rem}.daily-saving-row strong{font-size:1.07rem}.daily-saving-row+.daily-saving-row strong{font-size:1rem}.daily-savings{padding:16px}.daily-saving-row{gap:8px}.daily-saving-row small{font-size:.7rem}}
@media(max-width:680px){.daily-saving-row small{min-height:3em}}

/* Show the linked demand and stored-water capacity without opening technical details. */
.outage-linked{display:grid;grid-template-columns:1.25fr 1fr;gap:14px 28px;padding:22px 24px;border:1px solid #c9bfff;border-radius:18px;background:#faf9ff;margin:22px 0}
.outage-linked[hidden]{display:none}
.outage-simple .outage-linked h4{font-size:1.05rem;margin:0 0 8px}
.outage-linked p{font-size:.92rem;line-height:1.6;margin:0 0 9px}
.outage-linked a{font-size:.88rem}
.outage-linked>.fine{grid-column:1/-1;margin:0;font-size:.8rem}
.outage-linked-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;min-width:0}
.outage-linked-controls>div{min-width:0}
.outage-linked-controls label{display:block;font-size:.82rem;line-height:1.5;margin-bottom:6px}
.outage-linked-controls :is(input,select){width:100%;min-width:0;padding:9px 10px;font-size:.95rem;border:1px solid #bfc9de;background:#fff;border-radius:8px;color:#102c46}
.outage-linked-controls input:disabled{opacity:.5}
.outage-field-grid input[readonly]{background:#eeedf6;color:#536078}
.outage-art-group{height:auto;min-height:110px;align-items:flex-start;gap:8px;margin-bottom:14px}
.outage-art-group>span[data-outage-art]{flex:0 1 82px;height:72px}
.outage-water-reserve{display:flex;flex:0 0 66px;flex-direction:column;align-items:center;min-width:0;margin:0;text-align:center}
.outage-water-reserve svg{width:48px;height:72px;overflow:hidden}
.outage-water-reserve strong{display:block;font-size:.74rem;line-height:1.4;color:#16374f;margin-top:5px}
.outage-water-reserve strong span{display:block;white-space:nowrap}
.outage-water-reserve strong small{display:block;font-size:.65rem;font-weight:400;white-space:nowrap;color:#4d6574}
.outage-water-reserve[hidden]{display:none}
.outage-water-reserve .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.outage-linked{grid-template-columns:1fr;padding:18px}.outage-linked-controls{grid-template-columns:1fr 1fr}.outage-art-group{justify-content:flex-start}}
@media(max-width:390px){.outage-linked-controls{grid-template-columns:1fr}}

.daily-location{padding:22px 24px;margin-bottom:18px;border:1px solid #c6c4ec;border-radius:18px;background:#fff;display:grid;grid-template-columns:1.2fr 1fr;gap:14px 28px}
.daily-simple .daily-location h2{font-size:1.1rem;margin:0 0 8px}
.daily-location p{margin:0;font-size:.9rem;line-height:1.6}
.daily-location-controls{display:flex;gap:12px;align-items:flex-end;min-width:0}
.daily-location-controls>div{flex:1;min-width:0}
.daily-location-controls label{font-size:.82rem;font-weight:600;display:block;margin-bottom:6px}
.daily-location-controls label small{font-weight:400}
.daily-location-controls input{width:100%;min-width:0;padding:10px 12px;border:1px solid #bfc9de;border-radius:8px;font-size:1rem;color:#12324d}
.daily-location-controls input[aria-invalid=true]{border-color:#a34931}
.daily-location-controls .button{white-space:nowrap;min-height:43px;padding:10px 15px;font-size:.88rem}
.daily-location>.fine,.daily-location-method{grid-column:1/-1}
.daily-location>.fine{font-size:.81rem;color:#526171}
.daily-location-method{border-top:1px solid #e0e3ee;padding-top:12px}
.daily-location-method summary{font-size:.8rem;font-weight:600;color:#4d36ba;cursor:pointer}
.daily-location-method p{font-size:.79rem;margin-top:10px;max-width:100ch}
.daily-rate-strip.flat-pricing{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.daily-location{grid-template-columns:1fr;padding:20px}.daily-location-controls{max-width:450px}}
@media(max-width:680px){.daily-rate-strip.flat-pricing{grid-template-columns:1fr}}
@media(max-width:390px){.daily-location-controls{flex-direction:column;align-items:stretch}.daily-location-controls .button{width:100%}.outage-art-group{gap:5px}.outage-water-reserve{flex-basis:61px}}

/* Partner detail stays scannable, with identical structure in every edition. */
.partner-detail-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:26px}
.partner-detail-tabs button{border:1px solid #c8c6e6;background:#fff;color:var(--ink);border-radius:9px;padding:11px 16px;font-size:1rem;line-height:1.45;min-height:46px}
.partner-detail-tabs button[aria-selected=true]{color:#fff;background:var(--violet);border-color:var(--violet)}
.partner-pathways .partner-detail-panel{border:1px solid #e1def2;border-radius:20px;background:#fff;padding:36px;max-width:none}
.partner-detail-panel h3{font-size:1.8rem;margin-bottom:12px;overflow-wrap:anywhere;hyphens:auto}
.partner-detail-panel .sector-lead{font-size:1.1rem;line-height:1.6;max-width:65ch;margin-bottom:28px;color:var(--muted)}
.partner-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px}
.partner-detail-panel h4{font-size:1rem;line-height:1.5;margin:0 0 12px;color:var(--ink)}
.partner-detail-columns ul{padding-left:20px;margin:0}
.partner-detail-columns li{font-size:1rem;line-height:1.6;margin-bottom:12px;padding-left:3px;color:var(--muted)}
.partner-detail-columns li::marker{color:var(--violet)}
.partner-project{border-left:3px solid #9184ff;padding:18px 22px;margin-top:22px;background:#f6f4ff;border-radius:0 12px 12px 0}
.partner-project p,.partner-detail-next p{font-size:1rem;line-height:1.6;margin:0;color:var(--muted)}
.partner-pathways .partner-detail-next{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:none;padding:22px 0 0;margin-top:22px;border-top:1px solid #e1def2;background:transparent}
.partner-detail-next>div{max-width:65ch}.partner-detail-next .button{flex-shrink:0;font-size:.9375rem;min-height:46px;padding:10px 16px}
.partner-scope{max-width:95ch}
.welcome-intro:before{left:calc(-100% / 18);right:calc(-100% / 18)}
.technology-hero .technology-patent{display:inline-flex;max-width:100%;margin:0 0 24px;padding:7px 13px;border:1px solid #d8d1ff;border-radius:8px;background:#f2efff;color:#4430d8;font-size:.875rem;line-height:1.5;font-weight:650}

/* Complete navigation opens in the header, with compact groups on phones. */
.header{flex-wrap:wrap;gap:18px 24px}
.header-quick-links{display:flex;align-items:center;gap:24px;margin-left:auto;order:1}
.header-quick-links a{font-size:.9375rem;font-weight:600;padding:10px 0;line-height:1.4}
.header-quick-links a:hover,.header-quick-links a[aria-current=page]{color:var(--violet)}
.header .menu-toggle{display:inline-flex;align-items:center;justify-content:center;order:2;margin-left:0;min-height:46px}
.header .menu-toggle[aria-expanded=true]{background:#eeeaff;border-color:#9a8aff;color:var(--violet)}
.header #main-nav{order:3;flex-basis:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:24px;padding:24px 0 8px;border-top:1px solid var(--line);max-height:70vh;overflow-y:auto}
.js .header #main-nav:not(.is-open){display:none}
.header .site-menu-group{min-width:0}
.header .site-menu-group summary{font-weight:750;color:#4835dd;font-size:.875rem;line-height:1.5;padding:8px 8px 12px;list-style:none;cursor:default}
.header .site-menu-group summary::-webkit-details-marker{display:none}
.header .site-menu-group ul{list-style:none;margin:0;padding:0}
.header .site-menu-group li{margin:0;font-size:inherit;line-height:inherit}
.header #main-nav a{display:block;padding:9px 8px;border-radius:7px;font-size:.9375rem;line-height:1.4;font-weight:450;min-height:40px;overflow-wrap:break-word}
.header #main-nav a:hover{background:#f2efff;color:var(--violet)}
.header #main-nav a[aria-current=page]{background:#eae5ff;color:#3e28d4;font-weight:700;text-decoration:none}
body:not(.js) .header .menu-toggle{display:none}
@media(max-width:1050px){.header #main-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:960px){.header-quick-links{display:none}.header .menu-toggle{margin-left:auto}}
@media(max-width:780px){.partner-detail-columns{grid-template-columns:1fr;gap:18px}.partner-pathways .partner-detail-panel{padding:26px}.partner-pathways .partner-detail-next{align-items:flex-start;flex-direction:column;gap:18px}}
@media(max-width:680px){
 .welcome-intro:before{left:-15px;right:-15px}
 .header #main-nav{grid-template-columns:1fr;gap:0;padding:8px 0;max-height:70dvh}
 .header .site-menu-group{border-bottom:1px solid var(--line)}
 .header .site-menu-group summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;min-height:48px;padding:13px 10px;font-size:1rem}
 .header .site-menu-group summary:after{content:'+';font-size:1.2rem;font-weight:400}
 .header .site-menu-group[open] summary:after{content:'−'}
 .header .site-menu-group ul{padding:0 5px 12px}
 .header #main-nav a{min-height:44px;padding:11px 10px}
 .partner-detail-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .partner-detail-tabs button{padding:10px 8px;font-size:.9375rem;min-width:0;overflow-wrap:anywhere;hyphens:auto}
 .partner-pathways .partner-detail-panel{padding:23px 20px}
 .partner-detail-panel h3{font-size:1.5rem}.partner-detail-panel .sector-lead{font-size:1.0625rem;margin-bottom:24px}
 .partner-project{padding:16px}.partner-detail-next .button{width:100%}
}
.privacy-full article{scroll-margin-top:24px;overflow-wrap:anywhere;hyphens:auto}.privacy-full p{line-height:1.8}
.planner-storage{padding:20px;border:1px solid var(--line);border-radius:16px;margin-bottom:26px;background:#faf9ff}
.planner-storage .local-tool-actions{margin:0 0 12px;flex-wrap:wrap}
.planner-storage .button{padding:10px 14px;font-size:.9375rem}
.planner-storage [role=status]:empty{display:none}
.security-intro .lead{max-width:850px}
.security-intro .tool-jump{margin-top:28px}
.security-section{padding-block:64px}
.security-section h2{max-width:760px;font-size:clamp(1.65rem,3.2vw,2.5rem);line-height:1.15;margin-bottom:20px}
.security-lead{max-width:760px;margin-bottom:30px}
.security-equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.security-equipment-grid article{padding:28px;border:1px solid #d9d2f5;border-radius:20px;background:#fff}
.security-step{color:var(--violet);font-weight:750;font-size:.85rem;letter-spacing:.04em}
.security-equipment-grid h3{font-size:1.3rem;margin:14px 0 12px}
.security-equipment-grid p{margin:0;font-size:1rem;line-height:1.7}
.security-two-column{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.security-two-column>*,.security-equipment-grid>*{min-width:0;overflow-wrap:break-word;hyphens:auto}
.security-chain{list-style:none;padding:0;margin:0;display:grid;gap:0}
.security-chain li{display:flex;align-items:center;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);font-weight:650;font-size:1rem}
.security-chain .security-step{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:#eeeaff}
.security-checklist{margin:0;padding-left:22px;display:grid;gap:18px;line-height:1.7}
.security-checklist li{padding-left:6px}
.security-energy-example{background:#e3f4f0;border:1px solid #c0e2d8;border-radius:20px;padding:28px}
.security-equation{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:var(--navy);font-size:1.3rem;font-weight:700;margin:20px 0}
.security-equation strong{color:#006e63}
.security-energy-example p:last-child{font-size:1rem;margin-bottom:0;line-height:1.7}
.security-section .hero-actions{margin-top:0;align-self:center;flex-wrap:wrap}
@media(max-width:900px){.security-equipment-grid{grid-template-columns:1fr;gap:16px}.security-equipment-grid article{padding:24px}.security-two-column{grid-template-columns:1fr;gap:24px}.security-section{padding-block:44px}}
@media(max-width:480px){.security-equipment-grid article,.security-energy-example{padding:22px}.security-equation{gap:9px;font-size:1.15rem}.security-intro .tool-jump a{font-size:.9375rem}.security-section .hero-actions{flex-direction:column;align-items:flex-start}}
@media print{.header,.planner-storage,#local-planner,.local-report .local-tool-actions{display:none!important}.local-report{border:0;padding:0}.regional-page:has(#local-brief) .page-intro{display:none}.local-report p{color:#111}}
