:root{--navy:#082a54;--navy2:#041a32;--blue:#0b5ea8;--green:#58a92b;--lime:#a9e75e;--ink:#10233d;--muted:#607086;--light:#f3f7fb;--line:#dce5ee;--white:#fff;--shadow:0 18px 50px rgba(6,29,58,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);line-height:1.55;background:#fff}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.promo{background:var(--green);color:#fff;text-align:center;padding:9px 14px;font-size:13px;font-weight:600}.promo a{text-decoration:underline;margin-left:10px}.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.navwrap{height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{width:285px;max-height:65px;object-fit:contain}.nav{display:flex;align-items:center;gap:23px;font-size:14px;font-weight:800;color:var(--navy)}.nav a:hover{color:var(--green)}.nav .cta{background:var(--navy);color:#fff;padding:11px 16px;border-radius:7px}.menu{display:none;background:none;border:0;font-size:28px;color:var(--navy)}.hero{background:linear-gradient(120deg,#041b34,#0a376b 58%,#0c65a1);color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center;padding:78px 0}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:900;color:var(--green);display:inline-block;margin-bottom:11px}.hero .eyebrow{color:var(--lime)}h1,h2,h3{line-height:1.08;margin:0 0 14px}h1{font-size:clamp(45px,6vw,74px);letter-spacing:-2px}h1 span{color:var(--lime)}h2{font-size:clamp(34px,4.2vw,54px);letter-spacing:-1.5px}h3{font-size:21px}.lead{font-size:19px;line-height:1.65;color:#dbe9f6;max-width:650px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:7px;padding:13px 19px;font-weight:900;border:1px solid transparent;cursor:pointer}.primary{background:var(--green);color:#fff}.ghost{border-color:rgba(255,255,255,.4);color:#fff}.dark{background:var(--navy);color:#fff}.hero-points{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#d7e6f2}.hero-art{height:430px;border:1px solid rgba(255,255,255,.15);border-radius:28px;background:linear-gradient(145deg,#174d7d,#071e3b);position:relative;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.28)}.glow{position:absolute;width:250px;height:250px;border-radius:50%;right:-25px;top:-45px;background:radial-gradient(circle,#f4a829,#f5cf64 38%,transparent 67%)}.globe{position:absolute;left:35px;top:42px;width:175px;height:175px;border-radius:50%;background:radial-gradient(circle at 30% 28%,#73d5ee,#1a72a4 52%,#0c355d 74%);box-shadow:inset -18px -18px 30px rgba(0,0,0,.25),0 15px 40px rgba(0,0,0,.2)}.globe:after{content:"";position:absolute;inset:17px;border:2px solid rgba(255,255,255,.5);border-radius:50%;box-shadow:inset 18px 0 0 -16px rgba(255,255,255,.35),inset -18px 0 0 -16px rgba(255,255,255,.25)}.leaf{position:absolute;left:115px;top:185px;width:170px;height:80px;background:linear-gradient(145deg,#a8e85e,#2f8d25);border-radius:100% 0 100% 0;transform:rotate(-18deg);box-shadow:0 12px 25px rgba(0,0,0,.2)}.roof{position:absolute;right:30px;bottom:72px;width:280px;height:130px;background:#dbe5e9;clip-path:polygon(50% 0,100% 40%,100% 100%,0 100%,0 40%)}.panels{position:absolute;right:25px;bottom:150px;width:260px;height:95px;transform:skew(-25deg);background:repeating-linear-gradient(90deg,#0c4670 0 30px,#2d8bb2 31px 33px),repeating-linear-gradient(0deg,transparent 0 18px,rgba(255,255,255,.3) 19px 20px);border:2px solid #173e62}.battery{position:absolute;right:75px;bottom:32px;width:135px;height:95px;background:linear-gradient(145deg,#3a4953,#101920);border-radius:12px;box-shadow:0 16px 30px rgba(0,0,0,.35);padding:25px}.battery:before{content:"";position:absolute;left:15px;right:15px;top:-12px;height:15px;background:#77858e;border-radius:7px 7px 0 0}.battery .screen{height:17px;width:45px;background:var(--lime);border-radius:3px;box-shadow:0 0 16px rgba(169,231,94,.7)}.badge{position:absolute;left:22px;bottom:24px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);padding:9px 12px;border-radius:9px;font-size:10px;letter-spacing:1px}.badge b{color:var(--lime)}.section{padding:88px 0}.center{text-align:center;max-width:780px;margin:0 auto 40px}.muted{color:var(--muted)}.offer{background:#f4f8e9;border-top:1px solid #dfe9cf;border-bottom:1px solid #dfe9cf;padding:40px 0}.offer-grid{display:grid;grid-template-columns:1.6fr .7fr;gap:35px;align-items:center}.offer h2{font-size:38px}.offer-price{text-align:center;background:#fff;border:1px solid #d7e4c9;border-radius:18px;padding:25px;box-shadow:var(--shadow)}.offer-price .old{font-weight:900;color:var(--navy)}.offer-price strong{display:block;font-size:82px;line-height:1;color:var(--green);margin:2px}.offer-price span{font-weight:800;color:var(--navy);font-size:14px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{border:1px solid var(--line);border-radius:13px;padding:26px;background:#fff;box-shadow:0 8px 28px rgba(6,29,58,.05);transition:.2s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.icon{font-size:32px;color:var(--green);margin-bottom:15px}.card p{font-size:14px;color:var(--muted)}.link{font-size:13px;font-weight:900;color:var(--blue)}.dark-section{background:linear-gradient(145deg,#061d3a,#0a315c);color:#fff;padding:88px 0}.dark-section .muted{color:#c4d5e5}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product{background:#fff;color:var(--ink);border-radius:15px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.2)}.product-img{height:210px;position:relative;background:linear-gradient(145deg,#eaf4f8,#cbdce6)}.product-img.ocean{background:radial-gradient(circle at 80% 20%,#7fd5e9,#dceef4 40%,#c4d8e4)}.product-img.delta{background:radial-gradient(circle at 25% 25%,#8ab8d5,#eaf3f8 50%,#c6d8e2)}.product-img.river{background:linear-gradient(145deg,#f5f6f4,#dce8e0)}.box{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);width:220px;height:100px;border-radius:14px;background:linear-gradient(145deg,#3b4b54,#111a20);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#d9eef5;box-shadow:0 18px 28px rgba(0,0,0,.25)}.box b{color:#fff;font-size:23px}.tag{position:absolute;left:14px;top:14px;background:var(--green);color:#fff;border-radius:20px;padding:6px 10px;font-size:10px;font-weight:900;z-index:2}.product-body{padding:23px}.product-body p{color:var(--muted);font-size:13.5px;min-height:82px}.chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 16px}.chips span{font-size:10px;font-weight:900;color:var(--navy);background:var(--light);padding:6px 8px;border-radius:5px}.why{background:#f6f9fc}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.benefits>div{background:#fff;padding:24px}.benefits b{color:var(--green)}.benefits p{color:var(--muted);font-size:13px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{border-top:2px solid var(--line);padding:22px 10px 0;position:relative}.step span{position:absolute;top:-17px;left:0;background:var(--green);color:#fff;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:900}.step h3{margin-top:15px;font-size:18px}.step p{font-size:13px;color:var(--muted)}.calculator{background:#f6f9fc}.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start}.calc-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:var(--shadow)}label{font-size:12px;font-weight:900;color:var(--navy);display:block;margin:12px 0 6px}input,select,textarea{width:100%;padding:12px;border:1px solid #d5e0ea;border-radius:6px;font:inherit}.result{margin-top:20px;background:var(--navy);color:#fff;border-radius:10px;padding:20px}.result strong{color:var(--lime);font-size:27px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:8px;padding:17px 19px;margin-bottom:10px}.faq-list summary{cursor:pointer;font-weight:900;color:var(--navy)}.faq-list p{color:var(--muted);font-size:14px}.contact{background:var(--navy);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact p{color:#c5d7e7;font-size:17px}.contact-links{display:grid;gap:13px;margin-top:25px}.contact-links a{font-size:16px;font-weight:800}.contact-links span{color:var(--lime);margin-right:8px}.form{background:#fff;padding:27px;border-radius:13px;display:grid;gap:12px;box-shadow:0 20px 55px rgba(0,0,0,.25)}.form button{border:0}.form-note{font-size:10px!important;color:#7b8998!important;margin:0}.footer{background:#04172d;color:#c5d7e7;padding:44px 0 18px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:35px}.footer img{width:245px;background:#fff;padding:6px;border-radius:4px}.footer-col{display:grid;gap:8px;align-content:start}.footer-col strong{color:#fff}.footer-col a{font-size:13px}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:30px;padding-top:16px;text-align:center;font-size:10px;color:#8198ad}.page-hero{background:linear-gradient(120deg,#041b34,#0a376b);color:#fff;padding:72px 0}.page-hero p{color:#dbe9f6;font-size:18px;max-width:760px}.detail{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.detail-art{height:420px;border-radius:20px;background:linear-gradient(145deg,#eaf4f8,#cbdce6);display:grid;place-items:center}.detail-art .box{position:relative;left:auto;top:auto;transform:none;width:300px;height:170px}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.spec{background:var(--light);border-radius:9px;padding:15px}.spec b{display:block;color:var(--navy);font-size:17px}.spec span{font-size:11px;color:var(--muted)}.notice{background:#f4f8e9;border:1px solid #dfe9cf;padding:17px;border-radius:9px;font-size:12px}.breadcrumbs{font-size:12px;color:#9bb3c9;margin-bottom:15px}.table{width:100%;border-collapse:collapse;margin-top:20px}.table th,.table td{padding:12px;border:1px solid var(--line);text-align:left;font-size:13px}.table th{background:var(--navy);color:#fff}.table tr:nth-child(even){background:#f7fafc}@media(max-width:950px){.nav{display:none}.menu{display:block}.nav.open{display:flex;position:absolute;left:0;right:0;top:82px;background:#fff;padding:18px 20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.hero-grid,.why-grid,.calc-grid,.faq-grid,.contact-grid,.detail{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.offer-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.container{width:calc(100% - 28px)}.logo{width:230px}.navwrap{height:74px}.promo{font-size:11px}.hero-grid{padding:55px 0}.hero-art{height:340px}.globe{width:135px;height:135px}.leaf{left:85px;top:155px}.roof{transform:scale(.75);transform-origin:right bottom}.panels{transform:skew(-25deg) scale(.75);transform-origin:right bottom}.battery{transform:scale(.8);transform-origin:right bottom}.cards,.product-grid,.steps,.benefits,.footer-grid,.spec-grid{grid-template-columns:1fr}.section,.dark-section{padding:65px 0}.actions{flex-direction:column}.btn{width:100%}h1{font-size:44px}.offer-price strong{font-size:70px}}

/* V3 product photography + quote/commerce additions */
.product-photo{width:100%;height:250px;object-fit:contain;background:#f5f8fa;display:block;padding:18px}
.product-photo.hero-photo{height:340px;padding:20px;background:linear-gradient(145deg,#eef5f9,#dce8ef)}
.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.brand-card{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 8px 30px rgba(6,29,58,.05)}.brand-card img{width:100%;height:235px;object-fit:contain;padding:18px;background:#f7fafc}.brand-card .inner{padding:20px}.brand-card h3{font-size:20px}.brand-card p{font-size:13px;color:var(--muted);min-height:66px}.brand-pill{display:inline-block;background:#eef5fb;color:var(--blue);font-size:10px;font-weight:900;padding:6px 9px;border-radius:20px;margin-bottom:9px}
.compare{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.compare th,.compare td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:13px}.compare th{background:var(--navy);color:#fff;font-size:12px;letter-spacing:.3px}.compare tr:nth-child(even) td{background:#f8fafc}.compare td:first-child{font-weight:800;color:var(--navy);width:18%}
.quote-wrap{display:grid;grid-template-columns:.72fr 1.28fr;gap:30px;align-items:start}.quote-panel{background:linear-gradient(145deg,#061d3a,#0a477c);color:#fff;border-radius:15px;padding:30px;box-shadow:var(--shadow)}.quote-panel h2{font-size:35px}.quote-panel p{color:#c8d8e8}.quote-checks{display:grid;gap:11px;margin-top:22px}.quote-checks span:before{content:'✓';color:#a9e75e;font-weight:900;margin-right:8px}.quote-form{background:#fff;border:1px solid var(--line);border-radius:15px;padding:28px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .full{grid-column:1/-1}.quote-form label{font-size:11px;font-weight:800;color:var(--navy);display:block;margin:3px 0 5px}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid #d5e0ea;border-radius:6px;padding:11px 12px;font:inherit;color:var(--ink);background:#fff}.quote-form textarea{min-height:100px}.quote-form .btn{border:0;width:100%;margin-top:6px}.form-success{display:none;padding:13px;border-radius:7px;background:#eef8e9;color:#287b22;font-size:13px;font-weight:700}.commerce-strip{display:flex;gap:12px;align-items:center;justify-content:space-between;background:#eef5fb;border:1px solid #d6e5f1;border-radius:10px;padding:15px 17px;margin:18px 0}.commerce-strip p{margin:0;color:var(--muted);font-size:13px}.commerce-strip .btn{white-space:nowrap}
@media(max-width:900px){.brand-grid{grid-template-columns:1fr 1fr}.quote-wrap{grid-template-columns:1fr}}
@media(max-width:620px){.brand-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.commerce-strip{align-items:flex-start;flex-direction:column}.product-photo.hero-photo{height:280px}}

/* Portable power product cards */
.portable-products{align-items:stretch}
.portable-products .product{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);box-shadow:0 14px 38px rgba(6,29,58,.12)}
.portable-products .product-body{display:flex;flex:1;flex-direction:column}
.portable-products .product-body p{min-height:0}
.portable-products .chips{margin-bottom:20px}
.portable-photo{height:285px;padding:24px;background:#fff}
.featured-product{border-color:#b8d99f!important}
.product-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:auto}
.product-actions .btn{padding:10px 15px;font-size:13px}
.product-price{display:flex;align-items:center;gap:10px;margin:-4px 0 12px}.product-price strong{color:var(--navy);font-size:24px;line-height:1}.product-price span{background:#eef8e8;color:#438322;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.4px}
@media(max-width:620px){.portable-photo{height:240px}.product-actions{align-items:flex-start;flex-direction:column}.product-actions .btn{width:auto}}

.finder-banner{background:linear-gradient(145deg,#eef7e8,#f7fbf4);border-top:1px solid #dcebcf;border-bottom:1px solid #dcebcf}.finder-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.finder-grid p{max-width:760px}.finder-grid .btn{white-space:nowrap}@media(max-width:900px){.finder-grid{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.finder-grid .btn{width:100%}}

/* Homepage photographic hero */
.hero-art{background:#071e3b}
.hero-art>img{width:100%;height:100%;display:block;object-fit:cover}

/* Homeowner-controlled project coordination */
.project-freedom{background:linear-gradient(145deg,#f3f8ec,#f8fbfd);border-top:1px solid #dfe9cf;border-bottom:1px solid #dfe9cf}.project-freedom-intro{max-width:850px;margin-bottom:35px}.project-freedom-intro>p{font-size:17px;color:var(--muted)}.project-freedom-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-freedom-grid article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:0 10px 30px rgba(6,29,58,.06)}.project-freedom-grid article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;font-size:12px;font-weight:900;margin-bottom:18px}.project-freedom-grid p{color:var(--muted);font-size:14px}.project-freedom-callout{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:24px 26px;background:var(--navy);color:#fff;border-radius:14px}.project-freedom-callout strong{font-size:22px}.project-freedom-callout p{color:#c8d8e8;margin:6px 0 0;max-width:760px}.project-freedom-callout .btn{white-space:nowrap}.project-freedom-note{font-size:10px;color:#6d7b89;margin:14px 3px 0}
.project-freedom-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:1050px){.project-freedom-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.project-freedom-callout{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.project-freedom-grid{grid-template-columns:1fr}}

/* EcoFlow ecosystem video */
.ecosystem-video{background:#fff}.ecosystem-video-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center}.ecosystem-video-grid>div:first-child>p{font-size:16px}.ecosystem-video-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 26px;color:var(--navy);font-size:12px;font-weight:800}.video-shell{overflow:hidden;background:#04172d;border-radius:18px;box-shadow:0 25px 60px rgba(6,29,58,.2);line-height:0}.video-shell video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#04172d}
@media(max-width:950px){.ecosystem-video-grid{grid-template-columns:1fr}.ecosystem-video-grid>div:first-child{max-width:760px}}
@media(max-width:620px){.ecosystem-video-points{grid-template-columns:1fr}}

/* EV charger page */
.ev-page-hero{padding:55px 0}.ev-hero-grid{display:grid;grid-template-columns:1fr .95fr;gap:48px;align-items:center}.ev-hero-grid img{width:100%;height:360px;object-fit:cover;border-radius:22px;box-shadow:0 25px 60px rgba(0,0,0,.28)}.ev-products{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ev-product{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.ev-photo{height:330px;position:relative;background:#f5f8fa;display:grid;place-items:center;overflow:hidden}.ev-photo img{width:100%;height:100%;object-fit:contain}.ev-photo.ocean-product{background:#071e3b}.ev-photo.ocean-product img{transform:scale(1.18)}.ev-photo>span{position:absolute;left:18px;top:18px;background:var(--green);color:#fff;padding:7px 11px;border-radius:18px;font-size:10px;font-weight:900;letter-spacing:.5px}.ev-product-body{padding:27px}.ev-product-body>p{color:var(--muted);min-height:70px}.brand-kicker{display:inline-block;color:var(--green);font-size:11px;font-weight:900;letter-spacing:1.4px;margin-bottom:8px}.ev-spec-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.ev-spec-row div{background:var(--light);padding:11px 8px;border-radius:8px}.ev-spec-row b{display:block;color:var(--navy);font-size:15px}.ev-spec-row span{display:block;color:var(--muted);font-size:9px}.feature-list{padding-left:19px;color:var(--muted);font-size:13px}.feature-list li{margin:7px 0}.product-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:22px}.text-link{color:var(--blue);font-size:12px;font-weight:900}.ev-compare{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center}.ev-compare img{width:100%;margin-top:20px;border-radius:14px}.ev-compare .table{margin-top:0}
@media(max-width:950px){.ev-hero-grid,.ev-products,.ev-compare{grid-template-columns:1fr}.ev-hero-grid img{height:320px}.ev-product-body>p{min-height:auto}}
@media(max-width:620px){.ev-photo{height:260px}.ev-spec-row{grid-template-columns:1fr 1fr}.product-actions{align-items:stretch;flex-direction:column}.ev-hero-grid img{height:240px}.ev-compare{overflow-x:auto}.ev-compare .table{min-width:620px}}

/* Standby generator page */
.generator-hero{padding:58px 0}.generator-hero-grid{display:grid;grid-template-columns:1fr .95fr;gap:45px;align-items:center}.generator-hero-art{display:grid;grid-template-columns:1fr 1fr;gap:12px}.generator-hero-art img{width:100%;height:250px;object-fit:contain;background:#fff;border-radius:16px;padding:14px;box-shadow:0 20px 45px rgba(0,0,0,.25)}.generator-products{display:grid;grid-template-columns:1fr 1fr;gap:24px}.generator-product{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.generator-photo{height:300px;position:relative;display:grid;place-items:center;background:#f7fafc}.generator-photo img{width:100%;height:100%;object-fit:contain;padding:24px}.generator-photo>span{position:absolute;left:18px;top:18px;color:#fff;background:#e45b20;padding:7px 11px;border-radius:18px;font-size:10px;font-weight:900}.generator-photo.kohler-photo>span{background:#54616b}.generator-body{padding:27px}.generator-body>p{color:var(--muted);min-height:78px}.generator-specs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.generator-specs div{background:var(--light);border-radius:8px;padding:11px 8px}.generator-specs b{display:block;color:var(--navy);font-size:14px}.generator-specs span{display:block;color:var(--muted);font-size:9px}.generator-compare{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:center}
@media(max-width:950px){.generator-hero-grid,.generator-products,.generator-compare{grid-template-columns:1fr}.generator-body>p{min-height:auto}}
@media(max-width:620px){.generator-hero-art{grid-template-columns:1fr}.generator-hero-art img{height:210px}.generator-photo{height:240px}.generator-specs{grid-template-columns:1fr 1fr}.generator-compare{overflow-x:auto}.generator-compare .table{min-width:620px}}

/* Manufacturer battery videos */
.battery-videos{background:#f6f9fc;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.battery-video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.battery-video-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 14px 36px rgba(6,29,58,.1)}
.responsive-video{position:relative;aspect-ratio:16/9;background:#04172d;overflow:hidden}
.responsive-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.battery-video-body{display:flex;flex:1;flex-direction:column;padding:23px}
.battery-video-body p{color:var(--muted);font-size:13px;min-height:82px}
.battery-video-body .btn{align-self:flex-start;margin-top:auto;font-size:12px;padding:10px 13px}
.video-source-note{margin:18px 2px 0;color:#748395;font-size:10px;text-align:center}
@media(max-width:950px){.battery-video-grid{grid-template-columns:1fr 1fr}.battery-video-card:last-child{grid-column:1/-1;max-width:570px;justify-self:center}}
@media(max-width:620px){.battery-video-grid{grid-template-columns:1fr}.battery-video-card:last-child{grid-column:auto;max-width:none}.battery-video-body p{min-height:auto}}

.solar-photo.portable-solar-photo{background:#fff}.solar-photo.portable-solar-photo img{padding:24px;object-fit:contain}

/* Downloadable specification library */
.spec-hero{background:linear-gradient(120deg,#041b34,#0a376b 60%,#0b5ea8)}
.spec-toolbar{margin-bottom:30px;padding:22px;background:#f6f9fc;border:1px solid var(--line);border-radius:14px}.spec-toolbar label{margin-top:0}.spec-toolbar input{max-width:560px;background:#fff}.spec-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.spec-filters button{border:1px solid #cddae6;background:#fff;color:var(--navy);border-radius:22px;padding:8px 13px;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.spec-filters button.active,.spec-filters button:hover{background:var(--navy);border-color:var(--navy);color:#fff}.spec-library{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.spec-download-card{display:flex;flex-direction:column;min-height:245px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:22px;box-shadow:0 8px 26px rgba(6,29,58,.06)}.spec-download-card[hidden]{display:none}.spec-download-card>span{color:var(--green);font-size:9px;font-weight:900;letter-spacing:1.2px}.spec-download-card h3{margin-top:8px;font-size:18px}.spec-download-card p{color:var(--muted);font-size:12px}.spec-download-card>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto}.spec-download-card a{background:var(--navy);color:#fff;border-radius:6px;padding:8px 10px;font-size:10px;font-weight:900}.spec-download-card a:nth-child(2){background:var(--green)}.spec-download-card a.manufacturer-doc{background:#eef3f7;color:var(--navy);border:1px solid #d6e0e9}.spec-disclaimer{margin-top:25px;color:var(--muted);font-size:10px;text-align:center}
@media(max-width:950px){.spec-library{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.spec-library{grid-template-columns:1fr}.spec-download-card{min-height:220px}}

/* Federal and state incentive finder */
.incentive-hero{background:linear-gradient(120deg,#041b34,#0a376b 60%,#0b5ea8)}.verified-badge{display:inline-block;margin-top:18px;padding:7px 11px;border:1px solid rgba(255,255,255,.3);border-radius:20px;color:#dbe9f6;font-size:10px;font-weight:800}.federal-incentives{background:#f7f9fc}.federal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.incentive-status{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:0 9px 28px rgba(6,29,58,.06)}.incentive-status>span{display:inline-block;border-radius:18px;padding:5px 8px;font-size:8px;font-weight:900;letter-spacing:.5px}.incentive-status.ended>span{background:#fbeaea;color:#a53434}.incentive-status.active>span{background:#eaf6e4;color:#3e7f25}.incentive-status h3{margin-top:16px;font-size:18px}.incentive-status p{color:var(--muted);font-size:12px;min-height:145px}.incentive-status a{color:var(--blue);font-size:11px;font-weight:900}.state-finder-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}.state-finder select{max-width:520px;background:#fff}.finder-help{color:var(--muted);font-size:10px;max-width:520px}.state-results{min-height:390px;background:linear-gradient(145deg,#071e3b,#0a376b);color:#fff;border-radius:18px;padding:30px;box-shadow:0 20px 50px rgba(6,29,58,.2)}.state-placeholder{display:grid;place-items:center;min-height:325px;text-align:center}.state-placeholder>span,.result-kicker{color:var(--lime);font-size:10px;font-weight:900;letter-spacing:1.3px}.state-placeholder h3{font-size:25px}.state-placeholder p,.state-results>p{color:#c5d7e7;font-size:13px}.state-resource-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.state-resource-links a{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:9px;padding:13px}.state-resource-links b{display:block;color:#fff;font-size:12px}.state-resource-links small{display:block;color:#a9bfd3;font-size:9px;margin-top:3px}.state-resource-links a:hover{background:rgba(255,255,255,.14)}.state-note{margin-top:18px;padding:13px;background:rgba(169,231,94,.1);border:1px solid rgba(169,231,94,.25);border-radius:8px;color:#dbe9f6;font-size:10px}.incentive-guide{background:#f7f9fc}.incentive-types{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.incentive-types article{background:#fff;border:1px solid var(--line);padding:23px;border-radius:12px}.incentive-types b{color:var(--green)}.incentive-types h3{margin-top:13px;font-size:17px}.incentive-types p{color:var(--muted);font-size:12px}.incentive-cta{background:var(--navy);color:#fff}.incentive-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:35px}.incentive-cta h2{font-size:35px}.incentive-cta p{color:#c5d7e7;max-width:790px}.incentive-cta .btn{white-space:nowrap}
@media(max-width:1050px){.federal-grid,.incentive-types{grid-template-columns:1fr 1fr}.incentive-status p{min-height:auto}}
@media(max-width:950px){.state-finder-grid{grid-template-columns:1fr}.incentive-cta>.container{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.federal-grid,.incentive-types,.state-resource-links{grid-template-columns:1fr}.state-results{padding:22px}.incentive-cta .btn{width:100%}}
