.elementor-kit-7{--e-global-color-primary:#D9201E;--e-global-color-secondary:#000000;--e-global-color-text:#000000D4;--e-global-color-accent:#D9201E;--e-global-color-e1665c8:#FFFFFF;--e-global-color-5d36835:#F9F9F9;--e-global-color-6f942ea:#040101E3;--e-global-color-21f4c26:#D9201EDB;--e-global-color-b969a15:#FEDE3D;--e-global-typography-primary-font-family:"Oswald";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:52px;--e-global-typography-secondary-font-family:"Oswald";--e-global-typography-secondary-font-size:43px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-line-height:52px;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:22px;--e-global-typography-text-font-weight:700;--e-global-typography-text-line-height:27px;--e-global-typography-accent-font-family:"Oswald";--e-global-typography-accent-font-size:20px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:25px;--e-global-typography-a083f96-font-family:"Montserrat";--e-global-typography-a083f96-font-size:18px;--e-global-typography-a083f96-font-weight:500;--e-global-typography-a083f96-line-height:25px;--e-global-typography-e1326bf-font-family:"Montserrat";--e-global-typography-e1326bf-font-size:20px;--e-global-typography-e1326bf-font-weight:700;--e-global-typography-e1326bf-line-height:20px;--e-global-typography-c7214d8-font-family:"Montserrat";--e-global-typography-c7214d8-font-size:24px;--e-global-typography-c7214d8-font-weight:600;--e-global-typography-c7214d8-line-height:27px;--e-global-typography-5e76175-font-family:"Montserrat";--e-global-typography-5e76175-font-size:20px;--e-global-typography-5e76175-font-weight:700;--e-global-typography-5e76175-line-height:27px;background-color:#F5F5F5;color:#000000D4;font-family:var( --e-global-typography-a083f96-font-family ), Sans-serif;font-size:var( --e-global-typography-a083f96-font-size );font-weight:var( --e-global-typography-a083f96-font-weight );line-height:var( --e-global-typography-a083f96-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-e1326bf-font-family ), Sans-serif;font-size:var( --e-global-typography-e1326bf-font-size );font-weight:var( --e-global-typography-e1326bf-font-weight );line-height:var( --e-global-typography-e1326bf-line-height );color:var( --e-global-color-e1665c8 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );border-radius:7px 7px 7px 7px;padding:11px 24px 11px 24px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:var( --e-global-color-primary );}.elementor-kit-7 h1{color:var( --e-global-color-secondary );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-7 h2{color:var( --e-global-color-secondary );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-7 h3{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-7 h4{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-7 h5{color:var( --e-global-color-secondary );}.elementor-kit-7 h6{color:var( --e-global-color-secondary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:10px;}.elementor-element{--widgets-spacing:10px 10px;--widgets-spacing-row:10px;--widgets-spacing-column:10px;}{}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-kit-7{font-size:var( --e-global-typography-a083f96-font-size );line-height:var( --e-global-typography-a083f96-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-7 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-7 h3{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-e1326bf-font-size );line-height:var( --e-global-typography-e1326bf-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7{font-size:var( --e-global-typography-a083f96-font-size );line-height:var( --e-global-typography-a083f96-line-height );}.elementor-kit-7 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-7 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-7 h3{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-7 h4{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:var( --e-global-typography-e1326bf-font-size );line-height:var( --e-global-typography-e1326bf-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* BXFAFONT — serve Font Awesome webfonts from public cdnjs (the use.fontawesome.com Kit is domain-locked and blanks <i> icons on staging/iOS). @font-face survives Elementor sanitizing where @import does not. */
@font-face{font-family:'FA6 Free Solid';font-style:normal;font-weight:900;font-display:block;src:url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/webfonts/fa-solid-900.woff2') format('woff2');}
@font-face{font-family:'FA6 Free Regular';font-style:normal;font-weight:400;font-display:block;src:url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/webfonts/fa-regular-400.woff2') format('woff2');}
@font-face{font-family:'FA6 Brands';font-style:normal;font-weight:400;font-display:block;src:url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/webfonts/fa-brands-400.woff2') format('woff2');}
.fa-solid,.fas{font-family:'FA6 Free Solid','Font Awesome 7 Free','Font Awesome 6 Free'!important;font-weight:900!important;}
.fa-regular,.far{font-family:'FA6 Free Regular','Font Awesome 7 Free','Font Awesome 6 Free'!important;font-weight:400!important;}
.fa-brands,.fab{font-family:'FA6 Brands','Font Awesome 7 Brands','Font Awesome 6 Brands'!important;}
/* BXFA-PSEUDO */
.fas::before,.fa-solid::before{font-family:'FA6 Free Solid'!important;font-weight:900!important;}
.far::before,.fa-regular::before{font-family:'FA6 Free Regular'!important;}
.fab::before,.fa-brands::before{font-family:'FA6 Brands'!important;}
/*BXFLASH: stop the header's red bottom-border from animating on sticky toggle. It was fading red<->transparent over 0.3s; on scroll-up that 2px strip briefly revealed the lighter section behind it = a white line between header and hero. Keep the background + shadow fade, snap the border.*/
.elementor-location-header .elementor-top-section,
.elementor-location-header .elementor-top-section.elementor-sticky--effects{
  transition: top .35s ease, transform .35s ease, background-color .3s ease, box-shadow .3s ease !important;
}

/*BXRESP: mobile responsive fixes. (1) #fcred founder-credentials grid had a hard repeat(4,1fr) with no mobile breakpoint -> collapse to 2 then 1 col (fixes my-story + about-us overflow <=375px). (2) info-boxes inner-section columns stack & fit on phones. (3) site-wide horizontal-overflow guard catches any off-screen carousel/marquee remnants.*/
html,body{overflow-x:clip;}
@media (max-width:600px){#fcred .g{grid-template-columns:repeat(2,1fr)!important;}}
@media (max-width:400px){#fcred .g{grid-template-columns:1fr!important;}}
@media (max-width:767px){.info-boxes{width:100%!important;max-width:100%!important;}.elementor-inner-section>.elementor-container{max-width:100%!important;}}

/*BXLOGO: override Elementor's built-in 34px sticky-logo shrink (which loses here). Subtle shrink to 80px desktop / 58px mobile, winning by specificity; transition on the img restores to 90 on scroll-up.*/
.elementor-element.elementor-element-d200b03.elementor-sticky--active .elementor-widget.elementor-widget-theme-site-logo.elementor-element-3c57e0b img{max-height:90px!important}
@media (max-width:767px){.elementor-element.elementor-element-d200b03.elementor-sticky--active .elementor-widget.elementor-widget-theme-site-logo.elementor-element-3c57e0b img{max-height:50px!important}}

/*BXHEADROOM: hide the sticky header on scroll-down, reveal on scroll-up (body.bxhead-hide toggled by header script). Translate clears both header rows.*/
body.bxhead-hide .elementor-location-header .elementor-sticky--active{top:-300px!important;}

/*BXHEADER2: custom sticky header + headroom (Elementor sticky now off on sections). Also centers logo vertically and trims the row height.*/


.elementor-location-header .elementor-element-d200b03>.elementor-container{align-items:center!important;}
.elementor-location-header .elementor-element-78c1616>.elementor-widget-wrap,.elementor-location-header .elementor-element-78c1616>.elementor-element-populated{padding-top:0!important;padding-bottom:0!important;justify-content:center!important;}

/*BXNAV: nav links were white only in the old sticky state; with custom sticky, force white + accent hover.*/
.elementor-location-header .elementor-nav-menu .elementor-item{color:#fff!important;}
.elementor-location-header .elementor-nav-menu .elementor-item:hover,.elementor-location-header .elementor-nav-menu .elementor-item:focus,.elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active{color:#FF4B47!important;}

/*BXHEADHGT: symmetric vertical padding on the nav row so the centered logo has equal top/bottom space; trims overall height.*/
.elementor-location-header .elementor-element-d200b03{padding-top:3px!important;padding-bottom:3px!important;}

/*BXLOGOCTR2: force the logo column to vertically center its content (fixes bottom-heavy logo)*/
.elementor-location-header .elementor-element-78c1616{display:flex!important;align-items:center!important;}
.elementor-location-header .elementor-element-78c1616>.elementor-widget-wrap,.elementor-location-header .elementor-element-78c1616>.elementor-element-populated{width:100%;align-content:center!important;}

/*BXLOGOSHRINK: subtle logo shrink when the header is sticky (90->68 / mobile 64->50). Higher specificity than Elementor's built-in 34px shrink so it wins; max-height transition on the logo gives a smooth shrink/restore.*/
.elementor-element.elementor-element-d200b03.elementor-sticky--active .elementor-widget.elementor-widget-theme-site-logo.elementor-element-3c57e0b img{max-height:68px!important}
@media(max-width:767px){.elementor-element.elementor-element-d200b03.elementor-sticky--active .elementor-widget.elementor-widget-theme-site-logo.elementor-element-3c57e0b img{max-height:40px!important}}

/*BXSTICKYTAME: keep the sticky header fully visible (no translate-away) so the shrink is subtle — only the logo shrinks, header stays pinned.*/
.elementor-location-header .elementor-top-section.elementor-sticky--active,.elementor-location-header .elementor-top-section.elementor-sticky--effects{transform:none!important;}

/*BXANNTRIM: trim announcement bar height*/
.elementor-location-header .elementor-element-bae8727{padding-top:3px!important;padding-bottom:3px!important;}

/*BXLOGOFIX: lock logo to a constant 62px (48 mobile) in ALL states so it never grows/shrinks on scroll. Highest specificity to beat every earlier conflicting logo rule.*/
.elementor-location-header .elementor-element-d200b03.elementor-sticky--active .elementor-element-78c1616 .elementor-widget.elementor-widget-theme-site-logo.elementor-element-3c57e0b img{max-height:72px!important}
@media(max-width:767px){.elementor-location-header .elementor-element-d200b03.elementor-sticky--active .elementor-element-78c1616 .elementor-widget.elementor-widget-theme-site-logo.elementor-element-3c57e0b img{max-height:54px!important}}
/* BXWCFIX2 trust line */
body:not(.home) .bxwc-trust{color:#fff!important;}
body:not(.home) .bxwc-msg,body:not(.home) .bxwc-msg strong{color:#fff!important;}
/* BXWCFIX — 'Why Choose' heading/lead/proof are dark-on-dark on service+state pages (invisible). Homepage uses a white bg for this block, so scope to :not(.home). */
body:not(.home) .bxwc-head h2,body:not(.home) .bxwc-head .bxwc-title,body:not(.home) .bxwc-lead,body:not(.home) .bxwc-head .proof,body:not(.home) .bxwc .proof{color:#fff!important;}

/* BXNUMFIX — reason-card ghost numbers: make 02-04 match 01's faint-red ghost (were near-white/invisible on white cards). Keep white on dark active/hover cards. */
.reasons .rc .num{color:rgba(217,32,30,0.22)!important;}
@media(min-width:1025px){.reasons .reason.active .rc .num,.reasons .reason:hover .rc .num{color:#fff!important;}}

/* BXHEROMOB — homepage hero: flat gunmetal grey, no photo, on mobile (improves text legibility). Desktop keeps the image. */
@media(max-width:767px){.elementor-element-cd6e78c{background-image:none!important;background-color:#1B1F25!important;}.elementor-element-cd6e78c>.elementor-background-overlay{background-image:none!important;opacity:0!important;}}

/* BXHEROMOB2 — state-page heroes: flat gunmetal grey, no photo, on mobile (keeps scanner reticle). */
@media(max-width:767px){.elementor-top-section:has(.bx-hero-scan){background-image:none!important;background-color:#1B1F25!important;}.elementor-top-section:has(.bx-hero-scan)>.elementor-background-overlay{background-image:none!important;opacity:0!important;}}

/* BXNATIONWIDE — hide the orphan 'nationwide' word in the homepage hero trust line on mobile (avoids a lonely last-line word). */
@media(max-width:767px){.elementor-element-cd6e78c .bx-nw{display:none!important;}}

/* BXFA-CP — explicit FA6 codepoints so icons render even if the external Font Awesome CSS fails to load (its v7 URL 404s on fresh devices). */
.fa-arrow-right::before{content:"\f061"!important;}
.fa-arrow-trend-up::before{content:"\e098"!important;}
.fa-check::before{content:"\f00c"!important;}
.fa-ear-listen::before{content:"\f2a2"!important;}
.fa-face-frown::before{content:"\f119"!important;}
.fa-heart-crack::before{content:"\f7a9"!important;}
.fa-house-chimney::before{content:"\e3af"!important;}
.fa-location-crosshairs::before{content:"\f601"!important;}
.fa-magnifying-glass::before{content:"\f002"!important;}
.fa-microphone::before{content:"\f130"!important;}
.fa-shield-halved::before{content:"\f3ed"!important;}
.fa-user-group::before{content:"\f500"!important;}
.fa-user-shield::before{content:"\f505"!important;}
.fa-video::before{content:"\f03d"!important;}
.fa-wifi::before{content:"\f1eb"!important;}
.fa-phone::before{content:"\f095"!important;}
.fa-phone-volume::before{content:"\f2a0"!important;}
.fa-envelope::before{content:"\f0e0"!important;}
.fa-bars::before{content:"\f0c9"!important;}
.fa-xmark::before{content:"\f00d"!important;}
.fa-star::before{content:"\f005"!important;}
.fa-check-circle::before{content:"\f058"!important;}
.fa-circle-check::before{content:"\f058"!important;}

/* BXCALLNW — keep the hero Call Now button on one line on mobile. */
@media(max-width:767px){.elementor-element-cd6e78c a:has(>.elementor-button-text),.elementor-element-cd6e78c .elementor-button{white-space:nowrap!important;}.elementor-element-cd6e78c .elementor-button-text{white-space:nowrap!important;}}

/* BXCALLTEL — keep the hero 'Call 866-292-3711' tel link on one line on mobile (was wrapping). */
@media(max-width:767px){.elementor-element-cd6e78c a[href^="tel"]{white-space:nowrap!important;}}


/* Body background fix — prevent light fallback on transparent sections */
body { background-color: #0E1013 !important; }/* End custom CSS */