.elementor-kit-5{--e-global-color-primary:#303393;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#575757;--e-global-color-accent:#EE111A;--e-global-color-94af4c2:#E0E1FF;--e-global-color-7b9e9e5:#000000;--e-global-color-cc37a63:#ADB0FF;--e-global-color-7b791c5:#CCCCCC;--e-global-color-913e0cd:#F3F4FB;--e-global-color-494b4b7:#FFFFFF4D;--e-global-color-bcb9f63:#FFFFFF0F;--e-global-color-43530fd:#00000033;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:56px;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:36px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:44px;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:24px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:24px;--e-global-typography-2742ae6-font-family:"Inter";--e-global-typography-2742ae6-font-size:14px;--e-global-typography-2742ae6-font-weight:400;--e-global-typography-2742ae6-line-height:22px;--e-global-typography-e47ff7e-font-family:"Inter";--e-global-typography-e47ff7e-font-size:12px;--e-global-typography-e47ff7e-line-height:20px;--e-global-typography-766cc52-font-family:"Inter";--e-global-typography-766cc52-font-size:28px;--e-global-typography-766cc52-font-weight:600;--e-global-typography-766cc52-line-height:36px;--e-global-typography-eb0f92b-font-family:"Inter";--e-global-typography-eb0f92b-font-size:24px;--e-global-typography-eb0f92b-font-weight:600;--e-global-typography-eb0f92b-line-height:32px;--e-global-typography-052e65f-font-family:"Inter";--e-global-typography-052e65f-font-size:20px;--e-global-typography-052e65f-font-weight:600;--e-global-typography-052e65f-line-height:28px;--e-global-typography-b5b871e-font-family:"Inter";--e-global-typography-b5b871e-font-size:16px;--e-global-typography-b5b871e-font-weight:600;--e-global-typography-b5b871e-line-height:24px;background-color:var( --e-global-color-secondary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 a:hover{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 h1{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-5 h2{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-5 h3{font-family:var( --e-global-typography-766cc52-font-family ), Sans-serif;font-size:var( --e-global-typography-766cc52-font-size );font-weight:var( --e-global-typography-766cc52-font-weight );line-height:var( --e-global-typography-766cc52-line-height );}.elementor-kit-5 h4{font-family:var( --e-global-typography-eb0f92b-font-family ), Sans-serif;font-size:var( --e-global-typography-eb0f92b-font-size );font-weight:var( --e-global-typography-eb0f92b-font-weight );line-height:var( --e-global-typography-eb0f92b-line-height );}.elementor-kit-5 h5{font-family:var( --e-global-typography-052e65f-font-family ), Sans-serif;font-size:var( --e-global-typography-052e65f-font-size );font-weight:var( --e-global-typography-052e65f-font-weight );line-height:var( --e-global-typography-052e65f-line-height );}.elementor-kit-5 h6{font-family:var( --e-global-typography-b5b871e-font-family ), Sans-serif;font-size:var( --e-global-typography-b5b871e-font-size );font-weight:var( --e-global-typography-b5b871e-font-weight );line-height:var( --e-global-typography-b5b871e-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1366px;}.e-con{--container-max-width:1366px;--container-default-padding-top:100px;--container-default-padding-right:60px;--container-default-padding-bottom:100px;--container-default-padding-left:60px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-primary-font-size:40px;--e-global-typography-primary-line-height:48px;--e-global-typography-secondary-font-size:30px;--e-global-typography-secondary-line-height:38px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 a:hover{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-5 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-5 h3{font-size:var( --e-global-typography-766cc52-font-size );line-height:var( --e-global-typography-766cc52-line-height );}.elementor-kit-5 h4{font-size:var( --e-global-typography-eb0f92b-font-size );line-height:var( --e-global-typography-eb0f92b-line-height );}.elementor-kit-5 h5{font-size:var( --e-global-typography-052e65f-font-size );line-height:var( --e-global-typography-052e65f-line-height );}.elementor-kit-5 h6{font-size:var( --e-global-typography-b5b871e-font-size );line-height:var( --e-global-typography-b5b871e-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:60px;--container-default-padding-right:40px;--container-default-padding-bottom:60px;--container-default-padding-left:40px;}}@media(max-width:767px){.elementor-kit-5{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 a:hover{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-5 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-5 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-5 h3{font-size:var( --e-global-typography-766cc52-font-size );line-height:var( --e-global-typography-766cc52-line-height );}.elementor-kit-5 h4{font-size:var( --e-global-typography-eb0f92b-font-size );line-height:var( --e-global-typography-eb0f92b-line-height );}.elementor-kit-5 h5{font-size:var( --e-global-typography-052e65f-font-size );line-height:var( --e-global-typography-052e65f-line-height );}.elementor-kit-5 h6{font-size:var( --e-global-typography-b5b871e-font-size );line-height:var( --e-global-typography-b5b871e-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:60px;--container-default-padding-right:20px;--container-default-padding-bottom:60px;--container-default-padding-left:20px;}}
/* Start custom CSS */[id]{
    scroll-margin-top: 170px;
}

p{
    margin-block-start: 0px;
}

p:last-child{
    margin-block-end: 0px;
}

.text-wrap-balance{
    text-wrap: balance;
}

.text-wrap-pretty{
    text-wrap: pretty;
}

.elementor-icon-wrapper{
    display: flex;
}

.link-semibold a {
    font-weight: 600 !important;
}

#mobile-menu-overlay-id{
    display: none;
}

#mobile-menu-overlay-id.show{
    display: block !important;
}

body:has(#mobile-menu-overlay-id.show){
    overflow: hidden;
}

.cursor-pointer{
    cursor: pointer;
}

.zoom-img-on-card-hover-container .elementor-widget-image > a{
    display: flex;
    width: 100%;
}

.zoom-img-on-card-hover-container:hover .zoom-img-on-card-hover{
    transform: scale(1.1);
}

.zoom-img-on-card-hover-container .zoom-img-on-card-hover{
    transition: all 300ms;
}

.margin-top-auto{
    margin-top: auto !important;
}

.elementor-kit-5 a:hover{
    font-family: unset;
    font-size: unset;
    font-weight: unset;
    line-height: unset;
}

.elementor-kit-5 a{
    font-family: unset;
    font-size: unset;
    font-weight: unset;
    line-height: unset;
}

.text-transform-uppercase{
    text-transform: uppercase !important;
}

.text-bold,
.text-bold p,
.text-bold h1,
.text-bold h2,
.text-bold h3,
.text-bold h4,
.text-bold h5,
.text-bold h6{
    font-weight: 700 !important;
}

.fixed-list-margin ul{
    margin: 0px;
    padding-left: 28px;
}

.text-transform-capitalize{
    text-transform: capitalize;
}

.link-with-underline a{
    text-decoration: underline;
}

.formatted-wysiwg-content h2,
.formatted-wysiwg-content h3,
.formatted-wysiwg-content h4,
.formatted-wysiwg-content h5{
    margin-top: 40px;
    margin-bottom: 16px;
    color: white;
}


@media only screen and (max-width: 1024px){
    .formatted-wysiwg-content h2,
    .formatted-wysiwg-content h3,
    .formatted-wysiwg-content h4,
    .formatted-wysiwg-content h5{
        margin-top: 32px;
    }
}

.formatted-wysiwg-content h2:first-child,
.formatted-wysiwg-content h3:first-child,
.formatted-wysiwg-content h4:first-child,
.formatted-wysiwg-content h5:first-child{
    margin-top: 0px !important;
}

.formatted-wysiwg-content h2:last-child,
.formatted-wysiwg-content h3:last-child,
.formatted-wysiwg-content h4:last-child,
.formatted-wysiwg-content h5:last-child{
    margin-bottom: 0px !important;
}

/* Make it same color as original list color */
.icon-list-hover-apply-only-to-link li:not(:has(a)):hover .elementor-icon-list-text{
    color: #EDE9DE !important;
}

.review-badge-prestyle{
    min-height: 40px !important;
    background-color: white !important;
    border-radius: 1000px !important;
}

.custom-faq details {
    border-bottom: solid 1px #ADB0FF;
}

.custom-faq h3{
    line-height: 24px !important;
}

.pipe-art-image{
    aspect-ratio: 1366 / 140 !important;
}

@media only screen and (max-width: 767px){
    .pipe-art-image{
        aspect-ratio: 375 / 80 !important;
    }
    
    [id]{
        scroll-margin-top: 130px;
    }
}

.phone-icon-button{
    min-width: fit-content !important;
}

.rank-math-breadcrumb,
.rank-math-breadcrumb a{
    font-family: "Inter";
    font-weight: 400;
    font-size: 12px;
    line-height: 20px;
    color: white;
    transition: all 300ms;
}

.rank-math-breadcrumb a:hover{
    color: #EE111A;
}

.request-a-quote-form{
    display: none !important;
}

body:has(#form) .request-a-quote-form{
    display: block !important;
}

body:has(#form) .request-a-quote-contact{
    display: none !important;
}

.elementor-icon-list-icon{
    overflow: visible;
}

.accordion-with-blue-checklist details{
    background-color: white;
    border-radius: 12px;
}

.accordion-with-blue-checklist h3{
	line-height: 28px !important;
}


.accordion-with-blue-checklist .e-n-accordion-item-title-text,
.accordion-with-blue-checklist .e-font-icon-svg{
    transition: all 300ms;
}

.accordion-with-blue-checklist .e-n-accordion-item-title-text{
    display: flex;
    justify-content: center;
    gap: 12px;
}

.accordion-with-blue-checklist .e-n-accordion-item-title-text::before{
    content: "";
    width: 40px;
		min-width: 40px;
    height: 40px;
		min-height: 40px;
    display: flex;
    background-image: url('/wp-content/uploads/2026/09/provinceplumbing-blue-checkbox.svg');
}
	.accordion-with-blue-checklist.blue-bg details{
		background-color: #F3F4FB;
	}
	
	.min-width-fit-content{
		min-width: fit-content !important;
	}
/* ============================================================
   SPACING SCALE
   Desktop → Tablet/Mobile responsive

   PURPOSE:
   Use these classes to handle all vertical spacing between
   elements. This ensures consistency across the site and
   reduces the time needed to implement spacing.

   USAGE:
   Add the class to any Elementor widget or section via
   Advanced → CSS Classes. e.g. "margin-bottom-40"

   RULE:
   Use these classes for vertical spacing only.
   Horizontal gaps inside flex/grid layouts should be
   handled per-component using gap property instead.

   SCALE:
   100px → 60px on tablet/mobile
   60px  → 40px on tablet/mobile
   40px  → 32px on tablet/mobile
   32px  → 24px on tablet/mobile
   24px  → 20px on tablet/mobile
   20px  → 16px on tablet/mobile
   16px and below stay the same on all screen sizes
   ============================================================ */

/* MARGIN BOTTOM */
.margin-bottom-100 { margin-bottom: 100px !important; }
.margin-bottom-60  { margin-bottom: 60px !important; }
.margin-bottom-40  { margin-bottom: 40px !important; }
.margin-bottom-32  { margin-bottom: 32px !important; }
.margin-bottom-24  { margin-bottom: 24px !important; }
.margin-bottom-20  { margin-bottom: 20px !important; }
.margin-bottom-16  { margin-bottom: 16px !important; }
.margin-bottom-12  { margin-bottom: 12px !important; }
.margin-bottom-8   { margin-bottom: 8px !important; }
.margin-bottom-4   { margin-bottom: 4px !important; }

/* PADDING BOTTOM */
.padding-bottom-100 { padding-bottom: 100px !important; }
.padding-bottom-60  { padding-bottom: 60px !important; }
.padding-bottom-40  { padding-bottom: 40px !important; }
.padding-bottom-32  { padding-bottom: 32px !important; }
.padding-bottom-24  { padding-bottom: 24px !important; }
.padding-bottom-20  { padding-bottom: 20px !important; }
.padding-bottom-16  { padding-bottom: 16px !important; }
.padding-bottom-12  { padding-bottom: 12px !important; }
.padding-bottom-8   { padding-bottom: 8px !important; }
.padding-bottom-4   { padding-bottom: 4px !important; }

@media (max-width: 1024px) {

    /* MARGIN BOTTOM */
    .margin-bottom-100 { margin-bottom: 60px !important; }
    .margin-bottom-60  { margin-bottom: 40px !important; }
    .margin-bottom-40  { margin-bottom: 32px !important; }
    .margin-bottom-32  { margin-bottom: 24px !important; }
    .margin-bottom-24  { margin-bottom: 20px !important; }
    .margin-bottom-20  { margin-bottom: 16px !important; }
    /* 16px and below stay the same on all screen sizes */
	
    /* PADDING BOTTOM */
    .padding-bottom-100 { padding-bottom: 60px !important; }
    .padding-bottom-60  { padding-bottom: 40px !important; }
    .padding-bottom-40  { padding-bottom: 32px !important; }
    .padding-bottom-32  { padding-bottom: 24px !important; }
    .padding-bottom-24  { padding-bottom: 20px !important; }
    .padding-bottom-20  { padding-bottom: 16px !important; }
    /* 16px and below stay the same on all screen sizes */
		
	 /* MARGIN BOTTOM MOBILE */
    .margin-bottom-100-mobile { margin-bottom: 100px !important; }
    .margin-bottom-60-mobile  { margin-bottom: 60px !important; }
    .margin-bottom-40-mobile  { margin-bottom: 40px !important; }
    .margin-bottom-32-mobile  { margin-bottom: 32px !important; }
    .margin-bottom-24-mobile  { margin-bottom: 24px !important; }
    .margin-bottom-20-mobile  { margin-bottom: 20px !important; }
    .margin-bottom-16-mobile  { margin-bottom: 16px !important; }
    .margin-bottom-12-mobile  { margin-bottom: 12px !important; }
    .margin-bottom-8-mobile   { margin-bottom: 8px !important; }
    .margin-bottom-4-mobile   { margin-bottom: 4px !important; }
	
    /* PADDING BOTTOM MOBILE */
    .padding-bottom-100-mobile { padding-bottom: 100px !important; }
    .padding-bottom-60-mobile  { padding-bottom: 60px !important; }
    .padding-bottom-40-mobile  { padding-bottom: 40px !important; }
    .padding-bottom-32-mobile  { padding-bottom: 32px !important; }
    .padding-bottom-24-mobile  { padding-bottom: 24px !important; }
    .padding-bottom-20-mobile  { padding-bottom: 20px !important; }
    .padding-bottom-16-mobile  { padding-bottom: 16px !important; }
    .padding-bottom-12-mobile  { padding-bottom: 12px !important; }
    .padding-bottom-8-mobile   { padding-bottom: 8px !important; }
    .padding-bottom-4-mobile   { padding-bottom: 4px !important; }
}/* End custom CSS */