.elementor-kit-5{--e-global-color-primary:#0078DF;--e-global-color-secondary:#1E40AF;--e-global-color-text:#000000;--e-global-color-accent:#0078DF;--e-global-color-darkgrey:#404040;--e-global-color-deepblue:#13329B;--e-global-color-lightgrey:#F4F4F4;--e-global-color-white:#FFFFFF;--e-global-typography-primary-font-family:"Overpass";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Overpass";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Overpass";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Overpass";--e-global-typography-accent-font-weight:700;color:#000000;font-family:"Overpass", Sans-serif;font-size:16px;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============================================================
   Mobile compatibility (added via Cowork)
   Below 768px: stack page + footer sections vertically and let
   their columns fill the screen. Fixes horizontal overflow and
   side-by-side sections squishing on phones.
   Header and third-party embeds (Vendasta form, RealWorkLabs,
   Owens Corning shingle viewers) are intentionally left alone.
   ============================================================ */
@media (max-width: 767px) {
  [data-elementor-type="wp-page"] .e-con.e-flex,
  [data-elementor-type="wp-page"] .e-con > .e-con-inner,
  [data-elementor-type="footer"] .e-con.e-flex,
  [data-elementor-type="footer"] .e-con > .e-con-inner {
    flex-direction: column !important;
  }
  [data-elementor-type="wp-page"] .e-con.e-child,
  [data-elementor-type="footer"] .e-con.e-child {
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: auto !important;
  }
  html, body { overflow-x: hidden; }
}

/* ---- Mobile navbar: hide "Free Roof Inspection" button, keep "Call Now" ---- */
@media (max-width: 767px) {
  [data-elementor-type="header"] .elementor-element-f188124 { display: none !important; }
  [data-elementor-type="header"] .e-con-inner { max-width: 100% !important; flex-wrap: wrap; }
}

/* ---- Mobile: let headings wrap instead of running off-screen ---- */
@media (max-width: 767px) {
  [data-elementor-type="wp-page"] .elementor-heading-title,
  [data-elementor-type="wp-page"] h1,
  [data-elementor-type="wp-page"] h2,
  [data-elementor-type="wp-page"] h3 {
    white-space: normal !important;
    overflow-wrap: break-word;
  }
}

/* ---- Mobile navbar: left-justify hamburger, vertically center with Call Now ---- */
@media (max-width: 767px) {
  [data-elementor-type="header"] .e-con-inner { align-items: center !important; row-gap: 22px !important; }
  [data-elementor-type="header"] .elementor-element-b177cea { padding: 12px 14px 1px 14px !important; }
  [data-elementor-type="header"] .elementor-element-31f9465 { width: 100% !important; }
  [data-elementor-type="header"] .elementor-element-8f88168 { margin-left: -8px !important; }
  [data-elementor-type="header"] .elementor-element-3c5d26e { padding-top: 0 !important; padding-bottom: 0 !important;  transform: translateX(24px) !important; }
  [data-elementor-type="header"] .elementor-element-8f88168 .elementor-menu-toggle {
    width: auto !important;
    flex: 0 0 auto !important;
    height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 auto 0 0 !important;
    align-self: center !important;
    position: relative !important;
    top: 5px !important;
  }
}

/* ---- Mobile: stack grid-based sections (e.g. footer CTA) to one column so text/photos don't get squeezed ---- */
@media (max-width: 767px) {
  [data-elementor-type="wp-page"] .e-con-inner,
  [data-elementor-type="footer"] .e-con-inner {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 767px){
  [data-elementor-type="footer"] .elementor-element-94ad427 { display: none !important; }
}/* End custom CSS */