.elementor-2475 .elementor-element.elementor-element-p5sec01{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--padding-top:4%;--padding-bottom:4%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5sec01:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5sec01 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://fastcilitycorp.com/wp-content/uploads/2026/08/DSC5262.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-2475 .elementor-element.elementor-element-p5grd01{--display:grid;--e-con-grid-template-columns:1.06fr .94fr;--e-con-grid-template-rows:auto;--gap:clamp(30px,4.5vw,60px) clamp(30px,4.5vw,60px);--row-gap:clamp(30px,4.5vw,60px);--column-gap:clamp(30px,4.5vw,60px);--grid-auto-flow:row;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5col01{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:48px;--padding-bottom:48px;--padding-left:40px;--padding-right:40px;}.elementor-2475 .elementor-element.elementor-element-p5col01:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5col01 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:rgba(0,0,0,0.45);}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5eyb01{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5eyb01 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:0.8rem;font-weight:700;text-transform:uppercase;line-height:normal;letter-spacing:0.12em;color:var( --e-global-color-fcamber );}.elementor-2475 .elementor-element.elementor-element-p5h1_01{margin:18px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-2475 .elementor-element.elementor-element-p5h1_01 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:46px;font-weight:700;text-transform:uppercase;line-height:1.04;letter-spacing:0.01em;text-shadow:0px 1px 3px rgba(0,0,0,0.3);color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5led01{margin:16px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Open Sans", Sans-serif;font-size:clamp(1rem,1.4vw,1.12rem);font-weight:400;line-height:1.6;color:#FFFFFF;}.elementor-2475 .elementor-element.elementor-element-p5cta01{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:15px 15px;--row-gap:15px;--column-gap:15px;--flex-wrap:wrap;--margin-top:28px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5btn01 .elementor-button{background-color:transparent;fill:var( --e-global-color-fcwhite );color:var( --e-global-color-fcwhite );background-image:linear-gradient(135deg, var( --e-global-color-fcamber ) 0%, var( --e-global-color-accent ) 100%);box-shadow:0px 6px 18px 0px rgba(232,68,46,0.28);}.elementor-2475 .elementor-element.elementor-element-p5btn01:hover{--e-transform-translateY:-2px;}.elementor-2475 .elementor-element.elementor-element-p5btn01{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--e-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5btn01 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-2475 .elementor-element.elementor-element-p5btn01 .elementor-button .elementor-button-content-wrapper{gap:8px;}.elementor-2475 .elementor-element.elementor-element-p5btn02 .elementor-button{background-color:transparent;fill:var( --e-global-color-fcwhite );color:var( --e-global-color-fcwhite );background-image:linear-gradient(135deg, var( --e-global-color-fcemerg ) 0%, var( --e-global-color-fcemerg ) 100%);}.elementor-2475 .elementor-element.elementor-element-p5btn02:hover{--e-transform-translateY:-2px;}.elementor-2475 .elementor-element.elementor-element-p5btn02{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--e-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5btn02 .elementor-button-content-wrapper{flex-direction:row;}.elementor-2475 .elementor-element.elementor-element-p5btn02 .elementor-button .elementor-button-content-wrapper{gap:8px;}.elementor-2475 .elementor-element.elementor-element-p5med01{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5frm01{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--border-radius:14px 14px 14px 14px;box-shadow:0px 30px 64px 0px rgba(16,20,24,0.55);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:3px;--padding-bottom:3px;--padding-left:3px;--padding-right:3px;}.elementor-2475 .elementor-element.elementor-element-p5frm01:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5frm01 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#5292B9;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5img01{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5sec02{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--padding-top:4%;--padding-bottom:4%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5sec02:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5sec02 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fcwhite );}.elementor-2475 .elementor-element.elementor-element-p5hed02{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5eyb02{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5eyb02 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:0.8rem;font-weight:700;text-transform:uppercase;line-height:normal;letter-spacing:0.12em;color:#E8442E;}.elementor-2475 .elementor-element.elementor-element-p5h2_02{margin:14px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5h2_02 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:700;text-transform:uppercase;line-height:1.05;letter-spacing:0.015em;color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5stp02{--display:grid;--e-con-grid-template-columns:repeat(4,1fr);--e-con-grid-template-rows:auto;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--grid-auto-flow:row;--align-items:stretch;--margin-top:clamp(34px,4vw,50px);--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5stc21{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-fcslate30 );--border-color:var( --e-global-color-fcslate30 );--border-radius:12px 12px 12px 12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:26px;--padding-bottom:22px;--padding-left:22px;--padding-right:22px;--e-con-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5stc21:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5stc21 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fcwhite );}.elementor-2475 .elementor-element.elementor-element-p5stc21.e-con:hover{--e-con-transform-translateY:-4px;}.elementor-2475 .elementor-element.elementor-element-p5stc21:hover{box-shadow:0px 12px 32px 0px rgba(16,20,24,0.14);}.elementor-2475 .elementor-element.elementor-element-p5num21{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5num21 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:2.4rem;font-weight:700;line-height:1;}.elementor-2475 .elementor-element.elementor-element-p5stt21{margin:12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5stt21 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:1.1rem;font-weight:700;text-transform:uppercase;line-height:1.12;letter-spacing:0.01em;color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5stc22{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-fcslate30 );--border-color:var( --e-global-color-fcslate30 );--border-radius:12px 12px 12px 12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:26px;--padding-bottom:22px;--padding-left:22px;--padding-right:22px;--e-con-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5stc22:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5stc22 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fcwhite );}.elementor-2475 .elementor-element.elementor-element-p5stc22.e-con:hover{--e-con-transform-translateY:-4px;}.elementor-2475 .elementor-element.elementor-element-p5stc22:hover{box-shadow:0px 12px 32px 0px rgba(16,20,24,0.14);}.elementor-2475 .elementor-element.elementor-element-p5num22{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5num22 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:2.4rem;font-weight:700;line-height:1;}.elementor-2475 .elementor-element.elementor-element-p5stt22{margin:12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5stt22 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:1.1rem;font-weight:700;text-transform:uppercase;line-height:1.12;letter-spacing:0.01em;color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5stc23{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-fcslate30 );--border-color:var( --e-global-color-fcslate30 );--border-radius:12px 12px 12px 12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:26px;--padding-bottom:22px;--padding-left:22px;--padding-right:22px;--e-con-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5stc23:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5stc23 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fcwhite );}.elementor-2475 .elementor-element.elementor-element-p5stc23.e-con:hover{--e-con-transform-translateY:-4px;}.elementor-2475 .elementor-element.elementor-element-p5stc23:hover{box-shadow:0px 12px 32px 0px rgba(16,20,24,0.14);}.elementor-2475 .elementor-element.elementor-element-p5num23{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5num23 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:2.4rem;font-weight:700;line-height:1;}.elementor-2475 .elementor-element.elementor-element-p5stt23{margin:12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5stt23 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:1.1rem;font-weight:700;text-transform:uppercase;line-height:1.12;letter-spacing:0.01em;color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5stc24{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-fcslate30 );--border-color:var( --e-global-color-fcslate30 );--border-radius:12px 12px 12px 12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:26px;--padding-bottom:22px;--padding-left:22px;--padding-right:22px;--e-con-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5stc24:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5stc24 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fcwhite );}.elementor-2475 .elementor-element.elementor-element-p5stc24.e-con:hover{--e-con-transform-translateY:-4px;}.elementor-2475 .elementor-element.elementor-element-p5stc24:hover{box-shadow:0px 12px 32px 0px rgba(16,20,24,0.14);}.elementor-2475 .elementor-element.elementor-element-p5num24{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5num24 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:2.4rem;font-weight:700;line-height:1;}.elementor-2475 .elementor-element.elementor-element-p5stt24{margin:12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5stt24 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:1.1rem;font-weight:700;text-transform:uppercase;line-height:1.12;letter-spacing:0.01em;color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5not02{margin:26px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Open Sans", Sans-serif;font-size:1rem;font-weight:400;line-height:1.66;color:var( --e-global-color-secondary );}.elementor-2475 .elementor-element.elementor-element-p5sec03{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--padding-top:4%;--padding-bottom:4%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5sec03:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5sec03 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:rgba(138,186,210,0.4);}.elementor-2475 .elementor-element.elementor-element-p5bnd03{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-2475 .elementor-element.elementor-element-p5qmk03{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5qmk03 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:4rem;font-weight:700;line-height:.6;color:rgba(33, 33, 33, 0.9);}.elementor-2475 .elementor-element.elementor-element-p5quo03{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Roboto Condensed", Sans-serif;font-size:clamp(1.5rem,3vw,2.3rem);font-weight:700;text-transform:uppercase;line-height:1.12;letter-spacing:0.005em;color:#2A3138;}.elementor-2475 .elementor-element.elementor-element-p5sub03{margin:16px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Open Sans", Sans-serif;font-size:1rem;font-weight:400;line-height:1.65;color:rgba(33, 33, 33, 0.9);}.elementor-2475 .elementor-element.elementor-element-p5sec04{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--padding-top:4%;--padding-bottom:4%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5sec04:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5sec04 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fcpaper );}.elementor-2475 .elementor-element.elementor-element-p5hed04{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5eyb04{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5eyb04 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:0.8rem;font-weight:700;text-transform:uppercase;line-height:normal;letter-spacing:0.12em;color:#E8442E;}.elementor-2475 .elementor-element.elementor-element-p5h2_04{margin:14px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5h2_04 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:700;text-transform:uppercase;line-height:1.05;letter-spacing:0.015em;color:var( --e-global-color-primary );}.elementor-2475 .elementor-element.elementor-element-p5dek04{margin:14px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Open Sans", Sans-serif;font-size:1rem;font-weight:400;line-height:1.66;color:var( --e-global-color-secondary );}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-2475 .elementor-element.elementor-element-p5brd04{margin:clamp(30px,4vw,44px) 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0px/2);}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0px/2);}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0px/2);}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0px/2);}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0px/2);}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-item > a{font-family:"Open Sans", Sans-serif;font-size:0.92rem;font-weight:600;line-height:normal;}.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-2475 .elementor-element.elementor-element-p5sec05{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--overlay-opacity:1;--padding-top:4%;--padding-bottom:4%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5sec05:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5sec05 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://fastcilitycorp.com/wp-content/uploads/2026/07/fastcility-refurb-closing-bg-steel.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-2475 .elementor-element.elementor-element-p5sec05::before, .elementor-2475 .elementor-element.elementor-element-p5sec05 > .elementor-background-video-container::before, .elementor-2475 .elementor-element.elementor-element-p5sec05 > .e-con-inner > .elementor-background-video-container::before, .elementor-2475 .elementor-element.elementor-element-p5sec05 > .elementor-background-slideshow::before, .elementor-2475 .elementor-element.elementor-element-p5sec05 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2475 .elementor-element.elementor-element-p5sec05 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:rgba(0,0,0,0.4);--background-overlay:'';}.elementor-2475 .elementor-element.elementor-element-p5grd05{--display:grid;--e-con-grid-template-columns:1.14fr .86fr;--e-con-grid-template-rows:auto;--gap:clamp(30px,4vw,54px) clamp(30px,4vw,54px);--row-gap:clamp(30px,4vw,54px);--column-gap:clamp(30px,4vw,54px);--grid-auto-flow:row;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5col05{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5eyb05{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5eyb05 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:0.8rem;font-weight:700;text-transform:uppercase;line-height:normal;letter-spacing:0.12em;color:#FFFFFF;}.elementor-2475 .elementor-element.elementor-element-p5h2_05{margin:14px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5h2_05 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:700;text-transform:uppercase;line-height:1.05;letter-spacing:0.015em;color:#FFFFFF;}.elementor-2475 .elementor-element.elementor-element-p5dek05{margin:14px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Open Sans", Sans-serif;font-size:1rem;font-weight:400;line-height:1.66;color:#FFFFFF;}.elementor-2475 .elementor-element.elementor-element-p5pul05{margin:22px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 20px;border-style:solid;border-width:0px 0px 0px 4px;border-color:#E8442E;}.elementor-2475 .elementor-element.elementor-element-p5pul05 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:clamp(1.25rem,2vw,1.6rem);font-weight:700;text-transform:uppercase;line-height:1.2;letter-spacing:0.01em;color:#FFFFFF;}.elementor-2475 .elementor-element.elementor-element-p5crd05{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#000000;--border-color:#000000;--border-radius:12px 12px 12px 12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:26px;--padding-bottom:24px;--padding-left:26px;--padding-right:26px;}.elementor-2475 .elementor-element.elementor-element-p5crd05:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5crd05 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:rgba(255,255,255,0.045);}.elementor-2475 .elementor-element.elementor-element-p5cth05{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2475 .elementor-element.elementor-element-p5cth05 .elementor-heading-title{font-family:"Roboto Condensed", Sans-serif;font-size:1.16rem;font-weight:700;text-transform:uppercase;line-height:normal;letter-spacing:0.02em;color:#FFFFFF;}.elementor-2475 .elementor-element.elementor-element-p5cts05{margin:6px 0px calc(var(--kit-widget-spacing, 0px) + 18px) 0px;font-family:"Open Sans", Sans-serif;font-size:0.92rem;font-weight:400;line-height:1.5;color:#FFFFFF;}.elementor-2475 .elementor-element.elementor-element-p5btn05 .elementor-button{background-color:rgba(0,0,0,0);fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:2px 2px 2px 2px;border-color:#FFFFFF;border-radius:3px 3px 3px 3px;}.elementor-2475 .elementor-element.elementor-element-p5btn05:hover{--e-transform-translateY:-2px;}.elementor-2475 .elementor-element.elementor-element-p5btn05{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 11px) 0px;--e-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5btn05 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-2475 .elementor-element.elementor-element-p5btn05 .elementor-button .elementor-button-content-wrapper{gap:8px;}.elementor-2475 .elementor-element.elementor-element-p5btn06 .elementor-button{background-color:rgba(0,0,0,0);fill:#FFFFFF;color:#FFFFFF;border-style:solid;border-width:2px 2px 2px 2px;border-color:#FFFFFF;border-radius:3px 3px 3px 3px;}.elementor-2475 .elementor-element.elementor-element-p5btn06:hover{--e-transform-translateY:-2px;}.elementor-2475 .elementor-element.elementor-element-p5btn06{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 11px) 0px;--e-transform-transition-duration:0.25ms;}.elementor-2475 .elementor-element.elementor-element-p5btn06 .elementor-button-content-wrapper{flex-direction:row;}.elementor-2475 .elementor-element.elementor-element-p5btn06 .elementor-button .elementor-button-content-wrapper{gap:8px;}.elementor-2475 .elementor-element.elementor-element-p5crw05{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 0px 0px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:#000000;--border-color:#000000;--margin-top:15px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:16px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2475 .elementor-element.elementor-element-p5cli05{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--e-icon-list-icon-size:16px;--icon-vertical-offset:0px;}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(10px/2);}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(10px/2);}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(10px/2);}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-10px/2);}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-10px/2);}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-icon i{color:#FFFFFF;transition:color 0.3s;}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-icon svg{fill:#FFFFFF;transition:fill 0.3s;}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-icon{padding-inline-end:10px;}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-item > a{font-family:"Open Sans", Sans-serif;font-size:0.95rem;font-weight:400;line-height:1.5;}.elementor-2475 .elementor-element.elementor-element-p5cli05 .elementor-icon-list-text{color:#FFFFFF;transition:color 0.3s;}@media(min-width:768px){.elementor-2475 .elementor-element.elementor-element-p5sec01{--content-width:1152px;}.elementor-2475 .elementor-element.elementor-element-p5med01{--width:min(100%,520px);}.elementor-2475 .elementor-element.elementor-element-p5sec02{--content-width:1152px;}.elementor-2475 .elementor-element.elementor-element-p5hed02{--width:min(100%,680px);}.elementor-2475 .elementor-element.elementor-element-p5sec03{--content-width:1152px;}.elementor-2475 .elementor-element.elementor-element-p5bnd03{--width:min(100%,880px);}.elementor-2475 .elementor-element.elementor-element-p5sec04{--content-width:1152px;}.elementor-2475 .elementor-element.elementor-element-p5hed04{--width:min(100%,760px);}.elementor-2475 .elementor-element.elementor-element-p5sec05{--content-width:1152px;}.elementor-2475 .elementor-element.elementor-element-p5col05{--width:min(100%,640px);}}@media(max-width:1220px) and (min-width:768px){.elementor-2475 .elementor-element.elementor-element-p5med01{--width:min(100%,520px);}.elementor-2475 .elementor-element.elementor-element-p5hed02{--width:min(100%,680px);}.elementor-2475 .elementor-element.elementor-element-p5bnd03{--width:min(100%,880px);}.elementor-2475 .elementor-element.elementor-element-p5hed04{--width:min(100%,760px);}.elementor-2475 .elementor-element.elementor-element-p5col05{--width:min(100%,640px);}}@media(min-width:1221px){.elementor-2475 .elementor-element.elementor-element-p5sec01:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5sec01 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}.elementor-2475 .elementor-element.elementor-element-p5sec05:not(.elementor-motion-effects-element-type-background), .elementor-2475 .elementor-element.elementor-element-p5sec05 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}@media(max-width:1220px){.elementor-2475 .elementor-element.elementor-element-p5grd01{--grid-auto-flow:row;}.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-text-editor{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-button .elementor-button{line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-image .widget-image-caption{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5stp02{--grid-auto-flow:row;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5grd05{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-2475 .elementor-element.elementor-element-p5sec01{--padding-top:8%;--padding-bottom:8%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5grd01{--e-con-grid-template-columns:1fr;--gap:34px 34px;--row-gap:34px;--column-gap:34px;--grid-auto-flow:row;}.elementor-widget-heading .elementor-heading-title{line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5h1_01 .elementor-heading-title{font-size:clamp(1.8rem,6.4vw,2.4rem);}.elementor-widget-text-editor{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-button .elementor-button{line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5med01{--width:min(100%,520px);}.elementor-widget-image .widget-image-caption{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5sec02{--padding-top:8%;--padding-bottom:8%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5hed02{--width:min(100%,680px);}.elementor-2475 .elementor-element.elementor-element-p5stp02{--e-con-grid-template-columns:repeat(2,1fr);--grid-auto-flow:row;}.elementor-2475 .elementor-element.elementor-element-p5sec03{--padding-top:8%;--padding-bottom:8%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5bnd03{--width:min(100%,880px);}.elementor-2475 .elementor-element.elementor-element-p5sec04{--padding-top:8%;--padding-bottom:8%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5hed04{--width:min(100%,760px);}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-2475 .elementor-element.elementor-element-p5sec05{--padding-top:8%;--padding-bottom:8%;--padding-left:4%;--padding-right:4%;}.elementor-2475 .elementor-element.elementor-element-p5grd05{--e-con-grid-template-columns:1fr;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--grid-auto-flow:row;}.elementor-2475 .elementor-element.elementor-element-p5col05{--width:min(100%,640px);}}/* Start custom CSS for heading, class: .elementor-element-p5eyb01 *//* WHY (eye) PSEUDO-ELEMENT + DESCENDANT SELECTOR: the 28x3 gradient tick has no control of any kind (the Heading widget has no Background section), and no control reaches .elementor-heading-title to make it inline-flex with a 10px gap.
   GRADIENT TREATMENT A (--grad) - the same treatment as every other gradient on this page except the band scrim; reuse across N elements counts ONCE.
   Not a container pseudo, so lint L1 does not apply (INFO at most). line-height:normal is set NATIVELY because the mock writes a font: SHORTHAND with no following line-height (trap 8) - it is not in this block. */
.elementor-2475 .elementor-element.elementor-element-p5eyb01 .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.elementor-2475 .elementor-element.elementor-element-p5eyb01 .elementor-heading-title::before{content:"";flex:none;width:28px;height:3px;border-radius:2px;background:var(--steel-md)}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5cta01 *//* WHY (f) (i) @keyframes: gradShift lives in design-tokens.css, which governs the MOCK FILES ONLY - it is not on the built site, so the keyframes have to travel with the element that uses them. (ii) :hover STATE box-shadow: the Button widget has a Box Shadow control for the resting state only. (iii) background-size on a gradient: no control. (iv) NON-BUCKET @media 520.
   NOT IN THIS BLOCK, because they ARE controls: the gradient itself (Style>Background>Gradient), the resting box-shadow, the -2px hover lift (_transform_translateY_effect_hover) and its .25s transition, all typography, padding, radius and the icon.
   TRAP 12 / LINT L10: the 520 rule is BELOW the 767 mobile bucket and element custom_css is emitted in Elementor's DESKTOP group, ahead of the 767 block. It is therefore scoped through the element's SECOND class (.fc-p5-cta) to reach (0,2,0) and outrank any Elementor mobile output - no !important. */
@keyframes p5GradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.elementor-2475 .elementor-element.elementor-element-p5cta01 .fc-p5-btn-grad .elementor-button{background-size:150% 150%}
.elementor-2475 .elementor-element.elementor-element-p5cta01 .fc-p5-btn-grad .elementor-button:hover{box-shadow:0 14px 34px rgba(232,68,46,.42);animation:p5GradShift 1.6s ease infinite}
.elementor-2475 .elementor-element.elementor-element-p5cta01 .fc-p5-btn-emg .elementor-button:hover{box-shadow:0 14px 32px rgba(215,38,29,.4)}
@media (max-width:520px){.elementor-2475 .elementor-element.elementor-element-p5cta01.fc-p5-cta .elementor-button{width:100%;justify-content:center}}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5col01 */.elementor-2475 .elementor-element.elementor-element-p5col01{grid-column:1/-1;max-width:1043px;margin-left:auto;margin-right:auto;text-align:center;}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-p5img01 *//* WHY (e) DESCENDANT SELECTOR + THREE PROPERTIES WITH NO CONTROL: aspect-ratio and object-fit have no Image-widget control on this stack, and Elementor's CSS Filters control offers blur/brightness/contrast/saturation/hue but NOT grayscale - so grayscale(1) is unreachable and the whole filter chain has to be written once. The 11px inner radius is NOT here: it is produced natively by the frame's 14px Border Radius + 3px Padding + Overflow:Hidden. */
.elementor-2475 .elementor-element.elementor-element-p5img01 img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:grayscale(0) contrast(1.05) brightness(.9)}
/* 2026-07-29: grayscale(1)->grayscale(0) per Rupesh standing ruling; the image's OWN contrast(1.05) brightness(.9) deliberately preserved. *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5frm01 *//* WHY (d) PSEUDO-ELEMENT: mix-blend-mode has no Elementor control at all, and Background Overlay cannot be inset from the element's own edges. The frame's gradient background, 3px padding, 14px radius, overflow-hidden clip and drop shadow are ALL native controls and none of them is restated here.
   TRAP 3 / LINT L1 COUNTER-DECLARATIONS ON BOTH AXES: inset:3px specifies right:3px AND bottom:3px. The base rule supplies width:max(...) and height, so width:auto (else right:3px is silently dropped) AND height:auto (else bottom:3px is silently dropped) are both LOAD-BEARING. */
.elementor-2475 .elementor-element.elementor-element-p5frm01::after{content:"";position:absolute;inset:3px;width:auto;height:auto;border-radius:11px;background:var(--steel);mix-blend-mode:multiply;opacity:.26;pointer-events:none}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5med01 *//* WHY (c) (i) NO JUSTIFY-SELF CONTROL for a grid child on this stack (grid_justify_items is a PARENT control and would move both columns). (ii) PSEUDO-ELEMENT for the chip: no control paints a 54px gradient tile with a glyph at a negative offset inside a container. (iii) NON-BUCKET @media 900.
   THE 520px DESKTOP CAP IS NOT IN THIS BLOCK - IT IS NATIVE, on width / width_tablet / width_mobile. MEASURED 2026-07-27 in the Elementor 4.2.0 editor and on a rendered page (scratch 2453): the container control set HAS width/width_tablet/width_mobile, unit:'custom' emits the raw string, and .e-con consumes it as max-width:min(100%,var(--width)) - so width:min(100%,520px) rendered 520px at a 1279 viewport and 390px at a 390 viewport, pixel-identical to .elementor-2475 .elementor-element.elementor-element-p5med01{max-width:520px} and still centring nothing. It is FLUID, not a fixed width. The three responsive twins are MANDATORY, not optional: --width does NOT cascade down the buckets (BUILD-RECIPE 3b "responsive width is not inherited"), where a CSS max-width applied at every viewport.
   The @900 max-width:460px below is a NON-BUCKET override and stays in CSS - the tablet bucket fires at 1220 and would wrongly reflow 901-1220.
   TRAP 3 / LINT L1 COUNTER-DECLARATION: the chip anchors BOTTOM, so top:auto is LOAD-BEARING (height:54px is explicit). It anchors LEFT, which the base rule already sets, so no horizontal counter is needed. Explicit width/height also override the base rule's max() values.
   GRADIENT TREATMENT A on the chip. The glyph is a data-URI background (SVG upload is disabled on this site); %23FFFFFF is --white hard-coded inside the url() because var() is not usable there - declared, not accidental. */
.elementor-2475 .elementor-element.elementor-element-p5med01{justify-self:end}
.elementor-2475 .elementor-element.elementor-element-p5med01::after{content:"";position:absolute;left:-16px;bottom:30px;top:auto;width:54px;height:54px;border-radius:13px;z-index:2;pointer-events:none;background:var(--steel-md);box-shadow:0 12px 26px rgba(232,68,46,.45)}
.elementor-2475 .elementor-element.elementor-element-p5med01::before{content:"";position:absolute;left:-2.5px;bottom:43.5px;top:auto;width:27px;height:27px;z-index:3;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFFFFF'%3E%3Cpath d='M12 5V2L7 6l5 4V7a5 5 0 11-5 5H5a7 7 0 107-7z'/%3E%3C/svg%3E") center/contain no-repeat}
@media (max-width:900px){.elementor-2475 .elementor-element.elementor-element-p5med01{max-width:460px;justify-self:start}}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5grd01 *//* WHY (b) NON-BUCKET @media: 900 is not a breakpoint on this site (mobile 767 / tablet 1220 ONLY). The tablet bucket fires at 1220 and would wrongly stack 901-1220, which the mock does not do. The 767 bucket IS set natively (grid_columns_grid_mobile / grid_gaps_mobile) with the same values, so 768-900 is the only span this block has to cover and it never fights a later Elementor rule.
   --e-con-grid-template-columns is Elementor's OWN custom property, so lint L5 skips it by construction. This container is content_width:'full' (.e-con-full, no inner), so `.elementor-2475 .elementor-element.elementor-element-p5grd01` is the layout box - trap M1 does not apply. */
@media (max-width:900px){.elementor-2475 .elementor-element.elementor-element-p5grd01{--e-con-grid-template-columns:1fr;gap:34px}}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5sec01 *//* WHY (a) TWO PSEUDO-ELEMENTS on one container.
   ::before - no control paints a rotated, 5%-opacity decorative texture layer inside a container, and no control emits transform on a pseudo. repeating-linear-gradient is a TEXTURE, excluded from the gradient tally by the mock header and by render_asserts v1.1.
   TRAP 3 / LINT L1 COUNTER-DECLARATION: ::before anchors RIGHT, so left:auto is LOAD-BEARING - the .e-con pseudo base rule hard-sets top/left/width/height and declares right ZERO times. Vertical axis is not triggered (bottom never declared, top+height explicit).
   ::after - a 4px full-bleed gradient hairline on the section floor. GRADIENT TREATMENT A.
   TRAP 3 / LINT L1 COUNTER-DECLARATION: ::after anchors BOTTOM, so top:auto is LOAD-BEARING (height:4px is explicit, so top:auto is the correct counter here, not height:auto). Clipping the texture bleed is the NATIVE Layout>Overflow:Hidden control, not CSS.
   MOCK NOTE, reproduced verbatim, NOT corrected: this texture is var(--ink) at .05 on an --ink background, i.e. optically invisible. Section 5's speedline overrides the same class to #fff inline; section 1 does not. See spec 10 item 3. */

.elementor-2475 .elementor-element.elementor-element-p5sec01::after{content:"";position:absolute;left:0;bottom:0;top:auto;width:100%;height:4px;background:var(--steel-md)}
/* 2026-07-29: ::before diagonal-hatch rule removed so Elementor's NATIVE background overlay can occupy ::before (BUILD-10, trap 2). Removed by comment-safe brace parser, proven on a control first. *//* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-p5eyb02 *//* WHY (eye) PSEUDO-ELEMENT + DESCENDANT SELECTOR: the 28x3 gradient tick has no control of any kind (the Heading widget has no Background section), and no control reaches .elementor-heading-title to make it inline-flex with a 10px gap.
   GRADIENT TREATMENT A (--grad) - the same treatment as every other gradient on this page except the band scrim; reuse across N elements counts ONCE.
   Not a container pseudo, so lint L1 does not apply (INFO at most). line-height:normal is set NATIVELY because the mock writes a font: SHORTHAND with no following line-height (trap 8) - it is not in this block. */
.elementor-2475 .elementor-element.elementor-element-p5eyb02 .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.elementor-2475 .elementor-element.elementor-element-p5eyb02 .elementor-heading-title::before{content:"";flex:none;width:28px;height:3px;border-radius:2px;background:var(--steel-md)}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5stp02 *//* WHY (h) (i) DESCENDANT SELECTOR + PSEUDO-ELEMENT: the step arrow is an 18px triangle that has to sit at top:30px/right:-9px INSIDE each step box; no control positions a decorative glyph, SVG upload is disabled, and one rule here styles all three arrows so an edit is ONE edit, not three. (ii) DESCENDANT SELECTOR + background-clip:border-box for the 01-04 numerals: -webkit-background-clip/-webkit-text-fill-color have no control of any kind, and the property has to land on .elementor-heading-title, not on the widget wrapper. (iii) NON-BUCKET @media 900 and 520.
   TRAP 3 / LINT L1 COUNTER-DECLARATION on the arrow pseudo (the step IS an .e-con): it anchors RIGHT, so left:auto is LOAD-BEARING. Vertical axis is not triggered (top+height explicit, bottom never declared).
   GRADIENT TREATMENT A on the numerals (same --grad, counted once). %23C7D0DA is --slate-30 inside the url() where var() is not usable - declared, not accidental.
   MOCK FACT, reproduced NOT corrected: .rf-step carries overflow:hidden (the native Overflow control) and the arrow sits at right:-9px, so its outer half is CLIPPED. That is the frozen mock's own construction - see spec 10 item 4.
   TRAP 12 / LINT L10: the 520 rule is below the 767 bucket, where grid_columns_grid_mobile DOES emit, so it is scoped through the element's SECOND class (.fc-p5-steps) to reach (0,2,0). The 900 rule needs no raise - it only has to cover 768-900, where no Elementor mobile rule exists yet. */
.elementor-2475 .elementor-element.elementor-element-p5stp02 > .e-con:not(:last-child)::after{content:"";position:absolute;top:30px;right:-9px;left:auto;width:18px;height:18px;z-index:2;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23C7D0DA'%3E%3Cpath d='M8 5l8 7-8 7z'/%3E%3C/svg%3E") center/contain no-repeat}
.elementor-2475 .elementor-element.elementor-element-p5stp02 .fc-p5-num .elementor-heading-title{background:var(--steel-md);-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:#2A3138}
@media (max-width:900px){.elementor-2475 .elementor-element.elementor-element-p5stp02{--e-con-grid-template-columns:repeat(2,1fr)}.elementor-2475 .elementor-element.elementor-element-p5stp02 > .e-con:not(:last-child)::after{display:none}}
@media (max-width:520px){.elementor-2475 .elementor-element.elementor-element-p5stp02.fc-p5-steps{--e-con-grid-template-columns:1fr}}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-p5not02 *//* WHY (i) NO MAX-WIDTH CONTROL EXISTS. Layout>Width sets `width` (a hard width, which would not shrink below the cap) and Content Width:Boxed centres .e-con-inner - and the mock element has NO auto margins, so it is LEFT-aligned inside the 1152 wrap. Centring it would be a real visual defect, not a rounding error. Precedent: BUILD-SPEC-S6 CSS-3(b), shipped. Nothing else is in this block. */
.elementor-2475 .elementor-element.elementor-element-p5not02{max-width:760px}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-p5qmk03 *//* WHY (l) NO HEIGHT CONTROL EXISTS ON A WIDGET. The mock pins .rf-quote-mark to height:34px while the glyph sets a 38.4px line box (4rem x line-height .6), so the following paragraph starts 4.4px earlier than natural flow would put it. Min-Height is a CONTAINER control only; wrapping this one glyph in a container purely to reach it would add an element for a single declaration. Nothing else is in this block - font, weight, size, line-height, colour and margin are all native. */
.elementor-2475 .elementor-element.elementor-element-p5qmk03{height:34px}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5sec03 *//* WHY (j) TWO PSEUDO-ELEMENTS, and neither is reachable from Background Overlay (which is ONE layer and cannot express either value).
   ::before - repeating-linear-gradient TEXTURE at 128deg. No control emits a repeating gradient. Excluded from the gradient tally by the mock header and by render_asserts v1.1.
   ::after - radial-gradient(ellipse 88% 112% at 30% 46%, ...). Elementor's Gradient control emits a 2-stop linear-gradient or a centred radial only; it cannot express an off-centre elliptical scrim with a % size pair. This is GRADIENT TREATMENT B - the ONLY non---grad treatment on the page, and it puts this section at exactly 2 of the 2 allowed treatments per viewport.
   The band's OWN 135deg --grad background is NOT here: it is the native Style>Background>Gradient control (treatment A).
   TRAP 3 / LINT L1 COUNTER-DECLARATIONS ON BOTH AXES for both pseudos: inset:0 specifies right:0 AND bottom:0, so width:auto AND height:auto are both LOAD-BEARING against the base rule's width:max(...)/height. */

.elementor-2475 .elementor-element.elementor-element-p5sec03::after{z-index:-1;pointer-events:none;content:"";position:absolute;inset:0;width:auto;height:auto;pointer-events:none;background:radial-gradient(ellipse 88% 112% at 30% 46%,rgba(138,186,210,.58),transparent 74%)}
/* 2026-07-29: ::before diagonal-hatch rule removed so Elementor's NATIVE background overlay can occupy ::before (BUILD-10, trap 2). Removed by comment-safe brace parser, proven on a control first. *//* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-p5eyb04 *//* WHY (eye) PSEUDO-ELEMENT + DESCENDANT SELECTOR: the 28x3 gradient tick has no control of any kind (the Heading widget has no Background section), and no control reaches .elementor-heading-title to make it inline-flex with a 10px gap.
   GRADIENT TREATMENT A (--grad) - the same treatment as every other gradient on this page except the band scrim; reuse across N elements counts ONCE.
   Not a container pseudo, so lint L1 does not apply (INFO at most). line-height:normal is set NATIVELY because the mock writes a font: SHORTHAND with no following line-height (trap 8) - it is not in this block. */
.elementor-2475 .elementor-element.elementor-element-p5eyb04 .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.elementor-2475 .elementor-element.elementor-element-p5eyb04 .elementor-heading-title::before{content:"";flex:none;width:28px;height:3px;border-radius:2px;background:var(--steel-md)}/* End custom CSS */
/* Start custom CSS for icon-list, class: .elementor-element-p5brd04 *//* WHY (n) (i) DESCENDANT SELECTORS: the Icon List exposes NO per-item background, border, border-radius, padding or box-shadow control - the entire pill chrome is unreachable - and no control sets a wrap-safe gap on the <ul> (inline items get margin-right only). (ii) STATE SELECTOR: :hover transform / box-shadow / border-color have no control on this widget.
   --shadow-card is a TWO-LAYER shadow and the Box Shadow control emits one layer; both shadows are read from the kit :root here rather than via .fc-shadow-card/.fc-shadow-lift, because a utility class cannot be attached to a repeater row and a descendant .elementor-2475 .elementor-element.elementor-element-p5brd04 already justifies this block.
   Text colour (--ink-80) and the Inter 600 / .92rem type ARE native controls and are deliberately NOT duplicated here. There is NO text-transform: the mock's .rf-brand sets none, so the 55 names render exactly as stored, mixed case.
   ONE rule styles all 55 pills: a padding change is ONE edit, not 55 (spec 6).
   TRAP 12 / LINT L10 NOTE: no 767 or 1220 bucket value is set on this element and none of these properties has a control at any breakpoint, so Elementor emits nothing after this block - no specificity raise, no !important. The mock declares NO responsive rule for .rf-brands; none is invented here. */
.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-items{gap:10px;justify-content:flex-start}
.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-item{flex:0 0 auto;margin:0;padding:10px 18px;background:var(--white);border:1px solid var(--slate-30);border-radius:999px;box-shadow:var(--shadow-card);transition:transform .2s,box-shadow .2s,border-color .2s}
.elementor-2475 .elementor-element.elementor-element-p5brd04 .elementor-icon-list-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift);border-color:var(--amber)}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-p5eyb05 *//* WHY (eye) PSEUDO-ELEMENT + DESCENDANT SELECTOR: the 28x3 gradient tick has no control of any kind (the Heading widget has no Background section), and no control reaches .elementor-heading-title to make it inline-flex with a 10px gap.
   GRADIENT TREATMENT A (--grad) - the same treatment as every other gradient on this page except the band scrim; reuse across N elements counts ONCE.
   Not a container pseudo, so lint L1 does not apply (INFO at most). line-height:normal is set NATIVELY because the mock writes a font: SHORTHAND with no following line-height (trap 8) - it is not in this block. */
.elementor-2475 .elementor-element.elementor-element-p5eyb05 .elementor-heading-title{display:inline-flex;align-items:center;gap:10px}
.elementor-2475 .elementor-element.elementor-element-p5eyb05 .elementor-heading-title::before{content:"";flex:none;width:28px;height:3px;border-radius:2px;background:var(--steel-md)}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5crd05 *//* WHY (r) (i) PSEUDO-ELEMENT: no control paints a 4px gradient rule inside a container's border box. GRADIENT TREATMENT A. (ii) @keyframes: gradShift is not on the built site (design-tokens.css governs the mock files only). (iii) :hover STATE box-shadow: the Button widget has a resting Box Shadow control only. (iv) background-size on a gradient: no control.
   TRAP 3 / LINT L1 COUNTER-DECLARATION: inset:0 0 auto 0 specifies right:0, so width:auto is LOAD-BEARING against the base rule's width:max(100% + border-left + border-right,100%) - without it the hairline overhangs the right edge by the 1px border (the round-3 s4card1-4 +1.00px defect verbatim). No vertical trigger: bottom is auto. Clipping the hairline to the 12px corners is the NATIVE Overflow:Hidden control.
   NOT IN THIS BLOCK, because they ARE controls: the card's background, border, radius, padding; the buttons' full-width (Alignment=Justify), gradient, resting shadow, -2px hover lift and transition; all typography. */
.elementor-2475 .elementor-element.elementor-element-p5crd05::before{content:"";position:absolute;inset:0 0 auto 0;width:auto;height:4px;background:var(--steel-md)}
@keyframes p5GradShiftB{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.elementor-2475 .elementor-element.elementor-element-p5crd05 .fc-p5-btn-grad .elementor-button{background-size:150% 150%}
.elementor-2475 .elementor-element.elementor-element-p5crd05 .fc-p5-btn-grad .elementor-button:hover{box-shadow:0 10px 26px rgba(232,68,46,.36);animation:p5GradShiftB 1.6s ease infinite}
.elementor-2475 .elementor-element.elementor-element-p5crd05 .fc-p5-btn-emg .elementor-button:hover{box-shadow:0 10px 26px rgba(215,38,29,.4)}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5grd05 *//* WHY (p) NON-BUCKET @media: 900 is not a breakpoint on this site. The tablet bucket fires at 1220 and would wrongly stack 901-1220. The 767 bucket is set NATIVELY with the same values, so this block only has to cover 768-900 and never fights a later Elementor rule. --e-con-grid-template-columns is Elementor's own custom property (lint L5 skips it). content_width:'full' => `.elementor-2475 .elementor-element.elementor-element-p5grd05` is the layout box (trap M1 does not apply). */
@media (max-width:900px){.elementor-2475 .elementor-element.elementor-element-p5grd05{--e-con-grid-template-columns:1fr;gap:30px}}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-p5sec05 *//* WHY (o) PSEUDO-ELEMENT: no control paints a rotated, 5%-opacity decorative texture layer inside a container, and no control emits transform on a pseudo. repeating-linear-gradient is a TEXTURE, excluded from the gradient tally.
   TRAP 3 / LINT L1 COUNTER-DECLARATION: anchors RIGHT, so left:auto is LOAD-BEARING. Vertical axis is not triggered (top+height explicit, bottom never declared). Clipping the bleed is the NATIVE Overflow:Hidden control.
   This is the #fff variant - section 5's mock span overrides .speedlines inline to white. Section 1's does not; both are reproduced as the mock has them. */

/* 2026-07-29: ::before diagonal-hatch rule removed so Elementor's NATIVE background overlay can occupy ::before (BUILD-10, trap 2). Removed by comment-safe brace parser, proven on a control first. *//* End custom CSS */