:root{--green:#17813a;--green-dark:#14542e;--green-light:rgb(233, 231, 220);--green-light:rgba(233, 238, 235);--orange:#bf5b24;--orange-dark:#a74f1f;--yellow:#f4cf16;--orange-light:#ffeee5;--charcoal:#2b2b2b;--muted:#605f5f;--muted:rgba(0, 0, 0, 0.55);--darker-gray:#cecece;--gray:#f5f5f3;--bg:#fff;--btn:var(--green-dark);--btn-hover:var(--green);--btn-action:var(--orange);--btn-action-hover:var(--orange-dark);--link:var(--green);--link-hover:var(--orange);--text:var(--charcoal);--text-inverted:var(--bg);--border:var(--darker-gray);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--font-body:'Public Sans',sans-serif;--font-heading:'Oswald',serif;--font-mono:'IBM Plex Mono',monospace;--text-base:17px;--text-sm:15px;--text-xs:13px;--text-lg:22px;--text-xl:44px;--text-xxl:56px;--text-xxl-mobile:38px;--text-xl-mobile:30px;--text-lg-mobile:18px;--text-base-mobile:15px}*,:after,:before{box-sizing:border-box}button{background:0 0;border:none;outline:0;font-size:inherit;color:inherit;font-weight:inherit;padding:0;font-family:inherit}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);letter-spacing:.01em;max-width:100vw;margin:0;line-height:1.6;overflow-x:hidden}.body-font{font-family:var(--font-body)}.mono-font{font-family:var(--font-mono)}.heading-font{font-family:var(--font-heading)}.xs{font-size:var(--text-xs)}.small{font-size:var(--text-sm)}.base{font-size:var(--text-base)}.large{font-size:var(--text-lg)}.xl{font-size:var(--text-xl)}.xxl{font-size:var(--text-xxl)}h1,h2,h3,h4{font-family:var(--font-heading);line-height:1.2;font-weight:550;color:var(--green-dark)}h1{font-size:var(--text-xl)}h2{font-size:var(--text-xl)}@media (max-width:800px){.xxl{font-size:var(--text-xxl-mobile)}.xl,h2{font-size:var(--text-xl-mobile)}.large{font-size:var(--text-lg-mobile)}body{font-size:var(--text-base-mobile)}}.wght-500{font-weight:500}.wght-600{font-weight:600}.btn:focus,a:focus,button:focus{outline:3px solid var(--orange);outline-offset:3px;text-decoration:none}a.undecorated{text-decoration:none}.container{max-width:1200px;margin:auto;padding:0 var(--space-3)}.container.wide{max-width:1350px}.container.medium{max-width:950px}.container.narrow{max-width:700px}.gap-1{grid-gap:var(--space-1)}.gap-2{grid-gap:var(--space-2)}.gap-3{grid-gap:var(--space-3)}.gap-4{grid-gap:var(--space-4)}.gap-6{grid-gap:var(--space-6)}.gap-8{grid-gap:var(--space-8)}.gap-12{grid-gap:var(--space-12)}.gap-16{grid-gap:var(--space-16)}.grid{display:grid}@media (min-width:900px){.grid-3{grid-template-columns:1fr 1fr 1fr}}@media (min-width:900px){.grid-3{grid-template-columns:1fr 1fr 1fr}}.flex{display:flex;flex-wrap:wrap}.flex-grow{flex-grow:1}.nowrap{flex-wrap:nowrap}@media (max-width:1000px){.flex-reverse-mobile{flex-direction:column-reverse}}.flex-shrink-0{flex-shrink:0}.justify-flex-end{justify-content:flex-end}@media (max-width:800px){.justify-center-mobile{justify-content:center}}.align-self-start{align-self:flex-start}.align-flex-end{align-items:flex-end}.flex-column{flex-direction:column}.flex-25,.flex-33,.flex-40,.flex-50,.flex-60,.flex-66,.flex-75{flex-basis:100%}@media (min-width:1000px){.flex{flex-wrap:nowrap}.flex-25{flex-basis:25%}.flex-75{flex-basis:75%}.flex-50{flex-basis:50%}.flex-40{flex-basis:40%}.flex-60{flex-basis:60%}.flex-33{flex-basis:33.33%}.flex-66{flex-basis:66.66%}}.justify-space-between{justify-content:space-between}.justify-flex-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-flex-end{justify-content:flex-end}.align-center{align-items:center}.align-flex-start{align-items:flex-start}.align-self-center{align-self:center}.sr-only{position:absolute!important;left:-5000px;pointer-events:none;height:0;opacity:0}.italic{font-style:italic;font-variation-settings:'ital' 1}.left{text-align:left}.center{text-align:center}.right{text-align:right}.uppercase{text-transform:uppercase;letter-spacing:1px}.btn,a.btn{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-6);text-decoration:none;cursor:pointer;transition:background .2s ease;border-radius:40px;color:var(--bg);background:var(--btn);align-self:center;font-weight:570;letter-spacing:2%;font-size:var(--text-sm)}.btn:hover{text-decoration:none;background:var(--btn-hover)}.btn.action{background:var(--btn-action)}.btn.cta{background:var(--bg);color:var(--charcoal);border:3px solid var(--yellow)}.btn.action:hover{text-decoration:none;background:var(--btn-action-hover)}.btn:disabled{cursor:default;background:var(--muted)}.muted{color:var(--muted)}.muted-white{color:rgba(255,255,255,.65)}.btn:disabled:hover{transform:none}.no-top-margin{margin-top:0}.no-bottom-margin{margin-bottom:0}.heading-line-height{line-height:1.2}ul{margin:20px auto;list-style:square}ul li{margin-bottom:10px}ul.undecorated{padding:0;list-style:none}iframe,img{max-width:100%;object-fit:contain}img.landscape{aspect-ratio:1.5;object-position:center;object-fit:cover}@media (min-width:800px){.mobile-only{display:none!important}}@media (max-width:800px){.desktop-only{display:none!important}}::-moz-selection{background:var(--yellow);color:var(--text)}::selection{background:var(--yellow);color:var(--text)}footer,section{padding:4em 0}section.footer-details{padding:var(--space-4) 0;width:100%;background:var(--green-dark);color:var(--text-inverted)}.footer-details svg{width:23px;height:23px}@media (max-width:799px){.footer-details .flex{grid-gap:var(--space-2)}.footer-actions,.footer-links,.footer-metadata{justify-content:center;text-align:center}}@media (min-width:800px){.footer-links{columns:2}}.footer-links a:not(.btn){color:var(--text);font-weight:500;text-decoration:none}.green-dark{color:var(--green-dark)}.green{color:var(--green)}.charcoal-bg{background:var(--charcoal);color:var(--text-inverted)}.charcoal-bg a:not(.btn){color:inherit}.green-bg{background:var(--green-dark);color:var(--text-inverted)}.green-bg a:not(.btn){color:var(--text-inverted)}.green-bg a:not(.btn):hover{color:var(--green-light)}.light-green-bg{background:var(--green-light)}.relative{position:relative}img{max-width:100%}.underline{text-decoration:underline}.noscroll{overflow:hidden}svg{fill:currentColor}.contain-p{max-width:700px;margin:auto}a:not(.btn){color:var(--link)}a:not(.btn):focus,a:not(.btn):hover{color:var(--link-hover)}form{background:var(--bg);background:var(--green-light);border:1px solid var(--border);box-shadow:0 0 20px rgba(0,0,0,.15);padding:var(--space-6);color:var(--text)}input[type=email],input[type=tel],input[type=text],textarea{padding:var(--space-6) var(--space-4);height:55px;font-size:var(--text-sm);font-family:inherit;color:inherit;font-weight:400;border:0;width:100%;border:1px solid var(--border);border-radius:var(--radius-sm)}textarea{width:100%;min-height:150px;padding:var(--space-4)}input:focus,textarea:focus{outline:2px solid var(--orange);border-color:transparent;background:var(--gray)}input.invalid,select.invalid,textarea.invalid{outline:2px solid var(--error);border-color:transparent;background:var(--error-bg)}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;max-width:200px;height:50px;padding:0 var(--space-8) 0 var(--space-4);font:inherit;color:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex-grow:0}select:focus{background:var(--bg-alt);outline-color:var(--sun-gold)}label{font-size:var(--text-sm);font-weight:500;margin:25px 0 7px 0;display:block}hr{border-top:5px solid var(--yellow);margin:var(--space-2) auto;max-width:150px;border-bottom:0;background:0 0}.full-width-image-wrapper img{width:100%;aspect-ratio:1.7;object-fit:cover;object-position:right bottom}@media (min-width:900px){.full-width-image-wrapper img{aspect-ratio:1.7}}.full-width{width:100%;text-align:center;justify-content:center}.rotate-180{transform:rotate(180deg)}.rotate-90{transform:rotate(-90deg);transform-origin:center}figure{margin:0}header{position:initial;position:sticky;top:0;z-index:1000}.top-header{z-index:1000;padding:var(--space-4) 0;background:var(--bg)}.bottom-header{background:var(--green-dark);border-bottom:1px solid rgba(0,0,0,.15);box-shadow:0 3px 10px rgba(0,0,0,.15);font-weight:600}header a{color:inherit;text-decoration:none}header .nav-item{color:var(--text-inverted);padding:var(--space-2) 0}.nav-item-dropdown{cursor:pointer}.nav-item-dropdown{position:relative}.nav-item-dropdown-items{display:none;background:var(--black);position:absolute;border:1px solid var(--border);border-top:0;margin-top:0;border-radius:0 0 2px 2px;top:calc(100% + 1px);box-shadow:0 5px 5px rgba(0,0,0,.15);left:0}.nav-item-dropdown .nav-item-dropdown-items.visible,.nav-item-dropdown:hover .nav-item-dropdown-items{display:block}ul.nav-item-dropdown-items{width:250px;margin:0;background:var(--bg)}li.nav-item-dropdown-item{text-wrap:nowrap;text-align:left;margin-bottom:0}li.nav-item-dropdown-item+li.nav-item-dropdown-item{border-top:1px solid var(--border)}li.nav-item-dropdown-item:hover{background:var(--green-light);color:var(--orange)}.nav-item-dropdown-item a{display:block;width:100%;height:100%;padding:var(--space-3)}.orange{color:var(--orange)}.yellow{color:var(--yellow)}.white{color:var(--text-inverted)}.subtitle{text-transform:uppercase;font-size:var(--text-sm);letter-spacing:10%;font-weight:500}.grid-bg{position:relative;background-image:url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 10h10v10H0V10zM10 0h10v10H10V0z' fill='%2317813a' fill-opacity='0.25' fill-rule='evenodd'/%3E%3C/svg%3E")}.review{background:var(--bg);font-size:var(--text-sm);padding:var(--space-2) 0}.review-stars svg{width:25px;height:25px;margin-left:-7px}.review blockquote{margin-top:var(--space-1)}blockquote{margin-left:0;font-style:italic}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.spin svg{animation:2s spin infinite;transform-origin:center}.generac-section{position:relative;padding:0}.generac-section:before{position:absolute;display:block;content:'';width:60%;height:100%;right:0;top:0;background-image:url(https://eyat7jhbguxva4pa.public.blob.vercel-storage.com/generac.webp);background-size:cover;background-position:right}.generac-content{padding:4em 0;position:relative;z-index:2}.generac-content blockquote{font-size:var(--text-lg);font-style:italic}.generac-content:first-of-type:after{width:640px;height:100%;content:'';display:block;position:absolute;top:0;right:calc((var(--space-16) * -1) - 600px);z-index:3;background:linear-gradient(to right,var(--charcoal),transparent)}@media (max-width:800px){.generac-content{position:initial}.generac-content:first-of-type:after,.generac-section:before{width:100%;height:100%;top:0;left:0;z-index:0}.generac-content:first-of-type:after{background:linear-gradient(to bottom right,var(--charcoal),transparent)}.generac-content h1,.generac-content h2,.generac-content p{position:relative;z-index:3}.generac-content.empty{padding:1em 0}}.header-ctas{display:none}@media (max-width:999px){.bottom-header.visible{height:calc(100vh - 90px);overflow-y:auto}.bottom-header nav:not(.visible){display:none}.top-header .flex{justify-content:center}.top-header img{height:60px}.bottom-header nav .container{flex-direction:column;grid-gap:0}.bottom-header nav .nav-item,li.nav-item-dropdown-item{border-top:1px solid rgba(255,255,255,.1);padding:var(--space-4);text-align:left;color:var(--text-inverted)}li.nav-item-dropdown-item a{color:var(--white)}li.nav-item-dropdown-item a:before{content:'-';margin-right:var(--space-2)}li.nav-item-dropdown-item+li.nav-item-dropdown-item{border-top:1px solid rgba(255,255,255,.1)}li.nav-item-dropdown-item{padding:0}.mobile-header-ctas{border-top:1px solid rgba(255,255,255,.1);margin:0 var(--space-4);padding:var(--space-4) 0 var(--space-8) 0}ul.nav-item-dropdown-items{width:100%;position:initial;box-shadow:none;border:0;border-radius:0;margin-top:var(--space-4);background:0 0}.nav-item-dropdown:hover .nav-item-dropdown-items{display:none}.nav-item-dropdown .nav-item-dropdown-items.visible,.nav-item-dropdown:hover .nav-item-dropdown-items.visible{display:block}}.bottom-header,.top-header{text-align:center}.mobile-header-toggle{padding:10px}@media (min-width:1000px){.bottom-header,.top-header{text-align:initial}.header-ctas{display:flex}.mobile-header-ctas,.mobile-header-toggle{display:none}}.transparent{opacity:0}.mobile-header-toggle.transparent{width:0;height:0}