/*
Theme Name:     GTARestoration.com
Theme URI:      https://gtarestoration.com/
Author:         911.es
Author URI:     https://911.es/
Description:    www.GTARestoration.com | – 24-Hour Emergency Plumbing Services: Water Damage, Fire Damage, Flood Cleanup, Biohazard & Trauma Scene Cleanup, Mold Removal, 24-Hr Emergency Plumber Service: Water Damage Restoration, Fire Damage Restoration, Flooded Basement Cleanup, Mold Remediation, BioHazard Cleanup and Decontamination, – serving Toronto & the GTA.
Version:        911.13.0
Text Domain:    GTA Restoration
License URI: 	https://gtarestoration.com/privacy-policy/
Tags:           Emergency Plumbing, Water Damage, Fire Damage, Flood Cleanup, Biohazard &amp; Trauma Scene Cleanup, Mold Removal, 24-Hr Emergency Plumber Service: Water Damage Restoration, Fire Damage Restoration, Flooded Basement Cleanup, Mold Remediation, BioHazard Cleanup and Decontamination,
 */
.contact-form input[type=email], .contact-form input[type=tel] { width: 90.5%; padding: 7px; font-size: 18px; line-height: 26px; font-weight: 400; color: #fff; background-color: #b71119; border-radius: 10px; border: 2px solid #b71119; cursor: auto; transition: all .2s ease-in-out 0s; text-shadow: 0 1px 3px #b1131b; } .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output { border-color: #ffb900; background-color:#ffb900; color: #fff; } .wpcf7-not-valid-tip { color: #ffb900; font-size: 1em; font-weight: normal; display: block; } .wpcf7 form.sent .wpcf7-response-output { border-color: #46b450; background-color:#46b450; color: #fff; } .udara p { font-size: 18px !important; line-height: 26px; } ul li { font-size: 16px !important; } .pagination { clear:both; padding:20px 0; position:relative; font-size:14px; line-height:13px; } .pagination span, .pagination a { display:block; float:left; margin: 2px 2px 2px 0; padding:8px 12px 7px 10px; text-decoration:none; width:auto; color:#fff; background: #b61018; } .pagination a:hover{ color:#fff; background: #333; } .pagination .current{ padding:8px 12px 7px 10px; background: #333; color:#fff; } .hwmiAR .flow-layout .feed-content-item { margin: 0px 0px !important; } /*code added by bhagat*/ .grecaptcha-badge { visibility: hidden; } .hwmiAR .feed-header h4, .HtIre .feed-header h4 { font-size: 14px !important; line-height: 1.6em; font-family: bebas_neueregular !important; font-weight: 500 !important; } .hwmiAR .flow-layout .feed-content-item { padding: 15px !important; margin: 0px 0px; } .cGHLYp .feed-content-description { color: #FFFF7E !important; } .arkrelated { padding: 5px !important; box-sizing: border-box; } .arkrelated div.mtrans { width: calc(25% - 10px) !important; max-width: calc(25% - 10px) !important; margin: 5px !important; box-sizing: border-box; } .formobile { display: none; } /* below code for small devices */
@media screen and (max-width: 990px) {
    .formobile { display: block; }
    .fordesktop { display: none; }
    #section-left .wrapper .row.\|\|.mobile .col_4 { width: 98%; margin: 0; padding: 0 13px; }
    #section-left .wrapper .row.\|\|.mobile .col_8 { width: 98%; margin: 0; }
    .list-ul { padding: 0; }
    .section-bottom-content .col-md-20.col-lg-20 ul li.center-text { margin: 0; }
    #section-left .wrapper .row.mobile { margin: 0 !important; }
    #section-left .wrapper .row.\|\|.mobile .col_4 h4.aside_title { margin-left: 0; }
    html { overflow-x: hidden; }
    .arkrelated div.mtrans { padding: 5px 0 !important; }
    #section.learn-more-section .col_4 { width: 100%; margin: 0; }
    #section.learn-more-section .other_links { border: 0 !important; max-height: inherit; }
    #section.learn-more-section .col_4 ul { margin: 0; }
    .section-bottom-content-right { width: 100%; }
    .section-bottom-content .col-md-20.col-lg-20 ul li.center-text ul li { margin: 0; }
}
/* bhagat code end */
/* Codes created by 911.es */ .section-4 h2{ color:#dedede } .lwp-hm-sd-menu .menu-item a{ position:relative; left:18px; }  #homeservices .home-services:nth-child(15) .heading-text{ color:#323332; text-shadow:rgba(0, 0, 0, 0.3) 0px 1px 1px; } body.single-post .section-services-inn .paddingzero .arkrelated{ display:none !important; } body.single-blog #content p a{ color:#696969; } body.single-blog #content p{ font-size:8px; } body.single-blog #content hr{ display:none; } body.single-blog .section-services-inn .paddingzero .cta-full{ width:99%; } body.page-id-11987 .lwp-blog-main section p{ display:none; } .sm-feed-wrapper header h2{ width: 88px !important; font-size: 13px !important; font-weight: 400 !important; grid-template-columns: auto !important; font-family: Muli,sans-serif !important; padding: 9px 0 !important; } .custom-button { background-color: #CF171E; color: white; border: none; padding: 10px 25px; text-align: center; text-decoration: auto; display: inline-block; font-family: 'bebas_neueregular'; font-size: 26px; margin: 18px 2px; cursor: pointer; border-radius: 5px; transition: background-color 0.3s ease;} .custom-button:hover { background-color: #b61119;} .section-services-inn .paddingzero hr { margin-bottom: 35px; } .section-services-inn .paddingzero .cta-full { margin: 25px 0 35px; margin-bottom: 35px !important; } .section-services-inn h3 a{ color:#ce171e; } .section-services-inn div h2{ color:#ce171e; } #homeservices .home-services:hover { background-size: 95.5% 95.5%; }

/* GTA related-articles permanent layout fix — 2026-09-20.
   Keeps the related cards and emergency CTA directly below the blog post
   and caps the outer row at the theme's existing 991px article-content width
   so it does not expand wider than the post on large desktop screens. */
body.single-blog .gta-related-row {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 991px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

body.single-blog .gta-related-primary,
body.single-blog .gta-related-content {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

body.single-blog .gta-related-row::before,
body.single-blog .gta-related-row::after,
body.single-blog .gta-related-primary::before,
body.single-blog .gta-related-primary::after,
body.single-blog .gta-related-content::before,
body.single-blog .gta-related-content::after {
    content: "";
    display: table;
    clear: both;
}

body.single-blog .gta-related-content > .col-md-12,
body.single-blog .gta-related-primary > .col-md-12 {
    clear: both !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

body.single-blog .gta-related-content .arkrelated {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

body.single-blog .gta-related-primary .cta.cta-full {
    clear: both !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* ==========================================================
   GTA THEME v5 — Related box containment + blog list arrows
   2026-09-20
   ========================================================== */

/* The legacy related heading and the Jetpack/theme related cards can
   be separate siblings. Put the border on their shared parent so the
   heading AND all related cards stay inside one clean responsive box. */
body.single-blog .gta-related-box {
    clear: both !important;
    float: none !important;
    display: flow-root !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 10px !important;
    background: #fff !important;
    border: 1px solid #c7c7c7 !important;
    border-radius: 10px !important;
    box-sizing: border-box !important;
}

/* Remove the old inner border so there is only one box. */
body.single-blog .gta-related-box .arkrelated {
    clear: both !important;
    float: none !important;
    display: flow-root !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
}

body.single-blog .gta-related-box .arkrelated > h3 {
    margin: 0 0 8px !important;
    padding: 0 !important;
    line-height: 1.35 !important;
}

/* The shared script places Jetpack Related Posts immediately after
   .arkrelated. Because both now share .gta-related-box, those cards
   remain inside the same bordered section instead of below it. */
body.single-blog .gta-related-box #jp-relatedposts {
    clear: both !important;
    width: 100% !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
}

/* Avoid a second generic 'Related' heading when our branded heading is
   already present above the cards. */
body.single-blog .gta-related-box #jp-relatedposts .jp-relatedposts-headline {
    display: none !important;
}

@media (max-width: 767px) {
    body.single-blog .gta-related-box {
        padding: 8px !important;
        border-radius: 8px !important;
    }
}

/* Blog-post main content lists: use the same red pointing arrow seen
   on the service pages. Excludes theme/sidebar/specialty lists. */
body.single-blog .gta-main-content ul:not(.list-norm):not(.specialty-services):not(.arrow-list) {
    list-style: none !important;
    list-style-type: none !important;
    margin: 18px 0 24px 0 !important;
    padding: 0 !important;
}

body.single-blog .gta-main-content ul:not(.list-norm):not(.specialty-services):not(.arrow-list) > li {
    display: block !important;
    position: relative !important;
    list-style: none !important;
    list-style-type: none !important;
    margin: 0 0 14px 0 !important;
    padding: 0 0 0 28px !important;
    line-height: 1.55 !important;
}

body.single-blog .gta-main-content ul:not(.list-norm):not(.specialty-services):not(.arrow-list) > li::before {
    content: "\279C" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 18px !important;
    height: auto !important;
    color: #e31019 !important;
    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.55 !important;
}

/* Preserve normal numbering on ordered lists. */
body.single-blog .gta-main-content ol {
    display: block !important;
    list-style: decimal outside !important;
    list-style-type: decimal !important;
    margin: 18px 0 24px 0 !important;
    padding-left: 34px !important;
}

body.single-blog .gta-main-content ol > li {
    display: list-item !important;
    position: static !important;
    list-style: decimal outside !important;
    list-style-type: decimal !important;
    margin: 0 0 14px 0 !important;
    padding-left: 4px !important;
    line-height: 1.55 !important;
}

body.single-blog .gta-main-content ol > li::before {
    content: none !important;
    display: none !important;
}

body.single-blog .gta-main-content ul ul {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

@media (max-width: 767px) {
    body.single-blog .gta-main-content ul:not(.list-norm):not(.specialty-services):not(.arrow-list) > li {
        padding-left: 24px !important;
        margin-bottom: 13px !important;
    }

    body.single-blog .gta-main-content ol {
        padding-left: 30px !important;
    }
}

/* GTA shared layout corrections — externalized from inline head CSS for cacheability. */
#gta-ai-wrapper { bottom: calc(var(--gta-ai-bottom-offset, 86px) + env(safe-area-inset-bottom, 0px)) !important; }
    #gta-ai-window { max-height: max(120px, calc(100vh - var(--gta-ai-bottom-offset, 86px) - 96px)) !important; max-height: max(120px, calc(100dvh - var(--gta-ai-bottom-offset, 86px) - 96px)) !important; overflow-y: auto !important; }
    #jp-relatedposts { clear: both; width: 100%; margin: 28px 0 !important; padding: 0 !important; }
    #jp-relatedposts .jp-relatedposts-headline { display: block; float: none; margin: 0 0 16px !important; padding: 0 !important; line-height: 1.5 !important; }
    #jp-relatedposts .jp-relatedposts-headline em { line-height: inherit; }
    #jp-relatedposts .jp-relatedposts-headline em::before { display: none !important; }
    #jp-relatedposts .jp-relatedposts-items { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0 !important; }
    #jp-relatedposts .jp-relatedposts-items::before,
    #jp-relatedposts .jp-relatedposts-items::after { display: none !important; }
    #jp-relatedposts .jp-relatedposts-items .jp-relatedposts-post { float: none !important; width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; text-align: left !important; opacity: 1; }
    #jp-relatedposts .jp-relatedposts-post-img { display: block; width: 100%; height: auto; }
    #jp-relatedposts .jp-relatedposts-post-title { margin: 12px 0 8px !important; line-height: 1.45 !important; }
    #jp-relatedposts .jp-relatedposts-post-title a { font-size: 16px !important; line-height: 1.45 !important; }
    #jp-relatedposts .jp-relatedposts-post p,
    #jp-relatedposts .jp-relatedposts-post time { text-align: left !important; font-size: 14px !important; line-height: 1.5 !important; }
    .section-services-inn .col-md-6.contentWrapper:has(> p > img) + .col-md-6.paddingzero:not(.contentWrapper) p { text-align: left !important; }
    @media (min-width: 992px) {
      .section-services-inn .col-md-6.contentWrapper:has(> p > img) + .col-md-6.paddingzero:not(.contentWrapper) { padding-left: 28px !important; }
    }
    .contentWrapper:has(> .before-after),
    .contentWrapper:has(> .twentytwenty-wrapper) { display: flow-root; margin-bottom: 8px; }
    .section-services-inn .contentWrapper:has(> .before-after) > hr,
    .section-services-inn .contentWrapper:has(> .twentytwenty-wrapper) > hr { margin-bottom: 32px; }
    .contentWrapper > .twentytwenty-wrapper { float: right; width: 66%; margin: 0 0 24px 28px; }
    .contentWrapper > .twentytwenty-wrapper > .before-after { float: none; width: 100%; margin: 0; }
    .contentWrapper:has(> .twentytwenty-wrapper) > p { text-align: left !important; }
    .contentWrapper:has(> .twentytwenty-wrapper) > p.fullwidthmobile { width: auto !important; }
    .section-services-inn .lwp-s-blocks + .contentWrapper { padding-top: 12px !important; }
    .section-services-inn .lwp-s-blocks + .contentWrapper > :is(h2, h3, h4):first-child { margin-top: 0 !important; }
    .section-services-inn .contentWrapper.gallery { clear: both; padding-top: 32px !important; }
    .section-services-inn .gallery.contentWrapper > p:first-child:has(> span[style*="bebas_neueregular"]) { line-height: 1.2; }
    .section-services-inn .gallery.contentWrapper > p:first-child > span[style*="bebas_neueregular"] { display: block; padding-top: 0 !important; line-height: 1.2; }
    .section-services-inn .main-service-content p:not([style*="text-align"]):not(.wp-caption-text),
    .section-services-inn .lwp-s-blocks p:not([style*="text-align"]) { text-align: left !important; }
    .section-services-inn .gallery > .lwp-s-blocks { clear: both; padding-top: 24px !important; }
    .section-services-inn .gallery > .lwp-s-blocks > :is(h2, h3, h4):first-child { margin-top: 0 !important; }
    .section-services-inn .gallery > .lwp-s-blocks a { display: inline; margin: 0; }
    @media (max-width: 600px) {
      #jp-relatedposts .jp-relatedposts-items { grid-template-columns: minmax(0, 1fr); gap: 28px; }
      .contentWrapper > .twentytwenty-wrapper { float: none; width: 100%; margin: 0 0 24px; }
      .contentWrapper:has(> .twentytwenty-wrapper) { margin-bottom: 8px; }
    }
    .section-services-inn .contentWrapper.gta-comparison-row { display: grid; grid-template-columns: minmax(0, 1fr) 66%; grid-template-areas: "rule rule" "copy media"; column-gap: 28px; align-items: start; }
    .gta-comparison-row > hr { grid-area: rule; width: 100%; }
    .gta-comparison-copy { grid-area: copy; min-width: 0; }
    .gta-comparison-copy > .gta-comparison-heading { margin: 0 0 12px !important; line-height: 1.2; }
    .gta-comparison-copy p { text-align: left !important; }
    .gta-comparison-caption > p.fullwidthmobile { width: auto !important; }
    .gta-comparison-caption > :last-child { margin-bottom: 0 !important; }
    .gta-comparison-row > .twentytwenty-wrapper,
    .gta-comparison-row > .before-after { grid-area: media; float: none; width: 100%; margin: 0 0 24px; }
    @media (min-width: 601px) {
      .gta-comparison-copy > .gta-comparison-heading { transform: translateY(-8px); }
    }
    @media (max-width: 600px) {
      .section-services-inn .contentWrapper.gta-comparison-row { grid-template-columns: minmax(0, 1fr); grid-template-areas: "rule" "heading" "media" "caption"; column-gap: 0; }
      .gta-comparison-copy { display: contents; }
      .gta-comparison-heading { grid-area: heading; }
      .gta-comparison-caption { grid-area: caption; margin-bottom: 10px; }
    }


/* =========================================================
   PERFORMANCE v9: HOMEPAGE LCP + FORCED REFLOW CLEANUP
   - CTA background is a real eager/high-priority image in HTML.
   - Desktop viewport banner height is handled in CSS, avoiding JS
     geometry reads/writes during initial render and resize.
   - Responsive fallback logo can serve the smaller 145px WebP.
   ========================================================= */
.gta-site-logo { display: inline-block; line-height: 0; }
.gta-site-logo img { display: block; max-width: 100%; height: auto; }

.home .banner.banner_home .gta-home-cta {
    background-image: none !important;
    isolation: isolate;
}
.home .banner.banner_home .gta-home-cta-bg {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left top;
    z-index: 0;
    pointer-events: none;
}
.home .banner.banner_home .gta-home-cta .phone {
    position: relative;
    z-index: 1;
}
.home .banner.banner_home .gta-home-cta .form {
    z-index: 2;
}

@media only screen and (min-width: 1001px) and (min-height: 601px) {
    .home .banner.banner_home {
        height: calc(100vh - 85px);
    }
}


/* GTA clean standalone/default page template — v11 */
.gta-standard-page { clear: both; padding: 30px 0 45px; }
.gta-standard-page .gta-standard-page-article { max-width: 1100px; margin: 0 auto; }
.gta-standard-page-header h1 { margin: 0 0 24px; }
.gta-standard-breadcrumb { margin: 0 0 18px; font-size: 14px; }
.gta-standard-page-featured-image { margin: 0 0 24px; }
.gta-standard-page-featured-image img { display: block; width: 100%; height: auto; }
.gta-standard-page-content { float: none; width: 100%; }
.gta-standard-page-content::after { content: ""; display: table; clear: both; }
@media (max-width: 767px) {
    .gta-standard-page { padding: 20px 15px 32px; }
    .gta-standard-page-header h1 { margin-bottom: 18px; }
}


/* GTA text-flow repair — 2026-10-09. Empty WordAds slots must not split headings from copy. Filled advertising slots remain visible. */
.wordads-ad-wrapper:has(.wordads-ad-content:empty) {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Equipment and commercial descriptions use natural word spacing; preserve explicit alignment and captions. */
body:is(.single-equipment, .single-commercial) .product-detail :is(.product-detail-inn, .lwp-s-blocks, .formobile) p:not([style*="text-align"]):not(.wp-caption-text) {
    text-align: left !important;
}
/* Legacy link-only PRE rows must wrap inside the content column, including mobile. */
.contentWrapper pre:has(a):not(:has(code)),
.gta-main-content pre:has(a):not(:has(code)),
.gta-standard-page-content pre:has(a):not(:has(code)) {
    white-space: normal;
    overflow-wrap: break-word;
}

/* Blog and standard-page body copy: align naturally without altering explicit centring or captions. */
.gta-main-content p:not([style*="text-align"]):not(.wp-caption-text),
.gta-standard-page-content p:not([style*="text-align"]):not(.wp-caption-text) {
    text-align: left !important;
}


/* Shared photo-gallery thumbnails — 200px, capped to the available mobile column. */
.gallery > div > a.fancybox:has(> img) {
    width: 200px;
    max-width: 100%;
}
.gallery > div > a.fancybox > img {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    box-sizing: border-box;
}

/* Leave room for the requested 200px frame within the desktop gallery columns. */
@media (min-width: 992px) {
    .gallery > div:has(> a.fancybox > img) {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* Site-wide layout rules migrated from Additional CSS — 2026-10-10. */
/* Hide the restoration assistant on the homepage only. */
body.home #gta-ai-wrapper {
  display: none !important;
}

/* GTA shared lower section: equal-height columns that follow content.
   2026-10-10: keep the dark panel joined to the short footer on wide screens;
   stack both panels naturally on tablets and phones. */
.container-fluid.section > .row:has(> .section-4) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
}
.container-fluid.section > .row:has(> .section-4)::before,
.container-fluid.section > .row:has(> .section-4)::after {
  display: none;
}
.container-fluid.section > .row:has(> .section-4) > .col-md-6 {
  float: none;
  width: auto;
  min-width: 0;
  align-self: stretch;
}
@media (max-width: 991px) {
  .container-fluid.section > .row:has(> .section-4) {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* Match the shared financing panel to its surrounding theme section at every screen size. */
.new-cta-section .call_to_action {
  background-color: transparent;
}

/* Homepage mobile banner: let the menu and call banner follow their content. */
@media (max-width: 767px) {
    body.home .banner.banner_home {
        display: flex;
        flex-direction: column;
        height: auto !important;
        min-height: 0;
    }
    body.home .banner.banner_home .message {
        position: relative;
        top: auto;
        left: auto;
        width: auto;
        margin: 24px 20px 20px;
    }
    body.home .banner.banner_home .services {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        width: 100%;
        padding: 0 clamp(15px, calc(28vw - 87px), 80px);
        margin: 0;
    }
    body.home .banner.banner_home .services ul {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
        margin: 0;
    }
    body.home .banner.banner_home .services ul li {
        display: block;
        width: auto;
        min-width: 0;
    }
    body.home .banner.banner_home .services .menu-item a {
        position: static;
        width: 100%;
        height: auto;
        min-height: 44px;
        padding: 12px 4px 12px 10px;
        font-size: clamp(12px, 3.2vw, 14px);
        line-height: 1.4;
        white-space: nowrap;
    }
    body.home .banner.banner_home .cta {
        position: relative;
        top: auto;
        bottom: auto;
        width: 100%;
        margin-top: 0;
    }
    body.home .banner.banner_home .cta .phone,
    body.home .banner.banner_home .cta .form {
        display: block;
        height: auto;
        float: none;
    }
}

/* Homepage lower topics: consistent breathing room without empty paragraphs. */
body.home .section-4 .section-bottom-content > p + h3 {
    margin-top: 28px !important;
    margin-bottom: 10px !important;
    padding-bottom: 0;
}
@media (max-width: 767px) {
    body.home .section-4 .section-bottom-content > p + h3 {
        margin-top: 24px !important;
        margin-bottom: 8px !important;
    }
}

/* Balance homepage topics against the adjacent panel as its content changes. */
@media (min-width: 992px) {
    body.home .section-4 {
        display: flex;
        flex-direction: column;
    }
    body.home .section-4 > .section-bottom-content {
        display: flex;
        flex-direction: column;
        flex: 1;
        width: 100%;
        padding-bottom: 24px;
    }
    body.home .section-4 .section-bottom-content > p:has(+ h3) {
        margin-bottom: 0;
    }
    body.home .section-4 .section-bottom-content > p + h3 {
        margin-top: auto !important;
        padding-top: 28px;
    }
}

/* Homepage main section headings: a calmer scale that follows the viewport. */
body.home .section-1 .section-content > h2 {
    font-size: clamp(30px, 2.8vw, 44px);
    line-height: 1.15;
}

/* Keep the two-column service menu on narrow phones. */
@media (max-width: 359px) {
    body.home .banner.banner_home .services { padding: 0 8px; }
}

/* Equipment overview: slightly larger body copy, scoped to this catalogue page. */
body.page-id-895 .section-products .section-services-left > p {
    font-size: 16px !important;
    line-height: 24px;
}
body.page-id-895 .section-products .section-services-left > p > span {
    font-size: inherit !important;
}

/* Equipment overview: give copy breathing room without narrowing its photo. */
body.page-id-895 .section-products .section-services-left > :is(h2, h3, p:not(:has(img))) {
    padding-inline: clamp(12px, 4%, 24px);
    box-sizing: border-box;
}

/* GTA catalogue layouts: readable cards at every width (2026-10-10). */
body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
  align-items: stretch;
}
body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero > br,
body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero::before,
body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero::after,
body:is(.page-id-895, .page-id-26905) .products::before,
body:is(.page-id-895, .page-id-26905) .products::after {
  display: none;
}
body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero > div {
  float: none;
  width: auto;
  min-width: 0;
}
body:is(.page-id-895, .page-id-26905) .section-products .products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  float: none;
  width: 100%;
}
body:is(.page-id-895, .page-id-26905) .products > .paddingzero {
  float: none;
  width: auto;
  min-width: 0;
}
body:is(.page-id-895, .page-id-26905) .products .content-product {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(80px, 6vw, 130px);
  grid-template-rows: auto 1fr;
  gap: 14px 16px;
  height: 100%;
  min-height: 0;
  padding: clamp(20px, 1.6vw, 30px);
  box-sizing: border-box;
}
body:is(.page-id-895, .page-id-26905) .content-product > a:first-child {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  align-self: start;
}
body:is(.page-id-895, .page-id-26905) .content-product > a:first-child img {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: 130px;
  object-fit: contain;
  margin: 0;
}
body:is(.page-id-895, .page-id-26905) .content-product h3 {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  margin: 0;
  font-size: clamp(25px, 1.8vw, 34px);
  line-height: 1.2;
  overflow-wrap: break-word;
}
body:is(.page-id-895, .page-id-26905) .content-product > p {
  grid-column: 1 / -1;
  width: auto !important;
  min-width: 0;
  margin: 0;
  text-align: left;
  line-height: 1.5;
}
body:is(.page-id-895, .page-id-26905) .content-product > p:last-child {
  align-self: end;
}
body:is(.page-id-895, .page-id-26905) .section-services-left p {
  text-align: left;
  line-height: 1.6;
}
body:is(.page-id-895, .page-id-26905) .section-services-left img {
  display: block;
  float: none;
  max-width: 100%;
  height: auto;
  margin-inline: auto;
}
@media (max-width: 1599px) {
  body:is(.page-id-895, .page-id-26905) .section-products .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 1199px) {
  body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero {
    grid-template-columns: minmax(0, 1fr);
  }
  body:is(.page-id-895, .page-id-26905) .section-services-left {
    padding: 28px clamp(20px, 4vw, 40px);
  }
  body:is(.page-id-895, .page-id-26905) .section-services-left h1 {
    font-size: clamp(32px, 4vw, 46px);
    line-height: 1.2;
    text-align: center;
  }
  body:is(.page-id-895, .page-id-26905) .section-services-left h1 span {
    font-size: inherit !important;
  }
  body:is(.page-id-895, .page-id-26905) .section-services-left h2 {
    line-height: 1.3;
  }
  body:is(.page-id-895, .page-id-26905) .section-services-left > center > h2 {
    padding-block: 12px;
    margin-block: 20px;
  }
  body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero > .pullright {
    padding-inline: 0;
  }
}
@media (max-width: 639px) {
  body:is(.page-id-895, .page-id-26905) .section-products .products {
    grid-template-columns: minmax(0, 1fr);
  }
  body:is(.page-id-895, .page-id-26905) .products .content-product {
    grid-template-columns: minmax(0, 1fr) 90px;
    padding: 22px;
  }
}

/* Keep catalogue panels balanced and the overview title inside its column. */
body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero > .pullright { display: flex; }
body:is(.page-id-895, .page-id-26905) .section-products .products { flex: 1; }
body.page-id-26905 .section-services-left h1 { font-size: clamp(32px, 3vw, 56px); line-height: 1.2; overflow-wrap: break-word; }

/* Equipment thumbnails are direct image children in this template. */
body.page-id-895 .content-product > img { grid-column: 2; grid-row: 1; display: block; float: none; width: 100%; max-width: 100%; height: auto; max-height: 130px; object-fit: contain; margin: 0; }
body.page-id-895 .content-product > a.btn { grid-column: 1 / -1; justify-self: start; align-self: end; margin: 0; }
body.page-id-895 .content-product > p:empty { display: none; }

/* Equipment/commercial details: blend the top gutter with the white content. */
body:is(.single-equipment, .single-commercial) { background-color: #fff; }
@media (max-width: 767px) {
  body:is(.single-equipment, .single-commercial) > .product-detail { margin-top: 85px; }
  body.admin-bar:is(.single-equipment, .single-commercial) > .product-detail { margin-top: 85px; }
}

/* Commercial detail: keep a modest gap above the desktop introduction. */
@media (min-width: 992px) {
  body.single-commercial .product-detail .col-md-8 > hr:first-of-type { display: none; }
  body.single-commercial .product-detail .col-md-8 > .product-detail-inn:first-child:not(:has(*)) {
    padding: 0;
    margin: 0;
  }
  body.single-commercial .product-detail .col-md-8 > .fordesktop {
    padding-top: 24px;
  }
}

/* Responsive site header: one desktop row; compact navigation before crowding. */
body > .navbar { min-height: 85px; background-size: 100% 85px; background-repeat: repeat-x; background-color: #111; }
body > .navbar .navbar-header::before,
body > .navbar .navbar-header::after { display: none; }
body > .navbar > .container-fluid:has(> .navbar-header),
body > .navbar > .container-fluid > .row {
  display: flex; align-items: center; flex-wrap: nowrap; gap: 20px;
  width: 100%; min-height: 85px; margin: 0; padding: 0 24px;
}
body > .navbar > .container-fluid:has(> .row) { padding: 0; }
body > .navbar > .container-fluid::before,
body > .navbar > .container-fluid::after,
body > .navbar > .container-fluid > .row::before,
body > .navbar > .container-fluid > .row::after { display: none; }
body > .navbar .navbar-header {
  display: flex; align-items: center; flex: 0 1 auto;
  width: auto; min-width: 0; height: 85px; margin: 0; padding: 0; float: none;
}
body > .navbar .navbar-brand {
  display: flex; align-items: center; flex: 0 1 auto;
  width: clamp(210px, 18vw, 310px); height: 85px;
  margin: 0 !important; padding: 0 !important; float: none;
}
body > .navbar .navbar-brand img {
  display: block; width: 100%; height: auto !important;
  max-width: 100%; max-height: 66px; object-fit: contain;
}
body > .navbar .navbar-collapse {
  flex: 1 1 auto; width: auto; min-width: 0; margin: 0; padding: 0; float: none;
}
body > .navbar .navbar-collapse > .navbar-nav {
  display: flex; justify-content: flex-end; align-items: center;
  width: auto; margin: 0 !important; float: none !important;
}
body > .navbar .navbar-nav > li { float: none; margin: 0 !important; }
body > .navbar .navbar-nav > li > a {
  min-width: 0; white-space: nowrap;
  padding: 29px clamp(8px, .8vw, 16px); font-size: clamp(12px, .95vw, 16px); line-height: 27px;
}
body > .navbar .call {
  order: 3; flex: 0 0 234px; width: 234px; height: 85px;
  padding: 8px 12px 8px 64px; margin: 0 -24px 0 0; float: none;
}
body > .navbar .call p { padding: 0; margin: 0 0 2px; font-size: 14.25px; line-height: 24px; white-space: nowrap; }
body > .navbar .call span { display: block; padding: 0; font-size: 33.5px; line-height: 42px; white-space: nowrap; }
@media (max-width: 1199px) {
  body > .navbar > .container-fluid:has(> .navbar-header),
  body > .navbar > .container-fluid > .row { flex-wrap: wrap; gap: 0; padding: 0 20px; }
  body > .navbar .navbar-header { flex: 0 0 100%; width: 100%; justify-content: space-between; }
  body > .navbar .navbar-brand { width: clamp(170px, 30vw, 245px); }
  body > .navbar .navbar-toggle {
    display: block; order: 2; flex: 0 0 auto; margin: 0;
    min-width: 44px; min-height: 40px; padding: 9px 12px;
  }
  body > .navbar .call { display: none; }
  body > .navbar .navbar-collapse {
    flex: 0 0 100%; width: 100%; max-height: calc(100vh - 85px);
    border: 0; box-shadow: none; overflow-y: auto;
  }
  body > .navbar .navbar-collapse.collapse { display: none !important; }
  body > .navbar .navbar-collapse.collapse.in { display: block !important; }
  body > .navbar .navbar-collapse.collapsing { display: block; }
  body > .navbar .navbar-collapse > .navbar-nav { flex-direction: column; align-items: stretch; width: 100%; }
  body > .navbar .navbar-nav > li { width: 100%; }
  body > .navbar .navbar-nav > li > a { padding: 12px 16px; font-size: 16px !important; line-height: 24px; text-align: center; }
  body > .navbar .navbar-nav .dropdown-menu {
    position: static; float: none; width: 100%; min-width: 0;
    margin: 0; padding: 8px 0; background: #1a1a1a; box-shadow: none;
  }
  body > .navbar .navbar-nav .dropdown-menu > li { display: block; float: none; width: 100%; }
  body > .navbar .navbar-nav .dropdown-menu > li > a { white-space: normal; padding: 10px 20px; font-size: 14px; line-height: 24px; min-height: 44px; text-align: center; }
}

/* Keep the fixed header below WordPress controls for signed-in editors. */
body.admin-bar > .navbar-fixed-top { margin-top: 32px; }
body > .navbar .navbar-toggle { background-color: #ce161f; border-color: #ce161f; }
@media (max-width: 782px) { body.admin-bar > .navbar-fixed-top { margin-top: 46px; } }
@media (max-width: 600px) { body.admin-bar #wpadminbar { position: fixed; } }

/* Detail-page images and title spacing (2026-10-10). */
body:is(.single-commercial, .single-equipment) .product-detail .product-detail-inn img {
  display: block; float: none; max-width: 100%; height: auto; margin-inline: auto;
}
body.single-commercial .product-detail .col-md-8 > .fordesktop > :is(h1, h2):first-child {
  margin-bottom: 18px !important;
}
@media (min-width: 992px) {
  body.single-equipment .product-detail .col-md-8 > .product-detail-inn:first-child {
    padding-top: 24px; padding-bottom: 10px;
  }
}

/* GTA PageSpeed corrections, 2026-10-10. Preserve artwork and layout. */
.section-1 { background-image: url('/wp-content/themes/911.es/dist/images/section-left-bg-optimized.webp'); }
.cta .phone { background-image: url('/wp-content/themes/911.es/dist/images/banner-cta-watch-optimized.webp'); }
.footer.lwp-footerw, .footer.lwp-footerw .sharethis { color: #dedede; }
.footer.lwp-footerw a { color: #f5f5f5; }
.footer.lwp-footerw a:hover, .footer.lwp-footerw a:focus-visible { color: #fff; text-decoration: underline; }
.home .section-4 .section-bottom-content a:not(.btn) { color: #ffb3b8; text-decoration: underline; }
.home-services > a > img[aria-hidden="true"] { height: auto; }
.home-services .section-text > img[aria-hidden="true"] { width: 25px; height: 25px; }
@media (prefers-reduced-motion: reduce) { .home .video-bg { display: none; } }
/* Match the heading's visual width to the emergency button on desktop only. */
@media (min-width: 991px) {
  .home .cta .form {
    --gta-callout-font-size: clamp(14px, 1.2vw, 18px);
    display: flex; flex-direction: column; justify-content: center; gap: 12px;
    width: max-content;
    right: calc(5% + 10px); /* A small extra inset for the desktop callout. */
  }
  .home .cta .form > p {
    padding-top: 0; margin: 0; text-align: center; white-space: nowrap;
    font-size: var(--gta-callout-font-size); line-height: 1.4; font-weight: 700;
  }
  .home .cta .form > p:first-child {
    /* Match the title-case call text's visual width, with room inside the button. */
    font-size: calc(var(--gta-callout-font-size) * 1.185); line-height: 1.2;
  }
  .home .cta .form > p > strong,
  .home .cta .form > p > a { font-size: inherit; line-height: inherit; font-weight: inherit; }
}

/* Breathing room around equipment quotes and article image headings. */
body.single-equipment .product-detail .col-md-8 > .product-detail-inn > p:has(> a.quote-contact) {
  margin: 28px 0 30px;
}
body.single-equipment .product-detail .col-md-8 > .product-detail-inn:has(> p > a.quote-contact) > hr {
  margin-bottom: 0;
}
body.single-equipment .product-detail .col-md-8 > .product-detail-inn:has(> p > a.quote-contact) + .product-detail-inn {
  margin-top: 52px;
}
body.single-equipment .product-detail .col-md-8 > .product-detail-inn:has(> p > a.quote-contact) + .product-detail-inn > h3:first-child {
  margin-top: 0 !important; margin-bottom: 18px !important;
}
body:is(.single-post, .single-blog) .main-service-content > :is(p, figure):has(img) + :is(h2, h3, h4) {
  margin-top: 44px !important; margin-bottom: 18px !important;
}
@media (max-width: 990px) {
  body.single-equipment .product-detail .col-md-8 > .product-detail-inn > p:has(> a.quote-contact) {
    margin: 24px 0;
  }
  body.single-equipment .product-detail .col-md-8 > .product-detail-inn:has(> p > a.quote-contact) + .product-detail-inn {
    margin-top: 36px;
  }
  body.single-equipment .product-detail .col-md-8 > .product-detail-inn:has(> p > a.quote-contact) + .product-detail-inn > h3:first-child {
    margin-bottom: 16px !important;
  }
  body:is(.single-post, .single-blog) .main-service-content > :is(p, figure):has(img) + :is(h2, h3, h4) {
    margin-top: 28px !important; margin-bottom: 16px !important;
  }
}




/* Homepage service icons follow the destination, not the menu position.
   The original 30 x 261 images have transparent space above/below each icon. */
body.home .banner.banner_home .services a[href$="/emergency-plumber-toronto/"] {
    --gta-service-icon: url('/wp-content/uploads/2024/09/services-icon-plumbing.png');
}
body.home .banner.banner_home .services a[href$="/water-damage-restoration/"] {
    --gta-service-icon: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAEFCAYAAAD0VldOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC2klEQVR4AezNsQ0AIADDMMr/Pxe+6OJImZ22Z9H9g8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMHhRHmf1ExJVFMVxnIs5TZnYyJA4iBHSSpICo60YbUpoF7QNgkxatnFT0TokKGjZIqIW/VnYpgxcFrUoBqwIKSukNuI0E6bN9Pre+A0M1bn3Tgc+vJl3zz2/N1j3pTRlWdbFZQKHMIohbNNyDYt4jjnMOudqiflmYB9mUEWzGljEM0+f6y3rVe3p+9/QU6ho2CquYgz5f/TmtXZFvb6+YrKdwM24pc3fcQHdbezvxjmsacZtPzO2KYc5bXiFYaNvGgORWcNY0KzHyIWab6jxKQqBh6vgA3ZHwrdrlq+bVtMJNbxFb2DYYTTrEwYj4QXNzHzGn4u9WNG/zn3GgKY7aK036ImE70VdGcXWhfMacjkSWsKP7O+6CyedxowZ9V5s3tiEz1hHfyT4UmbXSfU4Y0a/Mr6g098Y18Z76rGCi6gFglewA9aY1j/TQX9Wj+n+LEJ1Bl2B9QKmIzMegCLT/1I9xUjkv8VqFq9vKATmjKjvvv/FJd1fglVT6EGstuJYYP2driUf/Ps4c85VjKfs4HIaqXXUWiCjqo85H7yuAOsXHUApMfQJ9ofOcX3c8MHL+rLT6N+D1LqOYuClsEvXZR9c1hfrSX8mhr7HI/XXjZ5RXcs+eF5fJozml7FEhU1hEAvOuYbRd0TX+ejJpWPwdRauSXTgIc6mnFypZ/U4GkboGl5gCWVsiZ/ViW8nHZnHFWKVDx9A9O3U1vtY4UO4ho/q3fjVzh3aABCEQBQt+fp3Z7BkdtUkm0cDT/IxTPB9EwhxH58XyDLb+ssFct9ceXJz9Suz3NWFS6J2Oz3/DwQMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPB4B9QF5WNzUiYtQAAAABJRU5ErkJggg==');
}
body.home .banner.banner_home .services a[href$="/flooded-basement-cleanup/"] {
    --gta-service-icon: url('/wp-content/uploads/2024/09/House-Flood-icon.png');
}
body.home .banner.banner_home .services a[href$="/mold-removal/"] {
    --gta-service-icon: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAEFCAYAAAD0VldOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADSklEQVR4AezNMQ0AAAgEMcC/5wcXLL3k5naS+mhuMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBi+x5RISVRTG8W6No2GaiiWKkJFEMQwUTEWPoAdBlNAi21irXFjLFoXQoocQ7SywiKA2SRnRY1GLwGCC6KG2EiwosajMNpOPoqzJ6XfgLxwu93EnCT/48Z1zvvN9/ztnzj33zIY5USblcrliXAPsgBQsgwUKf4NB6INuuO84DmMzMASroB0mYNr+wCD0CtPOWvEJ5VT9q+ghGFOxUbgAW6DIY26RYh2aa2wcDucjWAhdSv4Jp6Akj/xSOAE/VOOmqRmWFIduJbyCxAz+pgQMqNYjiPtuLoKduP3QAzvZJF99iu7CLbeGpuAW8z+75pXhHsJauEG8yavYQTD2BioC/oaL4GU9PjnlqpkzGu5gBWS0O1f7FDDcAT/rCFj2VZCVRqUdOKnk836i4hl8ssSOw1Er7kCBT4125bRND8RgBCahOkhY7TOW8HoYgpQt7lOjWhpfoMAMbFORuwFLZdMIR6BF/ZVwz54TUOe2tLabzml1miMI18CU5qet8Q0QDxO2NnBbjH5S470QZnutVzBjjT+FKNYnnzRfpxp13kdIbLTa45CvDcnXGOFC0+LlHgtJWgSbrH49OFEVpTGhZtwIT2r9F4bkNbi+3xvhMayJKmyd+b9MoWF1loTk7fEY2wzPoSWi9lL5YSPcr07Qk8+DrQG3mHNQGUE4Jd9vktLWUvpZEubDAHz3iBfBiiBFHSy71U07DJhX6iOUQ537C6OkfbrunIWYnjwBJTCiK9E1SGsTeZ5cuHcwCrVzmZSlcQni0ApeViwBY1n9r1e0xF3wIcKvPSaNy2j+Dv06KX4AWmGOBw48sM7rSF8nxz7O9CvewjqeKmPFFuOewEuYdG2sJLyGJsiR5xYt18WiHpqJX/V6sk4w9kIJdiwGlVBnUQulAUtcplrGrs/anet/3zJLfG6Zf9u5YxoAAACEYf5dI2MJqYK+7KHY1X1J9O10/wcCBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYPAADNbZ7hzyUNAAAAAASUVORK5CYII=');
}
body.home .banner.banner_home .services a[href$="/fire-restoration-toronto/"] {
    --gta-service-icon: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAEFCAYAAAD0VldOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADV0lEQVR4AezNsQ0AIADDMMr/Pxe+6OJImZ22Z9H9LwKDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWBwHqllENpEEIVhJtpaampNVEIxIKIHoYgK1aPEFBVqET17EU8KeihoK3hoRfTiIVQUpFdFbKHoIT1ZoeBFbUWkUkEJiIdiBa1pQjWaNP5P/sBj2LdJ9cHHzuz88/7NZvbNNCKqVqvrcekFh0EX2AGiHC6CHJgBkyDrnCs26G8aJkAGFEAtKiAHpom0y2q8wDmJfzU9C/JM9h3cASnQEqBt4dhtaiWWwLnVGK4DDzn5J7gK2jzNWhA15m8Ag+AHc4xKznqmzWCSE96BTkPnwFtwPiRXJ5hjrqeSO8z4PoUvQKzOQ45SOxCi2chcEg8s0RkKPoB4SLIaN6gvg10h+hhzVsXDH4yDb0yyzzL0GAa1uFXn7eyV3PTYrAeGmGC4EVPeyyrjNxxzoMlYExlqr+kV+hmUQIc3oQ1cAdGaoQT7RWX8hcaCMx6+gx4LoElupDn5kTEhx/8oqZL3AR2f1FjYKx+nvltqdYr3s4Z+AewE46ztSTDoaT5y7CLLqRUTvKZEvJudaUMc5/UAOAnGQLunmQM3yUqI8QxAwFN9ZzqZ/o8rHGclC4yM0qUtV+aTeCm/+G85c87lA7THvK3TKn1blK7HMoZHgc1mEZf4NO0B2lOgkUipthSiVusXs/lLjOfZ2aZFfJAjhtF7r79VtWPAquHbeZ0X41l29nui4yCosOfBaRAW/f7uxe+7i91ZMZ5ip9ebfMhIWgLP+QlZsSkgn+OakZgyKxfaE8CPFV5bwQmu5HvV4LgeVrkiWGll3L/L13pZaReBHyNgiU//GOwB/aASoF1WphHR0WMEnr/N3QnXo2BZf8N86oGAnSoL/EiH707Gfswd5RL4yvtPaBLEBc/0GXB192PrBELzbvZfhVSkIbUGXoO4cQJZ3ZmLp8gekAiYcxAsctH0SQ7rzPW/p0ytXQOSfDsRVY+NU+afdu6YBgAAAGGYf9fIWEKqoC97CHZ1XRJ9O93/gYDBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYPJDC8LgP9+BtAAAAAElFTkSuQmCC');
}
body.home .banner.banner_home .services a[href$="/sewer-backup-cleanup/"] {
    --gta-service-icon: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAEFCAYAAAD0VldOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC9ElEQVR4AezNsQ0AMAzDsLT//+zkCy8UoJkvyTT6dyMwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGL/FlE9pEEMVxpmhaP6wSI6UV9BBvGtDaih8IjVI/sFe9CWIuCh49eBD8yEVQKEIEEfQgInoQD+qtSqQHkQpVgnrQCl6KRZDGSjUajb+Bf2GRndlNt9IHP2bnzXvvvzsZdl9MnKBGo7GEYQD6oQeysFTL32AMXsAQPDTG4EtgCHbAIEzBjP2GMRix6LoeWJ9STsdsRY9BVcUm4Qr0QVtIbBvkoaRYa1/heDOCrXBHyT/gHCxrIj8NF+C7aty1NaOSUjCkhLewIcHP1AtvVOsxpHzBtxT4HFYmPbm2hmpZu+0KOqqAdz5R1rZpVypwGkzU1qtmw2qELX7R6dzkKLAajsAE7IMsPIETMZ58I9SlkQkunNUdXXYkboVPOtmFgH8vvIIDcBGKkHHUGJRGccaxQEVr0OlIegSHQvx5uAQvdZJLcNNRo1MaE7DQOnbpTu57tqpbL5MVDlbZUTHdnjr3pLXbTs5rUvAklCGuPVWa7wAXW5jn5B8Bl1U9a83EjmrMWeEuTT56Eia9UvFjP2jsssKt9soYU/3PTxzUSFnhmvZ/uf8pkguj0a7Ln1Z4XJO1kcWSb3VW47gVrmjSm1C4BtMRsT0aK1a4rMlAwq1+AIsjYvdrLMd9c/WDz6Zhh673OGqsCb65WjhpdfxXIQWnZvHEr+EwHIz4WU5K4xqav8K+TptD7jajjsJrismE5G/59+tkgq8zhuvwHrZzV5+Dyfpc7vS0xH9gmLzRoFNCz2AdFFi/EdWBpOegA0l7OhBvz7U+gWjO33PNfZfZDmf8XWbzfXUeFjn66j5/Xz3//yTm97/T33buQAYAAABgkL/1Pb4IMsgHAgaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDweA9HFkP7rKOnQffAAAAAElFTkSuQmCC');
}
body.home .banner.banner_home .services a[href$="/specialty-drying/"] {
    --gta-service-icon: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAEFCAYAAAD0VldOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADFUlEQVR4AezNsQ0AIADDMMr/Pxe+6OJImZ22Z9H9g8FgMBgMBoPBYDAYDF4EBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWBwHqnlDhpFEMZxVpIzEI/kgngmdppCCPjAaGEhQbETFItUgmAh2qiNj8pHkdYHeiAKVipahFicFhJbwSh6GDCohGDjQ6PkoZgzlzt/A/8Nw7q7Mxv/8LtdZr75/vvNzs2sT1Cj0Wjlsgd2Qy+sgxXq/gnj8AKGoRwEAW3/IQyLcAlmIdQCjMNzYe5rVv+sxhSXanoEppVsCkrQBy0xsS3qu6ZYoxk4msVwOdzT4Dm4APkM4/NwDn4rx32T0zUoB8MaMAY9KbElTXV3Qn8PvFGuJyZ3mvFtBT6DguMhRxT7EoKEmHblMrqblOiQAt5DR4phSAVC9aXEF5SzYTyinR3wQ6tzs8MwznjAMTuboCaPlfYGcgwKUOI/+CrO1BYx0ZC1epgAmtVmx1e4XJXH8TBpE3yGKnSmVWspWvFgGJPyvjvl8QWaTcU7oAiPeLJPjilbJKJJOyxurHKXYZXxbOInXBjluKfk0g1tMAVj8D0mbwV89BD2G0+TfAiMNsgsgIMwCnEagX5rpc7D6sTZsGQ8NOaBqbhL7R90PQ9nIUlb4ToMwHpogTloT1iMM0xzXfcTunYtLhJr0FNw6Ra8g5MesVXYa+U3qpiKq2po48mmYbvebdL+2gqP4aIqdmkB3sojr7Y//7xjj83jtFXNFbgJvyCquvb9LUnveBT26d29Bpf6rfsJuKwNaCOsgRx8gwqzNxkZ2wsIT9x3gtGQR8XLIof+CavPZ1UPatyuTDuXTpuGv3HKzsV01PT3yMEZSBOxS9YpedzAc97ndIpW9NVdsft0cp7HMeZ30oz9z+OMXyC0b4O64g7bfdm/QDJ+c9F+AD6C/h5+31x/27ljGgAAAIRh/l0jYwmpgr7joa/MvquDJZFtJ38gYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDL6HB63j+cKZlGcyAAAAAElFTkSuQmCC');
}
body.home .banner.banner_home .services a[href$="/water-leak-detection/"] {
    --gta-service-icon: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAEFCAYAAAD0VldOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADBUlEQVR4AezNsQ0AIADDMMr/Pxe+6OJImZ22Z9H9g8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMHhRHqtl1xJVEMbxFms1y8xITG+ypCCWFoUVgqDsxau8qYvuiuim+g7RS30ACeobVNRFJLFdBFYG3pRRkWRELVGRlIilRlaUp99T/4lpOB5Xj3/48Zx55nnxzOyZsZygKIqWYbqgEwrQAss1/QVK8BB6oZjJZPClEA0boBsmwekXlGBA2PNPb35SOQ3zbXoUxlXsM1yADqiKia3S3HnFmibg2FwaVsIVJX+D01Azh/waOAlTqnHVas6WlIVeJTyHXIptysGQat2GbFLwRQXehzrnT9F8pWqZLs8UdFgBL2FVQjFHVjYuZrH3XKeakfX473NSo1ewAtr5HB7HNZQq4BlsgCfwAqYggvVQ0PNu6gwot1Wf2wRsxD/qip4C07mktxT1+qQi2e96/iGczgQ1uuU/+29Z4IMKNCY09sdb4Qg0wyEV7IFq2A8HoSKo0ageH2GJOXYq8XrivsbTAgPKH4EtkPRju6bYXfYj6JC/OENwLeYA5GCpN2W5e6Fa43rohxt2eMh3gv186+XchH1/etqbgikf03QTvIf5qjWol3fbYrdTk/xvINQlzS+UXss22XJV2hNLMh78dS2YNs/VDyVvnNVS+2f3tLbsk8ZjbkI97AL5m+udLLVB423gqznmx5WHu7oYHkEnzHaOmx7YGw/LvxaeenFDeiOnkbCQ4ndAuVonO2x7PKhBe7Aso9Cj5TL7FdKqIDtojfs06IpZmu2YO7AZFkJ7ZPsSTy7Gt8B0DxaVi1PSyZV4VjN+B05r0jUOzmp3O8GY/ndq8/zHYRqKkJlXY91OVls9Viffx8HdmqJpeB//bueOaQAAABCG+XeNjCWkCvqOh7ZAguYKKjPo6n5J9NvJH8g9DAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDweABrOC6KBzYEmQAAAAASUVORK5CYII=');
}
body.home .banner.banner_home .services a[href$="/roof-repair-toronto/"] {
    --gta-service-icon: url('/wp-content/uploads/2024/09/Roof-Repair-icon.png');
}
body.home .banner.banner_home .services a[href$="/biohazard-cleanup-toronto/"] {
    --gta-service-icon: url('/wp-content/uploads/2024/09/Biohazard-icon.png');
}
body.home .banner.banner_home .services a[href$="/condominium-restoration/"] {
    --gta-service-icon: url('/wp-content/uploads/2024/09/Condo-Restoration-icon.png');
}
body.home .banner.banner_home .services a[href$="/restoration-equipment-rental/"] {
    --gta-service-icon: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAEFCAYAAAD0VldOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADO0lEQVR4AezNsQ0AIADDMMr/Pxe+6OJImZ22Z9H9g8FgMBgMBoPBYDAYDF4EBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWBwHmllExJVF8ZxZhpHqaw0YRgXhRR9IIKRYhtrCtqUbVq2rBYWZEEUropo0cKgoITeogiSKNq4sDYZDH0sSqHIPhYlFoGmiebMUOM4ct/fgf/AZbhz7xl74Mdz7jwf/3PmnHuuTZLjOCtwHbAXWmADrFQ4A6MwDIMwEAqFMlbqPoIxuAJpKNgijMKQMOO8K55WTWypop0wp2a/oRcSUOWRW6XYdeUaS8GxcgQr4YGKs3ABqsuor4bz8Fc9HpqeQUVRGFTBZ2j8h21qhE/q9Qyifsl9SnwNNXYSvuJr1MvYfc9TTeAw7jZ8hTZO5oxHo+249hI6Jv8edU5RjVnAG9gIR4jfKQibYK0EV0ErwbceosY9gR5wPISPwiVqP3rUNut1S8EmcqbDinVBDfT6iFZCBMbgmwfTUEduRXE9Pd/hrknjZKFpBH7CPMRL7JXhPwiyHCwv0SMujUmoMCvYCTHoZ2YTPmelEv7AaddVu0zjLBxSr6jyilc9geAAw4MmzxQlFBuAIJuGWxLMQ0Z8gaRF/WP5hFlxkx6GLArXwSutsNiaLeqH5ZuMcL0evoONtcFSbUy+Pqy9M3swV2aTWevJYtJIaxg1wvM6dast61N6Jfr0t5+CF7b3uIY5Izyuh/U+NV2u8Tm4CCegAa7qYE0ovhuBzSX6NMiPG+ERPbT6CO+RT+uALcJ7eOqa2CONt0C8RJ8W+ZGw6zXogCDLQRX8gOfa4x69u1mL+v3yyYgaTMI+c7sEXCJr4QN0Qkiv4i59XA4E7G9ci5symmGEzEVwQ7PuhiA7A8d1quvgsi6UrQF1Z6VxE82FwmxqYQbysM1jtv1w15EpL6nff4HbuiFR/HVSjdGos/4eE2vHLcAO8LM0vIRZ6qf8vsf/t3PHNAAAAAjD/LtGxhJSBX3HQ1YgfXOVlRl0dbAksu10/wcCBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYDAYDAaDwWAwGAwGg8FgMBgMBoPBYPAAPmX+WlaPjbIAAAAASUVORK5CYII=');
}

body.home .banner.banner_home .services .menu-item > a {
    position: relative;
    left: 0;
    padding-left: 18px;
    background: none !important;
    --gta-service-shift: 20px;
    transform: translateX(0);
    transition: color .18s ease, transform .2s ease, text-shadow .18s ease;
}
body.home .banner.banner_home .services .menu-item > a::before {
    content: "";
    position: absolute;
    left: -18px;
    top: 50%;
    width: 28px;
    height: 34px;
    background-image: var(--gta-service-icon, none);
    background-position: center;
    background-size: 28px auto;
    background-repeat: no-repeat;
    pointer-events: none;
    opacity: 0;
    transform: translate(-6px, -50%);
    transition: opacity .18s ease, transform .18s ease;
}
/* Restore the classic menu slide; the row keeps a stable hover target. */
@media (hover: hover) and (pointer: fine) {
    body.home .banner.banner_home .services .menu-item:hover > a {
        transform: translateX(var(--gta-service-shift));
        color: #fff;
        text-shadow: .3px 0 currentColor;
    }
    body.home .banner.banner_home .services .menu-item:hover > a::before {
        opacity: 1;
        transform: translate(0, -50%);
    }
}
body.home .banner.banner_home .services .menu-item > a:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 3px;
    transform: translateX(var(--gta-service-shift));
    color: #fff;
}
body.home .banner.banner_home .services .menu-item > a:focus-visible::before {
    opacity: 1;
    transform: translate(0, -50%);
}
/* Touch devices have no hover exit: show each icon consistently instead. */
@media (hover: none), (pointer: coarse) {
    body.home .banner.banner_home .services .menu-item > a::before {
        opacity: 1;
        transform: translate(0, -50%);
    }
}
@media (min-width: 768px) and (max-width: 1370px) {
    body.home .banner.banner_home .services .menu-item > a {
        --gta-service-shift: 10px;
    }
}
@media (max-width: 767px) {
    body.home .banner.banner_home .services {
        padding-inline: clamp(15px, calc(28vw - 100px), 68px);
    }
    body.home .banner.banner_home .services .menu-item > a,
    body.home .banner.banner_home .services .menu-item > a:hover {
        --gta-service-shift: 6px;
        --gta-service-inset: 32px;
        display: flex;
        align-items: center;
        height: 100%;
        padding-left: var(--gta-service-inset);
        white-space: normal;
    }
    body.home .banner.banner_home .services .menu-item:nth-child(even) > a {
        --gta-service-inset: 42px;
    }
    body.home .banner.banner_home .services .menu-item > a::before {
        left: calc(var(--gta-service-inset) - 30px);
        width: 22px;
        height: 26px;
        background-size: 22px auto;
    }
}
@media (max-width: 359px) {
    body.home .banner.banner_home .services { padding-inline: 8px; }
}
@media (prefers-reduced-motion: reduce) {
    body.home .banner.banner_home .services .menu-item > a,
    body.home .banner.banner_home .services .menu-item > a::before {
        transition: none;
    }
}
/* Main homepage body copy: 14px; preserve headings and CTA sizes. */
body.home .section-1 .section-content > p > span[style*="font-size: 16px"] {
    font-size: 14px !important;
}

/* Mobile homepage: breathing room below Our Team before the service photos. */
@media (max-width: 767px) {
    body.home .section-1 .section-content {
        padding-bottom: 28px;
    }
}

/* Desktop homepage: match the emergency label to the number and centre the pair. */
@media (min-width: 991px) {
    .home .cta .phone {
        --gta-phone-number-size: 85px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        min-height: 155px;
        box-sizing: border-box;
        padding-top: 8px; /* Balance the visible letter shapes within the bar. */
    }
    .home .cta .phone > p {
        width: max-content;
        margin: 0;
        padding: 0;
        font-size: calc(var(--gta-phone-number-size) * .2821);
        line-height: 1.3;
        white-space: nowrap;
    }
    .home .cta .phone > span.hideIfMobile {
        font-size: var(--gta-phone-number-size);
        line-height: 1;
    }
}
@media (min-width: 1371px) and (max-width: 1524px) {
    .home .cta .phone { --gta-phone-number-size: 75px; }
}
@media (min-width: 1091px) and (max-width: 1370px) {
    .home .cta .phone { --gta-phone-number-size: 66px; }
}
@media (min-width: 991px) and (max-width: 1090px) {
    .home .cta .phone { --gta-phone-number-size: 45px; }
}

/* Commercial and equipment overviews: compact original proportions with fluid, content-led cards. */
body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero > .pullright { padding-inline: 0; }
body:is(.page-id-895, .page-id-26905) .section-products .products {
  width: 100%; max-width: none; align-self: flex-start; align-content: start;
}
body:is(.page-id-895, .page-id-26905) .products .content-product {
  display: flow-root; aspect-ratio: auto; height: 100%; min-height: 0;
  padding: 5%;
}
body:is(.page-id-895, .page-id-26905) .content-product > a:first-child,
body.page-id-895 .content-product > img {
  display: block; float: right; width: 30%; margin: 0 0 12px 20px;
}
body:is(.page-id-895, .page-id-26905) .content-product > a:first-child img {
  display: block; float: none; width: 100%; max-width: 100%;
  height: auto; max-height: none; margin: 0; object-fit: contain;
}
body:is(.page-id-895, .page-id-26905) .content-product h3 {
  margin: 0 0 14px; font-size: 42px; line-height: 1.18;
}
body:is(.page-id-895, .page-id-26905) .content-product > p {
  width: auto !important; margin: 0; font-size: 16px; line-height: 1.5;
  text-align: left;
}
body:is(.page-id-895, .page-id-26905) .content-product > p:last-child { margin-top: 16px; }
@media (min-width: 992px) {
  body:is(.page-id-895, .page-id-26905) .section-products > .paddingzero { grid-template-columns: minmax(0, 1fr) minmax(0, 3fr); }
  body:is(.page-id-895, .page-id-26905) .section-products .products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body:is(.page-id-895, .page-id-26905) .products .content-product { min-height: clamp(280px, 15.5vw, 350px); }
}
@media (min-width: 1371px) {
  body.page-id-26905 .section-services-left h1 { font-size: clamp(56px, 3.2vw, 78px); line-height: 1.08; }
}
@media (min-width: 992px) and (max-width: 1370px) {
  body:is(.page-id-895, .page-id-26905) .content-product h3 { font-size: 33px; }
  body:is(.page-id-895, .page-id-26905) .content-product > p { font-size: 15px; }
  body:is(.page-id-895, .page-id-26905) .content-product > a:first-child,
body.page-id-895 .content-product > img { margin-left: 12px; }
}
@media (max-width: 991px) {
  body:is(.page-id-895, .page-id-26905) .section-products .products { grid-template-columns: minmax(0, 1fr); }
  body:is(.page-id-895, .page-id-26905) .products .content-product { padding: 22px; }
  body:is(.page-id-895, .page-id-26905) .content-product h3 { font-size: 30px; }
  body:is(.page-id-895, .page-id-26905) .content-product > a:first-child,
body.page-id-895 .content-product > img { width: 25%; max-width: 160px; margin-left: 16px; }
}

/* Equipment templates place images and detail links directly inside each card. */
body.page-id-895 .content-product > img { height: auto; max-height: none; object-fit: contain; }
body.page-id-895 .content-product > a.btn { margin-top: 16px; }
body.page-id-895 .content-product > p + p:not(:empty) { margin-top: 12px; }


/* Contact page: scoped accessible enquiry form. */
.gta-contact-page-form{margin:24px 0 40px;padding:24px;background:#f6f6f6;border:1px solid #dedede;border-radius:6px}
.gta-contact-page-form .wpcf7-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
.gta-contact-page-form .wpcf7-form .row{float:none!important;width:auto!important;margin:0!important;padding:0!important;min-width:0}
.gta-contact-page-form .wpcf7-form .row:not(.sub-row),.gta-contact-page-form .wpcf7-form>p,.gta-contact-page-form .wpcf7-response-output{grid-column:1/-1}
.gta-contact-page-form .row p{margin:0!important}
.gta-contact-page-form label{display:block;width:100%;font-size:16px;font-weight:600}
.gta-contact-page-form label br{display:none}
.gta-contact-page-form .wpcf7-form-control-wrap{display:block;margin-top:7px}
.gta-contact-page-form input:not([type=hidden]):not([type=submit]),.gta-contact-page-form textarea{box-sizing:border-box;width:100%!important;max-width:100%;min-height:44px;padding:10px 12px;border:1px solid #999;border-radius:3px;font:400 16px/1.5 Arial,sans-serif;background:#fff;color:#222}
.gta-contact-page-form textarea{height:150px;resize:vertical}
.gta-contact-page-form input[type=submit]{padding:12px 22px;border:0;border-radius:4px;background:#cf101d;color:#fff;font:600 16px/1.5 Arial,sans-serif;cursor:pointer}
.gta-contact-page-form input:focus-visible,.gta-contact-page-form textarea:focus-visible{outline:2px solid #333;outline-offset:2px}
@media(max-width:767px){.gta-contact-page-form{padding:18px}.gta-contact-page-form .wpcf7-form{grid-template-columns:1fr;gap:18px}}



/* Direct social-profile cards replace remote feeds; fixed icon sizes prevent layout shifts. */
.gta-social-profiles { clear: both; margin: 28px 0; text-align: center; }
.gta-social-profiles h3 { margin: 0 0 10px; font-size: 30px; line-height: 1.2; color: #333; }
.gta-social-profiles .gta-social-intro { margin: 0 0 20px; font-size: 15px; line-height: 1.5; text-align: center; }
.gta-social-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 14px; }
.gta-social-grid .gta-social-card { grid-column: span 2; display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 0; padding: 18px 12px; background: #fff; border: 1px solid #d4d4d4; border-radius: 6px; color: #252525; text-decoration: none; font: 400 15px/1.45 Lato,Arial,sans-serif; box-shadow: 0 2px 5px rgba(0,0,0,.04); }
.gta-social-grid .gta-social-card:nth-child(4),.gta-social-grid .gta-social-card:nth-child(5) { grid-column: span 3; }
.gta-social-grid .gta-social-card img { display: block; float: none; width: 36px; height: 36px; max-width: 36px; margin: 0; object-fit: contain; }
.gta-social-grid .gta-social-card strong { font-size: 18px; font-weight: 700; }
.gta-social-grid .gta-social-description { font-size: 14px; line-height: 1.45; }
.gta-social-grid .gta-social-action { margin-top: auto; padding-top: 4px; color: #b00000; font-weight: 700; }
.gta-social-grid .gta-social-card:hover { border-color: #b00000; box-shadow: 0 3px 10px rgba(0,0,0,.1); }
.gta-social-grid .gta-social-card:focus-visible { outline: 3px solid #b00000; outline-offset: 3px; }
@media(max-width:600px){
 .gta-social-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
 .gta-social-grid .gta-social-card,.gta-social-grid .gta-social-card:nth-child(4) { grid-column: span 1; padding: 16px 10px; }
 .gta-social-grid .gta-social-card:nth-child(5) { grid-column: 1 / -1; }
 .gta-social-profiles h3 { font-size: 28px; }
}

/* Shared footer rhythm: keep real content in normal flow, without stacked spacer lines. */
.new-cta-section { --gta-footer-gap: 52px; width: 100%; padding: 40px 5% 0; }
.new-cta-section hr { margin: 28px 0 var(--gta-footer-gap) !important; }
.new-cta-section + hr { margin: 28px 0 52px !important; }
.new-cta-section .logos { margin: 0 !important; }
.new-cta-section .logos .tc p { margin: 0 0 16px; }
.new-cta-section .logos .tc p span { display: inline-block; line-height: 1.15 !important; }
.new-cta-section .logos > p { margin-bottom: 0; line-height: 1.6; }
.new-cta-section .container-fluid.section:has(> .call_to_action) { padding: 0; }
.new-cta-section .call_to_action {
    container-type: inline-size;
    margin: 0 !important;
    padding: 0 !important;
}
.new-cta-section .call_to_action .wrapper {
    width: 100%; max-width: none; margin: 0 !important; padding: 0;
}
.new-cta-section .call_to_action .call_to_wrap > .call_to_item {
    display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px;
    width: 100%; margin: 0 !important; padding: 0; text-align: center;
}
.new-cta-section .call_to_action .call_to_wrap::after,
.new-cta-section .call_to_action .call_to_wrap > .call_to_item > br { display: none; }
.new-cta-section .call_to_action .img_block {
    display: flex !important; align-items: center; justify-content: center;
    width: 100%; height: auto !important; min-height: 0 !important; margin: 0 !important;
}
.new-cta-section .call_to_action .img_block img {
    display: block; width: 100px !important; max-width: 100% !important;
    height: auto !important; object-fit: contain; margin: 0 auto !important;
}
.new-cta-section .call_to_action .call_to_wrap .call_to_item .desc {
    display: block; min-width: 0; width: 100%; line-height: normal;
}
.new-cta-section .call_to_action .call_to_wrap .call_to_item .desc p:first-child {
    font-size: clamp(32px, 8cqi, 65px) !important; line-height: 1.1 !important;
    margin: 0 0 14px !important; text-align: center; text-wrap: balance;
}
.new-cta-section .call_to_action .call_to_wrap .call_to_item .desc p + p {
    font-size: clamp(14px, 2cqi, 16px) !important; line-height: 1.6 !important;
    margin: 0 !important; white-space: normal; overflow-wrap: break-word; text-wrap: wrap;
}
.new-cta-section .call_to_action .call_to_wrap > .call_to_item > .call_to_item {
    display: block; margin: 0 !important; padding: 0;
}
.new-cta-section .call_to_action .call_to_wrap .call_to_item .button {
    display: inline-block; height: auto; min-height: 44px;
    max-width: 100%; margin: 0 auto !important; padding: 10px 28px;
    line-height: 1.4; white-space: normal;
}
/* The social block previously repeated the outer column padding. */
.section-bottom-content-right:has(> div > .gta-social-profiles) {
    width: 100%; padding-top: 0 !important; margin-top: 0;
}
.new-cta-section .section-bottom-content-right:has(> div > .gta-social-profiles) {
    width: 100%; padding-inline: 0;
}
.section-bottom-content-right .gta-social-profiles { margin: 0; }
.section-bottom-content-right:has(> div > .gta-social-profiles) > p,
.section-bottom-content-right:has(> div > .gta-social-profiles) > br { display: none; }
.section-bottom-content-right:has(> div > .gta-social-profiles) hr { margin: 28px 0 52px !important; }
/* Keep the client/affiliate content; replace its legacy blank lines with measured gaps. */
.section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div {
    font-size: 0; line-height: 0;
}
.section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div > br { display: none; }
.section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div > p {
    margin: 0 0 18px; font-size: 16px; line-height: 1.2;
}
.section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div > p:has(br) { display: none; }
.section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div > img ~ p { margin-top: 52px; }
.section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div > p:last-child { display: none; }
.section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div > img { height: auto; max-width: 100%; }
@media (max-width: 767px) {
    .new-cta-section { --gta-footer-gap: 40px; padding-top: 26px; }
    .new-cta-section .call_to_action .img_block img { width: 84px !important; }
    .new-cta-section .call_to_action .call_to_wrap .call_to_item .desc p:first-child { font-size: 32px !important; }
    .new-cta-section .call_to_action .call_to_wrap .call_to_item .desc p + p { font-size: 13px !important; }
    .new-cta-section hr, .new-cta-section + hr,
    .section-bottom-content-right:has(> div > .gta-social-profiles) hr { margin: 22px 0 40px !important; }
    .section-bottom-content-right .paddingzero:has(img.sec3_affiliates) > div > img ~ p { margin-top: 40px; }
}

/* Keep related text paragraphs together without reducing heading or image separation. */
:is(.section-content, .main-service-content, .lwp-s-blocks, .section-bottom-content)
p:not(:has(img, iframe, video, .button)):has(+ p):not(:has(+ p img, + p iframe, + p video, + p .button)) {
    margin-bottom: 12px;
}
:is(.section-content, .main-service-content, .lwp-s-blocks, .section-bottom-content)
p:not(:has(img, iframe, video, .button)) + p:not(:has(img, iframe, video, .button)) {
    margin-top: 0;
}

/* Readable copyright text; leave the adjacent social icons and phone styling intact. */
.lwp-footerw p.fmobile:not(.sharethis) {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    color: #c8c8c8;
}
.lwp-footerw p.fmobile:not(.sharethis) span,
.lwp-footerw p.fmobile:not(.sharethis) a {
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: 400 !important;
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
    text-shadow: none;
}
.lwp-footerw p.fmobile:not(.sharethis) span { color: inherit !important; }

/* Give the small Sitemap / Links navigation room around its separator. */
.lwp-footerw p.fmobile:not(.sharethis) a { margin-inline: 5px; }

/* Shared footer and emergency-bar sizing — 2026-10-12. */
/* Short pages fill the viewport; long pages keep the footer in normal flow. */
body:has(> .lwp-footerw, > .gtar-video-footer) {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
}
body.admin-bar:has(> .lwp-footerw, > .gtar-video-footer) {
    min-height: calc(100vh - var(--wp-admin--admin-bar--height, 32px));
    min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 32px));
}
body:has(> .lwp-footerw, > .gtar-video-footer) > * { flex-shrink: 0; }
body > :is(.lwp-footerw, .gtar-video-footer) {
    width: 100%;
    margin-top: auto;
    margin-bottom: 0;
}

/* Internal-page bars adapt to their column, including the longer regional number. */
body:not(.home) .cta {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    align-items: center;
    gap: 20px 32px;
    height: auto;
    min-height: 155px;
    padding: 24px clamp(20px, 3vw, 48px);
}
body:not(.home) .cta > .phone {
    container-type: inline-size;
    width: auto;
    min-width: 0;
    height: auto;
    margin: 0;
    padding: 0;
}
body:not(.home) .cta > .phone > p {
    margin: 0 0 6px;
    padding: 0;
    font-size: 17px;
    line-height: 1.4;
    text-align: inherit;
}
body:not(.home) .cta > .phone > :is(span, a) {
    max-width: 100%;
    font-size: clamp(32px, 16cqi, 78px);
    line-height: 1.1;
    letter-spacing: normal;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}
body:not(.home) .cta.cta-full > .form,
body:not(.home) .cta > .form {
    position: static;
    float: none;
    display: block;
    width: auto;
    min-width: 0;
    height: auto;
    margin: 0;
    padding: 0;
}
body:not(.home) .cta > .form > p {
    margin: 0;
    padding: 0;
    font-size: 18px;
    line-height: 1.5;
    text-align: inherit;
}
@media (max-width: 767px) {
    body:not(.home) .cta { min-height: 0; padding: 20px; gap: 16px; }
    body:not(.home) .cta > .phone > p,
    body:not(.home) .cta > .form > p { font-size: 15px; }
    body:not(.home) .cta > .phone > :is(span, a) { font-size: clamp(28px, 13cqi, 40px); }
}
