/* Homepage only: image-led product storytelling inspired by Enphase. */
.home-page .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}
.home-page header{background:#fff}
.home-page .nav{height:66px}
.home-page .btn{border-radius:999px;padding:12px 23px}
.home-page .btn.small{padding:10px 20px}
.home-page .announcement{height:35px;background:#222325;color:#f7f7f7;display:flex;align-items:center;position:relative;overflow:hidden;font-size:11px;letter-spacing:.3px}
.home-page .announcement-window{overflow:hidden;flex:1;min-width:0}
.home-page .announcement-track{display:flex;width:max-content;animation:announcement-travel 44s linear infinite}
.home-page .announcement-track>span{flex-shrink:0;padding-right:48px;white-space:nowrap}
.home-page .announcement-track i{font-style:normal;margin:0 38px;color:#ff7268}
.home-page .announcement:hover .announcement-track,.home-page .announcement:focus-within .announcement-track,.home-page .announcement.is-paused .announcement-track{animation-play-state:paused}
.home-page .announcement-pause{align-self:stretch;width:44px;flex-shrink:0;background:#222325;border:0;border-left:1px solid #48494b;color:#fff;cursor:pointer;font:inherit;font-size:17px}
.home-page .announcement-pause:focus-visible{outline:2px solid #ff786e;outline-offset:-4px}
@keyframes announcement-travel{to{transform:translateX(-50%)}}
.home-page .home-hero{isolation:isolate;overflow:hidden;min-height:610px;padding:95px 0 125px;background:#202123}
.home-page .hero-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;animation:hero-settle 1.6s ease-out both}
.home-page .home-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,10,11,.9),rgba(8,10,11,.7) 38%,rgba(8,10,11,.2) 72%,rgba(8,10,11,.05))}
.home-page .home-hero h1{max-width:700px;font-size:clamp(42px,5.3vw,70px);line-height:1.04;font-weight:650;letter-spacing:-2.7px;animation:copy-arrive .9s .1s ease both}
.home-page .home-hero-copy>.kicker{font-size:11px;letter-spacing:2px;animation:copy-arrive .8s ease both}
.home-page .home-hero-copy>p{max-width:530px;font-size:19px;line-height:1.55;animation:copy-arrive .9s .2s ease both}
.home-page .home-hero-resources{animation:copy-arrive .9s .3s ease both}
.home-page .home-hero-resources a{font-size:13px;font-weight:650}
.home-page .home-hero-points{font-size:11px;font-weight:600}
@keyframes hero-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
@keyframes copy-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.home-page .estimate-dock{border-radius:8px;border-top-width:3px}
.home-page #estimate{scroll-margin-top:85px}
.home-page .estimate-intro h2{font-weight:650;letter-spacing:-.6px}
.home-page .home-trust{background:#fff;border-bottom:1px solid #e5e5e5}
.home-page .home-trust .wrap{padding:25px 0}
.home-page .home-trust .ti{color:#242527}
.home-page .home-trust .ti strong{font-weight:600;font-size:15px}
.home-page .home-trust .ti span{color:#666}
.home-page .home-trust .ti+.ti{border-color:#ddd}
.home-page .project-menu-section{background:#fff;padding:0}
.home-page .project-intro{padding:85px 0 65px;text-align:center;max-width:740px}
.home-page .project-intro h2{font-size:clamp(36px,4.7vw,60px);font-weight:550;letter-spacing:-2.2px;line-height:1.08;margin:13px 0 19px}
.home-page .project-intro p{color:#626366;font-size:17px;margin-bottom:22px}
.home-page .text-link{color:#b6261b;font-size:14px;font-weight:650;border-bottom:1px solid #e0b0ac;padding-bottom:5px}
.home-page .text-link:hover{border-color:#b6261b}
.home-page .service-films{display:grid;gap:10px}
.home-page .service-film{position:relative;isolation:isolate;overflow:hidden;min-height:440px;display:flex;align-items:center;background:#16181b;color:#fff}
.home-page .film-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.65,.2,1)}
.home-page .service-film:hover .film-photo{transform:scale(1.025)}
.home-page .film-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.83),rgba(0,0,0,.5) 44%,rgba(0,0,0,.03) 77%)}
.home-page .film-content{padding:65px 0;position:relative;margin:0 auto}
.home-page .film-eyebrow{display:block;text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:1.9px;color:#dadbdd;margin-bottom:19px}
.home-page .film-content h3{font-size:clamp(32px,4.2vw,53px);max-width:570px;letter-spacing:-1.6px;line-height:1.05;font-weight:550;color:#fff;margin-bottom:17px}
.home-page .film-content p{font-size:17px;max-width:440px;line-height:1.5;color:#f0f0f0;margin:0 0 26px}
.home-page .film-link{display:inline-flex;align-items:center;gap:12px;color:#fff;border:1px solid rgba(255,255,255,.65);padding:10px 21px;border-radius:999px;font:inherit;font-size:13px;font-weight:600;background:transparent;cursor:pointer;transition:background .2s,color .2s}
.home-page .film-link:hover{background:#fff;color:#17181a}
.home-page .film-link:focus-visible,.home-page .text-link:focus-visible,.home-page .equipment-link:focus-visible{outline:3px solid #ff786e;outline-offset:5px}
.home-page .film-install .film-photo{object-position:60% 43%}
.home-page .film-level2 .film-photo{object-position:70% 52%}
.home-page .film-tesla{background:radial-gradient(ellipse at 74% 50%,#51545b,#25272b 42%,#111214 78%)}
.home-page .product-photo{position:absolute;right:7%;height:98%;width:46%;object-fit:contain;filter:drop-shadow(0 20px 25px rgba(0,0,0,.3));z-index:-1;transition:transform 1s ease}
.home-page .product-film:hover .product-photo{transform:translateY(-6px)}
.home-page .film-chargepoint .film-photo{object-position:75% center}
.home-page .film-outlet .film-photo{object-position:85% 50%}
.home-page .film-hardwired .film-photo{object-position:70% 60%}
.home-page .film-actions{display:flex;flex-wrap:wrap;gap:12px}
.home-page .video-trigger[hidden]{display:none}
.home-page .play-symbol{font-size:11px}
.home-page .home-story>div h2{font-weight:550}
.home-page .home-story-media figcaption{background:rgba(18,19,21,.85)}
.home-page .equipment-band{background:#1b1c1e}
.home-page .equipment-band .kicker{color:#ff928a}
.home-page .equipment-band h2{font-weight:550}
.home-page .equipment-band p{color:#ddd}
.home-page .equipment-shopping{padding:74px 0 28px;background:#f6f4f1}
.home-page .equipment-shopping-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}
.home-page .equipment-shopping h2{font-size:clamp(30px,3.3vw,42px);font-weight:550;letter-spacing:-1.4px;margin-bottom:18px}
.home-page .equipment-shopping p{max-width:480px;color:#666;font-size:15px}
.home-page .equipment-links{display:grid}
.home-page .equipment-link{display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid #d8d6d1}
.home-page .equipment-link img{width:90px;height:100px;object-fit:contain;transition:transform .3s}
.home-page .equipment-link:hover img{transform:translateY(-3px)}
.home-page .equipment-link strong{display:block;font-size:17px;font-weight:600}
.home-page .equipment-link small{color:#a3261c;font-size:12px;display:block;margin-top:5px}
.home-page .equipment-shopping .shopping-note{max-width:1160px;font-size:10px;color:#767676;margin-top:34px}
.home-page .product-video{width:min(900px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:0;border-radius:8px;padding:25px;background:#151618;color:#fff}
.home-page .product-video::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(5px)}
.home-page .video-dialog-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:18px}
.home-page .video-dialog-head h2{font-size:24px;font-weight:550;color:#fff;margin:0}
.home-page .video-dialog-head .kicker{color:#ff9188}
.home-page .video-close{flex-shrink:0;align-self:start;background:transparent;color:#fff;border:1px solid #666;border-radius:50%;height:38px;width:38px;cursor:pointer;font-size:18px}
.home-page .video-player{aspect-ratio:16/9;background:#000}
.home-page .video-player iframe{width:100%;height:100%;border:0}
.home-page .product-video>p{font-size:12px;color:#ccc;margin-bottom:0}
.home-page .product-video>p a{text-decoration:underline;text-underline-offset:3px}
.home-page [data-reveal]{transition:opacity .8s ease,transform .8s ease}
.home-page [data-reveal].will-reveal{opacity:0;transform:translateY(22px)}
.home-page [data-reveal].is-visible{opacity:1;transform:none}
@media(max-width:900px){
 .home-page .film-content h3{max-width:430px}
 .home-page .film-content p{max-width:380px}
 .home-page .equipment-shopping-layout{gap:30px}
 .home-page .product-photo{right:0;width:52%}
}
@media(max-width:700px){
 .home-page .nav{height:64px}
 .home-page .brand{font-size:19px}
 .home-page .nav nav{gap:0}
 .home-page .btn.small{font-size:12px;padding:9px 15px}
 .home-page .home-hero{min-height:560px;padding:65px 0 100px}
 .home-page .hero-photo{object-position:82% center}
 .home-page .home-hero:after{background:linear-gradient(90deg,rgba(8,10,11,.9),rgba(8,10,11,.62))}
 .home-page .home-hero h1{font-size:42px;letter-spacing:-1.7px;max-width:450px}
 .home-page .home-hero-copy>p{font-size:16px}
 .home-page .home-trust .wrap{padding:10px 0}
 .home-page .project-intro{padding:58px 10px 48px}
 .home-page .project-intro h2{letter-spacing:-1.2px}
 .home-page .project-intro p{font-size:15px}
 .home-page .service-films{gap:7px}
 .home-page .service-film{min-height:470px;align-items:flex-end}
 .home-page .film-photo{object-position:65% center}
 .home-page .film-shade{background:linear-gradient(0deg,rgba(0,0,0,.94),rgba(0,0,0,.57) 43%,rgba(0,0,0,.04) 85%)}
 .home-page .film-content{padding:38px 22px;width:100%}
 .home-page .film-content h3{font-size:35px;letter-spacing:-1.2px}
 .home-page .film-content p{font-size:15px;max-width:330px}
 .home-page .film-eyebrow{font-size:9px;margin-bottom:13px}
 .home-page .film-tesla{min-height:580px}
 .home-page .product-photo{width:80%;height:68%;right:10%;top:-2%}
 .home-page .film-tesla .film-content{background:linear-gradient(0deg,#111214 20%,rgba(17,18,20,.85) 70%,transparent)}
 .home-page .film-chargepoint .film-photo{object-position:left center}
 .home-page .film-outlet .film-photo{object-position:left center}
 .home-page .film-outlet{align-items:flex-start}
 .home-page .film-outlet .film-shade{background:linear-gradient(180deg,rgba(0,0,0,.9),rgba(0,0,0,.65) 40%,rgba(0,0,0,.08) 75%)}
 .home-page .film-link{font-size:12px;padding:10px 17px}
 .home-page .equipment-shopping{padding:52px 0 24px}
 .home-page .equipment-shopping-layout{grid-template-columns:1fr;gap:25px}
 .home-page .equipment-shopping .shopping-note{font-size:10px}
 .home-page .product-video{padding:18px}
 .home-page .video-dialog-head h2{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .home-page .announcement-track{animation:none}
 .home-page .hero-photo,.home-page .home-hero h1,.home-page .home-hero-copy>.kicker,.home-page .home-hero-copy>p,.home-page .home-hero-resources{animation:none}
 .home-page [data-reveal],.home-page .film-photo,.home-page .product-photo,.home-page .equipment-link img{transition:none}
 .home-page [data-reveal].will-reveal{opacity:1;transform:none}
 .home-page .service-film:hover .film-photo,.home-page .product-film:hover .product-photo,.home-page .equipment-link:hover img{transform:none}
 .home-page .announcement-pause{display:none}
}

/* Approved photo collection: keep the equipment visible, not under the copy. */
.home-page .service-films{gap:8px}
.home-page .service-film{min-height:520px}
.home-page .home-hero{min-height:660px}
.home-page .home-hero .hero-photo{object-position:center 58%}
.home-page .home-hero:after{background:linear-gradient(90deg,rgba(6,8,10,.92),rgba(6,8,10,.74) 36%,rgba(6,8,10,.19) 74%)}
.home-page .film-content h2{font-size:clamp(32px,4.2vw,53px);max-width:570px;letter-spacing:-1.6px;line-height:1.08;font-weight:550;color:#fff;margin-bottom:17px}
.home-page .film-install .film-content,.home-page .film-tesla .film-content,.home-page .film-hardwired .film-content,.home-page .equipment-feature .film-content{padding-left:57%}
.home-page .film-install .film-shade,.home-page .film-tesla .film-shade,.home-page .film-hardwired .film-shade,.home-page .equipment-feature .film-shade{background:linear-gradient(270deg,rgba(0,0,0,.86),rgba(0,0,0,.65) 34%,rgba(0,0,0,.04) 70%)}
.home-page .film-install .film-photo,.home-page .film-hardwired .film-photo{object-position:center 46%}
.home-page .film-tesla .film-photo{object-position:center 53%}
.home-page .film-level2 .film-photo{object-position:center 52%}
.home-page .film-chargepoint .film-photo{object-position:center 45%}
.home-page .film-outlet .film-photo{object-position:center top}
.home-page .film-outlet .film-content{padding-left:57%}
.home-page .film-outlet .film-shade{background:linear-gradient(270deg,rgba(0,0,0,.88),rgba(0,0,0,.65) 34%,rgba(0,0,0,.04) 70%)}
.home-page .equipment-feature .film-photo{object-position:center}
.home-page .equipment-links{grid-template-columns:1fr 1fr;gap:0 22px}
.home-page .equipment-link img{width:76px;height:86px;border-radius:5px}
.home-page .equipment-link strong{font-size:15px}
.home-page .equipment-link:nth-child(3) img{object-fit:cover;object-position:50% center}
.home-page .equipment-link:nth-child(4) img{object-fit:cover;object-position:40% center}
.home-page .service-film h2,.home-page .service-film h3{scroll-margin-top:90px}
@media(max-width:900px){
 .home-page .film-install .film-content,.home-page .film-tesla .film-content,.home-page .film-hardwired .film-content,.home-page .equipment-feature .film-content{padding-left:50%}
 .home-page .equipment-links{grid-template-columns:1fr}
}
@media(max-width:700px){
 .home-page .home-hero{min-height:570px}
 .home-page .home-hero .hero-photo{object-position:68% center}
 .home-page .home-hero:after{background:linear-gradient(90deg,rgba(6,8,10,.88),rgba(6,8,10,.54))}
 .home-page .service-film,.home-page .film-tesla{min-height:540px;align-items:flex-end}
 .home-page .film-install .film-content,.home-page .film-tesla .film-content,.home-page .film-hardwired .film-content,.home-page .equipment-feature .film-content{padding:38px 22px}
 .home-page .film-tesla .film-content{background:none}
 .home-page .service-film .film-shade{background:linear-gradient(0deg,rgba(0,0,0,.94),rgba(0,0,0,.62) 38%,rgba(0,0,0,.02) 85%)}
 .home-page .film-content h2{font-size:35px;letter-spacing:-1.2px}
 .home-page .film-install .film-photo,.home-page .film-hardwired .film-photo{object-position:40% center}
 .home-page .film-tesla .film-photo{object-position:38% center}
 .home-page .film-level2 .film-photo{object-position:50% center}
 .home-page .film-chargepoint .film-photo{object-position:77% center}
 .home-page .equipment-feature .film-photo{object-position:38% center}
 .home-page .film-outlet .film-photo{object-fit:contain;object-position:center top;height:68%}
}
@media(max-width:900px){.home-page .film-outlet .film-content{padding-left:50%}}
@media(max-width:700px){.home-page .film-outlet .film-content{padding:38px 22px}}
