.elementor-397 .elementor-element.elementor-element-278b870{--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;--justify-content:center;--align-items:center;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--overlay-opacity:1;--padding-top:260px;--padding-bottom:150px;--padding-left:20px;--padding-right:20px;}.elementor-397 .elementor-element.elementor-element-278b870:not(.elementor-motion-effects-element-type-background), .elementor-397 .elementor-element.elementor-element-278b870 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4b18d8c );}.elementor-397 .elementor-element.elementor-element-278b870::before, .elementor-397 .elementor-element.elementor-element-278b870 > .elementor-background-video-container::before, .elementor-397 .elementor-element.elementor-element-278b870 > .e-con-inner > .elementor-background-video-container::before, .elementor-397 .elementor-element.elementor-element-278b870 > .elementor-background-slideshow::before, .elementor-397 .elementor-element.elementor-element-278b870 > .e-con-inner > .elementor-background-slideshow::before, .elementor-397 .elementor-element.elementor-element-278b870 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-4b18d8c );background-image:url("https://thompsonflaherty.com/wp-content/uploads/2026/04/banner-scaled.png");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-widget-heading .elementor-heading-title{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 );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-397 .elementor-element.elementor-element-3cfc98a .elementor-heading-title{font-family:var( --e-global-typography-d52774b-font-family ), Sans-serif;font-size:var( --e-global-typography-d52774b-font-size );font-weight:var( --e-global-typography-d52774b-font-weight );text-transform:var( --e-global-typography-d52774b-text-transform );line-height:var( --e-global-typography-d52774b-line-height );letter-spacing:var( --e-global-typography-d52774b-letter-spacing );color:var( --e-global-color-accent );}.elementor-397 .elementor-element.elementor-element-3bf1e39{text-align:center;}.elementor-397 .elementor-element.elementor-element-3bf1e39 .elementor-heading-title{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 );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-907d224{--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:80px 80px;--row-gap:80px;--column-gap:80px;--padding-top:120px;--padding-bottom:120px;--padding-left:20px;--padding-right:20px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );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 );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-loop-grid .elementor-pagination{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 );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-loop-grid .e-load-more-message{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 );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-abe6407{--grid-columns:3;--grid-row-gap:30px;--load-more-button-align:center;--grid-column-gap:30px;}.elementor-397 .elementor-element.elementor-element-0f6f1ce{--display:flex;--padding-top:50px;--padding-bottom:120px;--padding-left:20px;--padding-right:20px;}.elementor-397 .elementor-element.elementor-element-aaef07a{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:24px 24px 24px 24px;--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-397 .elementor-element.elementor-element-aaef07a:not(.elementor-motion-effects-element-type-background), .elementor-397 .elementor-element.elementor-element-aaef07a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );background-image:url("https://thompsonflaherty.com/wp-content/uploads/2026/04/Vector-1.png");background-position:center right;background-repeat:no-repeat;background-size:contain;}.elementor-397 .elementor-element.elementor-element-dd1db28{--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:32px 32px;--row-gap:32px;--column-gap:32px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:72px;--padding-bottom:72px;--padding-left:72px;--padding-right:72px;}.elementor-397 .elementor-element.elementor-element-c6123ed .elementor-heading-title{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 );letter-spacing:var( --e-global-typography-secondary-letter-spacing );color:var( --e-global-color-4b18d8c );}.elementor-widget-text-editor{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 );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-397 .elementor-element.elementor-element-57ce972{color:var( --e-global-color-4b18d8c );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );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 );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-397 .elementor-element.elementor-element-fc43054 .elementor-button{background-color:var( --e-global-color-4b18d8c );fill:var( --e-global-color-accent );color:var( --e-global-color-accent );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-4b18d8c );}.elementor-397 .elementor-element.elementor-element-fc43054 .elementor-button:hover, .elementor-397 .elementor-element.elementor-element-fc43054 .elementor-button:focus{background-color:var( --e-global-color-a2374be );color:var( --e-global-color-accent );}.elementor-397 .elementor-element.elementor-element-fc43054:hover{--e-transform-translateY:-5px;}.elementor-397 .elementor-element.elementor-element-fc43054 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-397 .elementor-element.elementor-element-fc43054 .elementor-button .elementor-button-content-wrapper{gap:11px;}.elementor-397 .elementor-element.elementor-element-fc43054 .elementor-button:hover svg, .elementor-397 .elementor-element.elementor-element-fc43054 .elementor-button:focus svg{fill:var( --e-global-color-accent );}.elementor-397 .elementor-element.elementor-element-b42a041{--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;--margin-top:-80px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );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 );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-397 .elementor-element.elementor-element-1910ecb img{width:100%;max-width:100%;}@media(min-width:768px){.elementor-397 .elementor-element.elementor-element-278b870{--content-width:716px;}.elementor-397 .elementor-element.elementor-element-dd1db28{--width:50%;}.elementor-397 .elementor-element.elementor-element-b42a041{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-397 .elementor-element.elementor-element-dd1db28{--width:100%;}}@media(max-width:820px) and (min-width:768px){.elementor-397 .elementor-element.elementor-element-278b870{--content-width:100%;}}@media(max-width:1280px){.elementor-397 .elementor-element.elementor-element-278b870{--padding-top:260px;--padding-bottom:150px;--padding-left:20px;--padding-right:20px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-3cfc98a .elementor-heading-title{font-size:var( --e-global-typography-d52774b-font-size );line-height:var( --e-global-typography-d52774b-line-height );letter-spacing:var( --e-global-typography-d52774b-letter-spacing );}.elementor-397 .elementor-element.elementor-element-3bf1e39 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-0f6f1ce{--padding-top:0px;--padding-bottom:120px;--padding-left:20px;--padding-right:20px;}.elementor-397 .elementor-element.elementor-element-dd1db28{--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-397 .elementor-element.elementor-element-c6123ed .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-397 .elementor-element.elementor-element-b42a041{--margin-top:-55px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}}@media(max-width:1024px){.elementor-397 .elementor-element.elementor-element-278b870{--padding-top:200px;--padding-bottom:150px;--padding-left:20px;--padding-right:20px;}.elementor-397 .elementor-element.elementor-element-907d224{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-397 .elementor-element.elementor-element-abe6407{--grid-column-gap:20px;}.elementor-397 .elementor-element.elementor-element-0f6f1ce{--padding-top:0px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-397 .elementor-element.elementor-element-aaef07a{--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;}.elementor-397 .elementor-element.elementor-element-dd1db28{--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-397 .elementor-element.elementor-element-c6123ed{text-align:center;}.elementor-397 .elementor-element.elementor-element-57ce972{text-align:center;}.elementor-397 .elementor-element.elementor-element-b42a041{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:820px){.elementor-397 .elementor-element.elementor-element-278b870{--padding-top:150px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-3cfc98a .elementor-heading-title{font-size:var( --e-global-typography-d52774b-font-size );line-height:var( --e-global-typography-d52774b-line-height );letter-spacing:var( --e-global-typography-d52774b-letter-spacing );}.elementor-397 .elementor-element.elementor-element-3bf1e39 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-abe6407{--grid-columns:2;}.elementor-397 .elementor-element.elementor-element-c6123ed .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}}@media(max-width:767px){.elementor-397 .elementor-element.elementor-element-278b870{--content-width:100%;--padding-top:120px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-3cfc98a .elementor-heading-title{font-size:var( --e-global-typography-d52774b-font-size );line-height:var( --e-global-typography-d52774b-line-height );letter-spacing:var( --e-global-typography-d52774b-letter-spacing );}.elementor-397 .elementor-element.elementor-element-3bf1e39 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-907d224{--gap:72px 72px;--row-gap:72px;--column-gap:72px;--padding-top:55px;--padding-bottom:55px;--padding-left:20px;--padding-right:20px;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-397 .elementor-element.elementor-element-abe6407{--grid-columns:1;}.elementor-397 .elementor-element.elementor-element-0f6f1ce{--padding-top:0px;--padding-bottom:55px;--padding-left:20px;--padding-right:20px;}.elementor-397 .elementor-element.elementor-element-c6123ed .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}}