/* Service & Repairs: Figma/PDF desktop geometry; shared buttons and motion. */
.service-page{--page-bleed:max(0px,calc((100vw - 1440px)/2))}
.service-page .s-hero h1{top:22.65px;left:39px;font-size:157.06px;letter-spacing:-3.883px;line-height:1.18}
.service-page .b-hero-copy{width:679px}
.service-page .b-hero-photo{left:805px;top:105px;width:542px;height:559px}
.service-page .b-hero-photo>img{left:-16.947px;position:absolute;top:0;width:553.535px;height:559px;object-fit:fill}
.service-page .b-credentials{left:755px;width:567px}
.service-page .b-hero-actions{gap:0}
.s-textlink{display:inline-flex;align-items:center;gap:20px;font-size:20px;font-weight:850;line-height:22px;white-space:nowrap}
.s-textlink>img{display:block;flex:0 0 12px;width:12px;height:18px}
.s-textlink:is(:hover,:focus-visible){color:var(--green)}
.s-photo{position:relative;aspect-ratio:851/490}
.s-photo-image{position:absolute;left:0;top:2.244898%;width:100%;height:97.755102%;max-width:none;object-fit:fill}
.s-photo-curve{position:absolute;top:0;width:12.338426%;height:auto;max-width:none;pointer-events:none}
.s-photo--right .s-photo-curve{left:14.218566%}
.s-photo--left .s-photo-curve{left:73.971798%}
.service-page .s-intro{height:623px;grid-template-columns:589px 851px}
.service-page .s-intro .b-copy{padding:95px 0 0 121px;width:589px}
.service-page .s-intro .b-body{width:468px}
.service-page .s-intro>.b-wide-photo{margin-top:54px;width:851px;height:490px}
.s-intro .s-textlink{margin:24px 0 0 1px}
.service-page .s-servicing{height:735px;grid-template-columns:822px 618px}
.service-page .s-servicing .b-copy{padding:50px 0 0 44px;width:496px}
.service-page .s-servicing .b-body{width:452px}
.service-page .s-servicing>.b-wide-photo{width:851px;height:490px;margin:101px 0 0 -3px}
.s-servicing .s-textlink{margin-top:22px}
.s-benefits{display:grid;grid-template-columns:calc(958px + var(--page-bleed)) minmax(0,1fr);background:var(--navy);color:white}
.s-benefits-copy{padding:24px 0 32px var(--page-bleed);align-self:center}
.s-benefits-copy>.b-eyebrow,.s-benefits h2{margin-left:39px}
.s-benefits h2{margin-top:10px;white-space:nowrap}
.s-benefits ul{width:958px;display:grid;grid-template-columns:225px 242px 245px 246px;list-style:none;margin:30px 0 0;padding:0}
.s-benefits li{position:relative;text-align:center}
.s-benefits li+li:before{content:'';position:absolute;left:0;top:6px;height:193px;border-left:1px solid #ffffff66}
.s-benefit-icon{height:64px;display:flex;justify-content:center;align-items:center}
.s-benefit-icon img{display:block;flex-shrink:0;max-width:none}
.s-benefits h3{font-size:18px;line-height:22px;margin:21px 0 0;font-weight:700}
.s-benefits p{font-size:18px;line-height:22px;margin:14px 0 0;font-weight:500;text-box-trim:trim-both;text-box-edge:cap alphabetic}
.s-benefits-photo{display:block;width:100%;height:auto;align-self:stretch;object-fit:cover;border-radius:20px 0 0 20px}
.s-repairs{max-width:1440px;height:874px;margin:auto;padding:75px 121px 0;display:grid;grid-template-columns:647px 551px}
.s-repair-copy{width:440px}
.s-repair-copy>.b-body{margin-top:9px;font-size:18px;line-height:22px;font-weight:700}
.service-page .s-repair-copy .pdf-paragraph+.pdf-paragraph{margin-top:22px}
.s-symptoms{position:relative;isolation:isolate;list-style:none;height:268px;width:calc(635px + var(--page-bleed));margin:35px 0 0 calc(-121px - var(--page-bleed));padding:14px 0 0 calc(121px + var(--page-bleed));background:url('assets/services/symptoms-background.svg') right top/635px 268px no-repeat;color:white}
.s-symptoms:before{content:'';position:absolute;z-index:-1;left:0;top:0;width:50%;height:100%;background:var(--navy)}
.s-symptoms li{display:flex;gap:13px;align-items:center;min-height:47.165px;font-size:22px;font-weight:700;white-space:nowrap}
.s-symptoms img{display:block;flex-shrink:0;width:24.526px;height:24.526px}
.s-repair-copy .s-symptoms+.b-body{margin-top:38px}
.s-repair-copy .s-textlink{margin:50px 0 0 3px}
.s-repair-photos{padding-top:23px}
.s-repair-photos>img{display:block;width:551px;height:290px;border-radius:20px;object-fit:cover}
.s-repair-photos>img+img{margin-top:86px}
.s-gas-safe{height:calc(50px + 100vw * 445 / 1440);position:relative;color:white}
.s-gas-curve{position:absolute;left:7.708333%;top:50px;width:7.291667%;height:auto;transform:translateY(-19.047619%);z-index:2}
.s-gas-backdrop{position:absolute;left:0;top:50px;width:100%;aspect-ratio:1440/445;mask:url('assets/services/gas-safe-mask.svg') 0 0/100% 100% no-repeat}
.s-gas-background{display:block;width:100%;height:100%;object-fit:fill}
.s-gas-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(#0007,#0007),linear-gradient(180deg,transparent,#000a 73%)}
.s-gas-copy{position:absolute;left:calc(240px + var(--page-bleed));top:calc(50% - 132.5px);z-index:2}
.service-page .s-gas-copy h2{font-family:'Myriad Pro',Arial,sans-serif;font-size:58.763px;line-height:70.33px;text-box-trim:trim-both;text-box-edge:cap alphabetic}
.s-gas-copy .b-body{margin-top:40px;font-size:16px;line-height:19px;font-weight:700}
.service-page .s-gas-copy .pdf-paragraph+.pdf-paragraph{margin-top:15px}
.s-gas-logo{display:block;position:absolute;top:87.75px;left:306.37px;width:85.086px;height:92.911px}
.s-gas-logo img{display:block}
.s-gas-person{display:block;position:absolute;left:calc(674px + var(--page-bleed));top:calc(50% - 150.5px);width:528px;height:333px;object-fit:fill;z-index:1;border-radius:26.681px}
.service-page .s-faq{min-height:800px;padding-top:120px}
.service-page .s-faq .b-faq-intro>.s-faq-photo{width:401px;height:424px;object-fit:contain;margin:48px 0 0 -4px}
.service-page .s-cta .b-cta-copy{padding-top:57px}
.service-page .s-cta h2:first-child{white-space:nowrap}
.service-page .s-cta .s-cta-subtitle{margin-top:31px}
.service-page .s-cta .b-cta-copy>div{margin-top:13px;gap:0}
.s-cta .b-cta-photo{mask:url('assets/services/cta-mask.svg') 0 0/100% 100% no-repeat}
@media(min-width:1441px){
 .service-page .s-intro>.b-wide-photo{width:calc(851px + var(--page-bleed));height:auto}
 .service-page .s-intro{height:auto;min-height:623px;padding-bottom:80px}
 .service-page .s-servicing>.b-wide-photo{width:calc(851px + var(--page-bleed));height:auto;margin-left:calc(-3px - var(--page-bleed))}
 .service-page .s-servicing{height:auto;min-height:735px;padding-bottom:83px}
 .service-page .s-cta .b-cta-copy{padding-top:0}
}
@media(max-width:1439px){
 .service-page .s-hero h1{left:32px;font-size:10.9vw;letter-spacing:0}
 .service-page .b-hero-copy{width:58%;max-width:679px}
 .service-page .b-hero-copy .b-eyebrow{white-space:normal}
 .service-page .b-hero-photo{left:auto;right:25px;top:95px;width:42%;height:550px}
 .service-page .b-hero-photo>img{left:-3.13%;width:102.13%;height:auto}
 .service-page .b-credentials{left:auto;right:35px;width:43%}
 .service-page .s-intro,.service-page .s-servicing{height:auto;min-height:0;grid-template-columns:1fr 1fr;gap:30px;padding:65px 32px}
 .service-page .s-intro .b-copy,.service-page .s-servicing .b-copy{padding:0;width:auto}
 .service-page .s-intro .b-body,.service-page .s-servicing .b-body{width:auto}
 .service-page .s-intro>.b-wide-photo{width:calc(100% + 32px);height:auto;margin:0}
 .service-page .s-servicing>.b-wide-photo{width:calc(100% + 32px);height:auto;margin:0 0 0 -32px;align-self:center}
 .s-benefits{grid-template-columns:2fr 1fr}
 .s-benefits-copy{padding:30px 20px}
 .s-benefits-copy>.b-eyebrow,.s-benefits h2{margin-left:0}
 .s-benefits h2{white-space:normal;font-size:30px}
 .s-benefits ul{width:100%;grid-template-columns:repeat(4,1fr);gap:10px}
 .s-benefits li+li:before{display:none}
 .s-benefits h3{font-size:16px}
 .s-benefits p{font-size:15px;line-height:19px}
 .s-benefits p br{display:none}
 .s-benefits-photo{height:100%;object-position:center}
 .s-repairs{height:auto;padding:65px 32px;grid-template-columns:1fr 1fr;gap:40px}
 .s-repair-copy{width:auto}
 .s-repair-copy .b-body{width:auto}
 .s-symptoms{margin-left:-32px;padding-left:32px;width:calc(100% + 64px);background-size:100% 100%}
 .s-symptoms li{font-size:17px;white-space:normal;padding-right:25px}
 .s-repair-copy .s-textlink{margin-top:30px}
 .s-repair-photos>img{width:100%;height:auto;aspect-ratio:551/290}
 .s-repair-photos>img+img{margin-top:50px}
 .s-gas-safe{height:510px}
 .s-gas-backdrop{height:460px;aspect-ratio:auto}
 .s-gas-background{object-fit:cover}
 .s-gas-copy{left:100px;top:115px}
 .s-gas-copy .b-body{max-width:470px}
 .s-gas-copy .pdf-line{display:inline}
 .service-page .s-gas-copy h2{font-size:48px;line-height:58px}
 .s-gas-copy .b-body{margin-top:30px}
 .s-gas-logo{left:260px;top:65px}
 .s-gas-person{left:auto;right:0;top:auto;bottom:35px;width:44%;height:auto}
 .service-page .s-faq{min-height:0;padding-top:65px}
 .service-page .s-faq .b-faq-intro>.s-faq-photo{width:100%;height:360px;margin:35px 0 0;object-position:center}
 .service-page .s-cta .b-cta-copy{padding-top:45px}
 .service-page .s-cta h2:first-child{white-space:normal}
 .service-page .s-cta .s-cta-subtitle{margin-top:25px}
 .service-page .s-cta .b-cta-copy>div{margin-top:22px}
}
@media(max-width:650px){
 .service-page .s-hero h1{position:relative;left:auto;top:auto;font-size:10.6vw;letter-spacing:0;line-height:1.2}
 .service-page .b-hero-copy{width:100%;padding-top:32px}
 .service-page .b-hero-copy h2{font-size:clamp(40px,10.7vw,69px);line-height:1.04}
 .service-page .b-hero-description br{display:none}
 .service-page .b-hero-photo{position:relative;left:auto;right:auto;top:auto;width:min(100%,440px);height:auto;aspect-ratio:542/559;margin:25px auto 0}
 .service-page .b-credentials{position:relative;left:auto;right:auto;width:calc(100% - 30px);max-width:440px;height:125px;margin:-25px auto 0}
 .service-page .s-intro,.service-page .s-servicing{display:flex;flex-direction:column;padding:45px 20px;gap:30px}
 .service-page .s-intro>.b-wide-photo{width:calc(100% + 20px);order:1}
 .service-page .s-servicing>.b-wide-photo{width:calc(100% + 20px);margin-left:-20px;order:1}
 .s-benefits{display:flex;flex-direction:column}
 .s-benefits-copy{padding:35px 20px;width:100%}
 .s-benefits ul{grid-template-columns:1fr 1fr;gap:35px 15px}
 .s-benefits h3{font-size:18px}
 .s-benefits p{font-size:16px;line-height:20px}
 .s-benefits-photo{height:auto;width:100%;border-radius:0;aspect-ratio:482/366}
 .s-repairs{display:flex;flex-direction:column;padding:45px 20px;gap:35px}
 .s-symptoms{width:calc(100% + 40px);margin-left:-20px;padding-left:20px}
 .s-repair-photos{padding-top:0}
 .s-repair-photos>img+img{margin-top:25px}
 .s-gas-safe{height:auto;padding:45px 20px 0;background:var(--navy);display:flex;flex-direction:column}
 .s-gas-curve{display:none}
 .s-gas-backdrop{inset:0;width:100%;height:100%;mask:none;border-radius:20px}
 .s-gas-copy{position:relative;left:auto;top:auto;width:100%}
 .service-page .s-gas-copy h2{font-size:42px;line-height:50px}
 .s-gas-logo{left:230px;top:55px;width:64px;height:auto}
 .s-gas-logo img{width:64px;height:auto}
 .s-gas-copy .b-body{margin-top:30px;max-width:none;font-size:16px;line-height:21px}
 .s-gas-person{position:relative;right:auto;bottom:auto;align-self:flex-end;width:min(100%,380px);height:auto;margin-top:25px}
 .service-page .s-faq{padding:50px 20px;display:flex;flex-direction:column;gap:25px}
 .service-page .s-faq .b-faq-intro{width:100%}
 .service-page .s-faq .b-faq-intro>.s-faq-photo{width:100%;height:300px;margin:30px 0 0}
 .service-page .s-faq .b-faq-list{padding-top:0}
 .service-page .s-cta .b-cta-copy{padding:35px 20px}
 .service-page .s-cta .s-cta-subtitle{margin-top:22px}
}

/* Font tracking matches the supplied desktop letter widths. */
@media(min-width:1440px){.service-page .b-hero-copy h2{letter-spacing:-3.76px}.service-page .b-hero-copy h2 em{letter-spacing:-3.56px}}
