.secondary-header nav{display:flex;gap:24px;font-size:13px}.secondary-intro h1{font-size:clamp(42px,6vw,76px);margin-bottom:24px}.secondary-intro p{max-width:640px}.secondary-intro{padding-bottom:20px}
.hero-scene .hero-motion{transition:transform 1.25s cubic-bezier(.22,.8,.25,1);will-change:transform}
.hero-scene.scene-exploring .hotspot,.hero-scene.scene-exploring .scene-bottom,.hero-scene.scene-exploring .scene-label{opacity:0;pointer-events:none}
.hero-scene .scene-reset{position:absolute;z-index:6;left:24px;top:24px;border:1px solid #ffffff70;border-radius:30px;background:#fffffff0;padding:13px 18px;font-size:12px}
.scene-status{position:absolute;z-index:6;bottom:24px;left:24px;color:#fff;text-shadow:0 2px 12px #000;font-size:14px}


.weather-wash,.weather-rain{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.weather-wash{transition:background 2s;mix-blend-mode:multiply}
.hero-scene[data-season=autumn] .hero-house{filter:saturate(.86) sepia(.12)}.hero-scene[data-season=winter] .hero-house{filter:saturate(.68)}.hero-scene[data-season=spring] .hero-house{filter:saturate(1.08)}
.hero-scene[data-weather=rain] .weather-wash{background:#7e94a4aa}.hero-scene[data-weather=cloudy] .weather-wash{background:#a6b2b744}.hero-scene[data-time=night] .weather-wash{background:linear-gradient(#13294c44,#20304722)}
.hero-scene[data-time=night] .hero-house{filter:brightness(.85) saturate(.8)}
.section-preview-control{padding-top:20px;padding-bottom:0;text-align:right}.section-preview-control button{font-size:11px;color:var(--muted)}
#batteries[hidden]{display:none}.backup-intro{position:relative}
.battery-home-facts{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.battery-home-facts dt{font-size:10px;color:var(--muted);margin-bottom:7px}.battery-home-facts dd{font-size:13px;margin:0;line-height:1.5}.battery-home-facts small{display:block;font-size:10px;color:var(--muted)}
.accessory-section{border-top:1px solid var(--line)}.accessory-section p:not(.eyebrow){max-width:680px;color:var(--muted);margin:22px 0 28px}.accessory-section .text-link{margin-left:20px}.contact-routes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1000px;margin:35px auto}.contact-routes a{padding:24px;border:1px solid #ffffff45;border-radius:20px;text-align:left}.contact-routes span{display:block;font-size:13px;line-height:1.6;margin-top:12px}.contact-routes strong{font-size:18px}
#hvac .hvac-showroom-header{display:block}#hvac .catalog-tabs{margin-left:auto;margin-right:auto}.hero-scene .hotspot{transition:opacity .25s,background .2s,transform .25s}
@media(max-width:700px){.secondary-header .nav-shell{padding:0 15px;gap:10px}.secondary-header nav{gap:10px;font-size:10px}.secondary-header .button{display:none}.secondary-header .brand img{width:42px}.contact-routes{grid-template-columns:1fr}.hero-scene .scene-reset{left:12px;top:12px;padding:10px 12px;font-size:10px}.scene-status{left:12px;bottom:12px;font-size:11px}.battery-home-facts{gap:10px}.accessory-section .text-link{margin-left:0}.section-preview-control{padding-top:12px}}
@media(prefers-reduced-motion:reduce){.hero-scene .hero-motion{transition:none}.weather-wash{transition:none}}

.hero-scene:not([data-season=autumn]) .hero-nature,.hero-scene[data-weather=rain] .hero-nature,.hero-scene[data-time=night] .hero-nature{display:none}
.scene-status:empty{display:none}
#roofing .catalog-art[data-presentation=material]:not(.roof-colors-active){background:transparent}

/* Dedicated product pages retain the spacious showroom composition. */
.product-page main{padding-top:var(--header-height,72px)}
.product-page .section-heading h1{font-size:clamp(2.5rem,5vw,5rem);line-height:1.04;letter-spacing:-.045em;margin:0}
.product-page .section-heading{padding-top:24px}
#roofing .catalog-tabs{flex-wrap:wrap;max-width:100%;justify-content:center}
#roofing .catalog-tabs button{white-space:nowrap}
#roofing .catalog-art.roof-colors-active{width:100%;padding:0;background:transparent}
#roofing .roof-color-preview{width:100%;max-width:none;aspect-ratio:4/3;background-size:cover;background-position:center;border-radius:0}
@media(max-width:700px){#roofing .catalog-tabs{border-radius:24px;gap:4px}#roofing .catalog-tabs button{font-size:13px;padding:12px}.product-page .section-heading h1{font-size:2.8rem}}

.nav-shell .header-services a[aria-current=page]::after{background:var(--teal)}
.nav-shell .header-services a[aria-current=page]{color:var(--teal)}
.product-page main>.catalog-section:first-child{padding-top:40px}
.product-page .contact h1{font-size:clamp(38px,4.6vw,66px);line-height:1.04}
.product-page .accessory-section h1{font-size:clamp(38px,4.6vw,66px);line-height:1.04}

/* The appliance slots form the panel, without a separate decorative icon. */
.backup .backup-intro{padding-left:0}
.backup .load-options{position:relative;padding:18px;gap:10px 18px;border:1px solid #dce3de;border-radius:20px;background:#f3f5f1;box-shadow:inset 0 1px 0 #fff;margin-top:18px}
.backup .load-options::before{content:"";position:absolute;top:18px;bottom:18px;left:50%;width:1px;background:#dce3de}
.backup .load-row{position:relative;min-height:88px;padding:12px 12px 12px 18px;border:1px solid #e0e5df;border-radius:7px;background:#fafbf8;box-shadow:0 1px 2px #163b3905;transition:background .2s,border-color .2s}
.backup .load-row::before{content:"";position:absolute;left:7px;top:28px;bottom:28px;width:3px;border-radius:2px;background:#cbd3cc}
.backup .load-row.powered{background:#fff;border-color:#bfcfc4}
.backup .load-row.powered::before{background:var(--teal)}
.backup .load-row label{padding:0;line-height:1.3}
.backup .load-row select{min-width:48px;width:48px;border-radius:5px;background:#edf0eb;border-color:#d7dfd6;padding:8px 5px;box-shadow:inset 0 2px 2px #163b3906}
.backup .load-row.powered select{background:#e6eee7;border-color:#bacdbf}
@media(max-width:700px){.backup .load-options{padding:10px;gap:8px 12px;border-radius:14px}.backup .load-row{padding:12px 8px 12px 14px;min-height:112px;flex-wrap:wrap;gap:10px}.backup .load-row::before{left:5px;top:20px;bottom:20px}.backup .load-row label{width:100%}.backup .load-row select{width:100%;min-height:36px}.backup .load-row small{line-height:1.4}.backup .load-options::before{top:10px;bottom:10px}}

/* Recessed hardware and a satin enclosure make the slots read as a panel. */
.backup .load-options{padding:28px;gap:9px 20px;border-radius:16px;border-color:#cbd4cd;background:linear-gradient(125deg,#f7f8f5 0%,#edf0eb 55%,#f4f6f2 100%);box-shadow:inset 0 0 0 3px #ffffff85,inset 0 -1px 3px #50675d14,0 3px 8px #163b3906}
.backup .load-options::before{top:28px;bottom:28px;width:6px;left:calc(50% - 3px);border-radius:3px;background:linear-gradient(90deg,#d5ddd5,#edf1e9 45%,#d2dad2);box-shadow:inset 1px 0 1px #71827618}
.panel-screw{position:absolute;width:10px;height:10px;border-radius:50%;border:1px solid #aebbb1;background:linear-gradient(135deg,#fbfcf9,#c6d0c7);box-shadow:0 1px 1px #fff,inset 0 1px 2px #7f928331;pointer-events:none}
.panel-screw::after{content:"";position:absolute;left:2px;right:2px;top:3px;height:1px;background:#87998b;box-shadow:0 1px 0 #ffffffaa;transform:rotate(-35deg)}
.screw-tl{top:9px;left:9px}.screw-tr{top:9px;right:9px}.screw-bl{bottom:9px;left:9px}.screw-br{bottom:9px;right:9px}
.backup .load-row{border-radius:4px;box-shadow:inset 0 1px 0 #fff,0 2px 2px #1d3a2d08}
.backup .load-row select{border-radius:4px;background:linear-gradient(#f5f7f2,#e8ede6);box-shadow:inset 0 2px 2px #163b3910,0 1px 0 #fff}
.backup .load-row.powered select{background:linear-gradient(#edf3eb,#dce7dc)}
@media(max-width:700px){.backup .load-options{padding:22px;gap:8px 14px;border-radius:13px}.backup .load-options::before{top:22px;bottom:22px;width:4px;left:calc(50% - 2px)}.panel-screw{width:8px;height:8px}.panel-screw::after{left:1px;right:1px;top:2px}.screw-tl{top:7px;left:7px}.screw-tr{top:7px;right:7px}.screw-bl{bottom:7px;left:7px}.screw-br{bottom:7px;right:7px}}

/* Click the slot to include it; the quantity control remains independent. */
.backup .breaker-activate{position:absolute;inset:0;border:0;border-radius:4px;background:transparent;padding:0;cursor:pointer}
.backup .load-row label{position:relative;pointer-events:none}
.backup .load-row select{position:relative;cursor:pointer}
.backup .load-row::before{pointer-events:none}
.backup .breaker-activate:hover{box-shadow:inset 0 0 0 1px #515b5440}
.backup .load-row select:focus,.backup .breaker-activate:focus-visible{outline:2px solid #414844;outline-offset:3px}
.backup .load-row select:focus{border-color:#414844}

/* The nighttime photograph contains its own warm architectural lighting. */
.hero-scene[data-time=night].night-lit .hero-house{filter:none}
.hero-scene[data-time=night].night-lit .weather-wash{background:transparent}
.hero-scene[data-time=night][data-weather=rain].night-lit .weather-wash{background:#31485d26}
