:root{--ink:#211630;--muted:#60706a;--green:#5437c5;--orange:#ec6b32;--white:#fff;--line:#e4ddef;--topbar-height:40px;--site-header-height:82px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding-top:calc(var(--topbar-height) + var(--site-header-height));color:var(--ink);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.topbar{position:fixed;top:0;left:0;right:0;width:100%;height:var(--topbar-height);z-index:30050;background:#211630;color:#dce8e2;overflow:hidden}.topbar-inner,.topbar-trust{width:100%;overflow:hidden;white-space:nowrap}.topbar-track{height:40px;display:inline-flex;align-items:center;gap:28px;width:max-content;white-space:nowrap;animation:criticalTicker 22s linear infinite}.topbar-track span{flex:0 0 auto;font-size:13px;font-weight:700}@keyframes criticalTicker{0%{transform:translateX(100vw)}100%{transform:translateX(-100%)}}header{position:fixed;top:var(--topbar-height);left:0;right:0;width:100%;height:var(--site-header-height);z-index:30040;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(19,33,29,.08)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand-logo-link{display:flex;align-items:center}.site-logo{width:min(290px,25vw);height:auto}.nav nav{display:flex;align-items:center;gap:clamp(18px,2vw,34px);font-size:14px;font-weight:700}.nav nav>a,.services-toggle,.brands-toggle{white-space:nowrap}.menu-toggle{display:none}.navcall{background:var(--green);color:#fff!important;padding:12px 18px;border-radius:999px}.dropdown,.brand-dropdown{position:relative}.services-toggle,.brands-toggle{border:0;background:none;font-weight:700;padding:25px 0}.service-menu,.brand-nav-menu{display:none}.mnav-panel{display:none}.pagehero{padding:85px 0;background:linear-gradient(135deg,#f6f2e9,#eee8fb)}.pagehero.compact{text-align:center;padding:90px 0}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:var(--orange);font-weight:800;font-size:12px}.pagehero h1,.section h2{font-family:Georgia,"Times New Roman",serif;line-height:1.08;letter-spacing:-1.5px}.pagehero h1{font-size:clamp(43px,5vw,67px);margin:15px 0}.pagehero p{font-size:18px;color:var(--muted);max-width:680px;margin:15px auto}.section{padding:105px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.content>div>p{color:#60706a}.contact-list{display:grid;gap:12px;margin-top:28px}.contact-list>*{padding:20px;background:#f6f2e9;border-radius:14px;display:grid}.lead-form{background:#fff;color:var(--ink);border-radius:24px;padding:34px;box-shadow:0 18px 60px rgba(20,47,39,.13)}.lead-form h2{font-family:Georgia,"Times New Roman",serif;font-size:34px;margin:5px 0}.lead-form label{font-size:12px;font-weight:800;display:grid;gap:6px;margin:13px 0}.lead-form input,.lead-form select,.lead-form textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fbfcfa}.btn,.lead-form button{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:800;border:1px solid transparent}.primary,.lead-form button{background:var(--green);color:#fff}.lead-form button{width:100%}.hp{position:absolute;left:-9999px}.float,.scroll-top{visibility:hidden}
@media(max-width:850px){:root{--site-header-height:76px}.wrap{width:min(100% - 28px,1180px)}.site-logo{width:min(260px,64vw)}header .nav{position:relative}.nav>nav{display:none!important}.menu-toggle{display:flex!important;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid rgba(15,124,120,.22);border-radius:16px;background:#fff;color:#2c1e46;font-size:25px}.pagehero.compact{padding:62px 0}.pagehero h1{font-size:clamp(34px,10vw,48px)}.pagehero p{font-size:16px}.section{padding:65px 0}.split{grid-template-columns:1fr;gap:35px}.lead-form{padding:24px}.mnav-panel{display:block;position:fixed;z-index:30030;top:calc(var(--topbar-height) + var(--site-header-height) + 8px);left:12px;right:12px;max-height:calc(100dvh - var(--topbar-height) - var(--site-header-height) - 20px);overflow:hidden;border-radius:20px;background:#fff;opacity:0;visibility:hidden;pointer-events:none}}@media(max-width:560px){:root{--topbar-height:38px;--site-header-height:74px}.topbar-track{height:38px;animation-duration:18s}.site-logo{width:min(250px,66vw)}}
/* V116 responsive footer */
.premium-footer-main{display:grid!important;grid-template-columns:minmax(260px,1.25fr) repeat(4,minmax(150px,1fr))!important;gap:32px!important;align-items:start!important}
.footer-brand-column,.footer-link-column,.footer-contact-column{min-width:0!important;width:auto!important;max-width:none!important}
.footer-brand-column{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
.footer-logo-link{display:block!important;width:min(100%,360px)!important}
.footer-site-logo{width:100%!important;max-width:360px!important;height:auto!important;object-fit:contain!important}
.footer-brand-about{max-width:42ch!important;line-height:1.7!important}
.footer-link-column{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
.footer-link-column a{display:block!important;width:100%!important;text-align:left!important;line-height:1.45!important;overflow-wrap:normal!important;word-break:normal!important}
.footer-contact-column{display:flex!important;flex-direction:column!important;align-items:flex-start!important}
.footer-contact-link,.footer-address{width:100%!important;min-width:0!important}
.footer-contact-link strong,.footer-address p{overflow-wrap:anywhere!important;word-break:normal!important}
@media(max-width:1050px){.premium-footer-main{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:34px!important;row-gap:34px!important}.footer-brand-column{grid-column:1/-1!important}}
@media(max-width:600px){
.premium-footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)!important;column-gap:18px!important;row-gap:30px!important}
.footer-brand-column{grid-column:1/-1!important;align-items:center!important;text-align:center!important}
.footer-logo-link{width:min(100%,300px)!important;margin-inline:auto!important}.footer-site-logo{width:100%!important;max-width:300px!important;margin-inline:auto!important}
.footer-brand-about{max-width:34ch!important;margin-inline:auto!important;font-size:14px!important}
.footer-trust-badges,.footer-primary-actions{justify-content:center!important;width:100%!important}
.footer-link-column,.footer-contact-column{min-width:0!important}.footer-link-column h3,.footer-contact-column h3{font-size:17px!important;line-height:1.2!important}
.footer-link-column a{font-size:13px!important;padding:6px 0!important;line-height:1.35!important}
.footer-contact-link strong,.footer-address p{font-size:12px!important;line-height:1.45!important}.footer-contact-link span,.footer-address>span{font-size:10px!important}
}
@media(max-width:430px){
.premium-footer-main{grid-template-columns:minmax(0,.88fr) minmax(0,1.32fr)!important;column-gap:14px!important}
.footer-link-column a{font-size:12.5px!important}.footer-contact-link strong,.footer-address p{font-size:11.5px!important}
.footer-primary-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important}.footer-call,.footer-wa{font-size:12px!important;padding:10px 13px!important}
}
/* =========================================================
   V117 DEFINITIVE MOBILE FOOTER
   Overrides all older footer media rules with higher specificity.
   ========================================================= */
@media(max-width:900px){
  footer.premium-footer .wrap.premium-footer-main{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:22px!important;
    row-gap:34px!important;
    width:min(100% - 28px,1180px)!important;
    margin-inline:auto!important;
    padding:42px 0 34px!important;
    align-items:start!important;
  }

  footer.premium-footer .wrap.premium-footer-main>.footer-brand-column{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    margin:0!important;
    padding:0!important;
  }

  footer.premium-footer .footer-logo-link{
    display:flex!important;
    width:min(100%,320px)!important;
    max-width:320px!important;
    margin:0 auto!important;
    justify-content:center!important;
  }

  footer.premium-footer .footer-site-logo{
    display:block!important;
    width:100%!important;
    max-width:320px!important;
    height:auto!important;
    margin:0 auto!important;
    object-fit:contain!important;
  }

  footer.premium-footer .footer-brand-about{
    width:100%!important;
    max-width:34rem!important;
    margin:16px auto 0!important;
    padding:0 8px!important;
    color:rgba(255,255,255,.78)!important;
    font-size:14px!important;
    line-height:1.65!important;
    text-align:center!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  footer.premium-footer .footer-trust-badges{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:8px!important;
    width:100%!important;
    margin-top:16px!important;
  }

  footer.premium-footer .footer-trust-badges span{
    flex:0 0 auto!important;
    white-space:nowrap!important;
    font-size:11px!important;
    padding:7px 10px!important;
  }

  footer.premium-footer .footer-primary-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:10px!important;
    width:100%!important;
    margin-top:16px!important;
  }

  footer.premium-footer .footer-primary-actions a{
    flex:0 0 auto!important;
    min-width:120px!important;
    font-size:12px!important;
    padding:10px 14px!important;
  }

  footer.premium-footer .wrap.premium-footer-main>.footer-link-column[aria-label="Company links"]{
    grid-column:1!important;
  }
  footer.premium-footer .wrap.premium-footer-main>.footer-link-column[aria-label="Gas appliance services"]{
    grid-column:2!important;
  }
  footer.premium-footer .wrap.premium-footer-main>.footer-link-column[aria-label="Kitchen gas services"]{
    grid-column:1!important;
  }
  footer.premium-footer .wrap.premium-footer-main>.footer-contact-column{
    grid-column:2!important;
  }

  footer.premium-footer .footer-link-column,
  footer.premium-footer .footer-contact-column{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    align-items:flex-start!important;
    text-align:left!important;
    margin:0!important;
    padding:0!important;
  }

  footer.premium-footer .footer-link-column h3,
  footer.premium-footer .footer-contact-column h3{
    width:100%!important;
    min-height:0!important;
    margin:0 0 14px!important;
    padding:0 0 10px!important;
    justify-content:flex-start!important;
    text-align:left!important;
    font-size:16px!important;
    line-height:1.25!important;
  }

  footer.premium-footer .footer-link-column h3::after,
  footer.premium-footer .footer-contact-column h3::after{
    left:0!important;
    transform:none!important;
  }

  footer.premium-footer .footer-link-column>a{
    width:100%!important;
    justify-content:flex-start!important;
    margin:0!important;
    padding:6px 0!important;
    text-align:left!important;
    font-size:12.5px!important;
    line-height:1.4!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  footer.premium-footer .footer-contact-link,
  footer.premium-footer .footer-address{
    width:100%!important;
    min-width:0!important;
    margin:0 0 14px!important;
    text-align:left!important;
  }

  footer.premium-footer .footer-contact-link strong,
  footer.premium-footer .footer-address p{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.45!important;
    text-align:left!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}

@media(max-width:430px){
  footer.premium-footer .wrap.premium-footer-main{
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
    column-gap:16px!important;
    row-gap:30px!important;
    width:calc(100% - 24px)!important;
  }

  footer.premium-footer .footer-logo-link,
  footer.premium-footer .footer-site-logo{
    max-width:280px!important;
  }

  footer.premium-footer .footer-brand-about{
    max-width:320px!important;
    font-size:13px!important;
    line-height:1.6!important;
  }

  footer.premium-footer .footer-trust-badges{
    gap:6px!important;
  }

  footer.premium-footer .footer-trust-badges span{
    font-size:10px!important;
    padding:6px 8px!important;
  }

  footer.premium-footer .footer-primary-actions a{
    min-width:110px!important;
    font-size:11px!important;
  }

  footer.premium-footer .footer-link-column h3,
  footer.premium-footer .footer-contact-column h3{
    font-size:15px!important;
  }

  footer.premium-footer .footer-link-column>a{
    font-size:11.5px!important;
  }

  footer.premium-footer .footer-contact-link strong,
  footer.premium-footer .footer-address p{
    font-size:10.8px!important;
  }
}
