.elementor-64 .elementor-element.elementor-element-5475e4c7{--display:flex;--min-height:90vh;--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;--overlay-opacity:0.6;--overlay-mix-blend-mode:multiply;--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-64 .elementor-element.elementor-element-5475e4c7:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-5475e4c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://tsgfuturi.com/wp-content/uploads/2026/10/AdobeStock_444487666-scaled.jpeg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-64 .elementor-element.elementor-element-5475e4c7::before, .elementor-64 .elementor-element.elementor-element-5475e4c7 > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-5475e4c7 > .e-con-inner > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-5475e4c7 > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-5475e4c7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-5475e4c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#143247;--background-overlay:'';}.elementor-64 .elementor-element.elementor-element-528cdbdd{--display:flex;--justify-content:center;}.elementor-64 .elementor-element.elementor-element-7e12b1fd{width:var( --container-widget-width, 85% );max-width:85%;padding:0px 0px 0px 20px;--container-widget-width:85%;--container-widget-flex-grow:0;}.elementor-64 .elementor-element.elementor-element-7e12b1fd .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:3.3rem;font-weight:500;line-height:1em;color:var( --e-global-color-d5d230b );}.elementor-64 .elementor-element.elementor-element-604028c5{width:var( --container-widget-width, 60% );max-width:60%;padding:0px 0px 0px 20px;--container-widget-width:60%;--container-widget-flex-grow:0;font-family:"Inter", Sans-serif;font-size:16px;color:#FCFCFC;}.elementor-64 .elementor-element.elementor-element-7766a94d{--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;--justify-content:space-between;--align-items:center;}.elementor-64 .elementor-element.elementor-element-61578572 .elementor-button{background-color:#A37470;font-family:"Futura", Sans-serif;transition-duration:0.5s;border-radius:40px 40px 40px 40px;}.elementor-64 .elementor-element.elementor-element-61578572 .elementor-button:hover, .elementor-64 .elementor-element.elementor-element-61578572 .elementor-button:focus{background-color:#2F688A;}.elementor-64 .elementor-element.elementor-element-61578572{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-61578572.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-af8bbcc .elementor-button{background-color:#A37470;font-family:"Futura", Sans-serif;transition-duration:0.5s;border-radius:40px 40px 40px 40px;}.elementor-64 .elementor-element.elementor-element-af8bbcc .elementor-button:hover, .elementor-64 .elementor-element.elementor-element-af8bbcc .elementor-button:focus{background-color:#2F688A;}.elementor-64 .elementor-element.elementor-element-af8bbcc{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-6ba56f8{padding:20px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-6ba56f8 img{width:25%;}.elementor-64 .elementor-element.elementor-element-3abbac1c{--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;--padding-top:6em;--padding-bottom:6em;--padding-left:0em;--padding-right:0em;}.elementor-64 .elementor-element.elementor-element-3abbac1c:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-3abbac1c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F1EA;}.elementor-64 .elementor-element.elementor-element-2636e33c{text-align:center;}.elementor-64 .elementor-element.elementor-element-2636e33c .elementor-heading-title{font-family:"Futura", Sans-serif;font-size:26px;font-weight:700;color:#C89591;}.elementor-64 .elementor-element.elementor-element-77cbb3fb{--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;}.elementor-64 .elementor-element.elementor-element-6ec27ff4{--display:flex;}.elementor-64 .elementor-element.elementor-element-30c80445{text-align:center;}.elementor-64 .elementor-element.elementor-element-30c80445 .elementor-heading-title{font-family:"Fraunces", Sans-serif;}.elementor-64 .elementor-element.elementor-element-da7da10{text-align:center;}.elementor-64 .elementor-element.elementor-element-750dfea7{--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:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:1;--border-radius:5px 5px 5px 5px;box-shadow:0px 5px 12px 0px rgba(0, 0, 0, 0.1);--padding-top:3em;--padding-bottom:3em;--padding-left:3em;--padding-right:3em;}.elementor-64 .elementor-element.elementor-element-750dfea7:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-750dfea7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-fba460f );}.elementor-64 .elementor-element.elementor-element-750dfea7::before, .elementor-64 .elementor-element.elementor-element-750dfea7 > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-750dfea7 > .e-con-inner > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-750dfea7 > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-750dfea7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-750dfea7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://tsgfuturi.com/wp-content/uploads/2026/10/Bg3.png");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-64 .elementor-element.elementor-element-2e623956{--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;}.elementor-64 .elementor-element.elementor-element-8b6063a{--display:flex;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-wrapper{text-align:start;}.elementor-64 .elementor-element.elementor-element-4f61e662.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-64 .elementor-element.elementor-element-4f61e662.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-64 .elementor-element.elementor-element-4f61e662.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-wrapper .elementor-image-box-img{width:25%;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-title{font-family:"Futura", Sans-serif;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-description{font-family:"Inter", Sans-serif;}.elementor-64 .elementor-element.elementor-element-4fc10c3.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-4fc10c3 .elementor-button{font-family:"Futura", Sans-serif;border-radius:40px 40px 40px 40px;}.elementor-64 .elementor-element.elementor-element-86ab8bf{--display:flex;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-wrapper{text-align:start;}.elementor-64 .elementor-element.elementor-element-639c76f9.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-64 .elementor-element.elementor-element-639c76f9.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-64 .elementor-element.elementor-element-639c76f9.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-wrapper .elementor-image-box-img{width:25%;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-title{font-family:"Futura", Sans-serif;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-description{font-family:"Inter", Sans-serif;}.elementor-64 .elementor-element.elementor-element-5cdc9a5.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-5cdc9a5 .elementor-button{font-family:"Futura", Sans-serif;border-radius:40px 40px 40px 40px;}.elementor-64 .elementor-element.elementor-element-98d1bdd{--display:flex;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-wrapper{text-align:start;}.elementor-64 .elementor-element.elementor-element-4bbdacef.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-64 .elementor-element.elementor-element-4bbdacef.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-64 .elementor-element.elementor-element-4bbdacef.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-wrapper .elementor-image-box-img{width:25%;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-img img{transition-duration:0.3s;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-title{font-family:"Futura", Sans-serif;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-description{font-family:"Inter", Sans-serif;}.elementor-64 .elementor-element.elementor-element-cfe5feb.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-cfe5feb .elementor-button{font-family:"Futura", Sans-serif;border-radius:40px 40px 40px 40px;}.elementor-64 .elementor-element.elementor-element-68517c67{--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;--flex-wrap:wrap;--overlay-opacity:0.65;--padding-top:6em;--padding-bottom:05em;--padding-left:0em;--padding-right:0em;}.elementor-64 .elementor-element.elementor-element-68517c67:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-68517c67 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://tsgfuturi.com/wp-content/uploads/2026/10/AdobeStock_627524355-scaled.jpeg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-64 .elementor-element.elementor-element-68517c67::before, .elementor-64 .elementor-element.elementor-element-68517c67 > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-68517c67 > .e-con-inner > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-68517c67 > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-68517c67 > .e-con-inner > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-68517c67 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#143247;--background-overlay:'';}.elementor-64 .elementor-element.elementor-element-68517c67.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-64 .elementor-element.elementor-element-70090a59{--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:45px 45px;--row-gap:45px;--column-gap:45px;--flex-wrap:wrap;}.elementor-64 .elementor-element.elementor-element-ef376c2{width:100%;max-width:100%;padding:0px 50px 0px 50px;text-align:center;font-family:"Futura", Sans-serif;font-size:26px;color:#EFBDB9;}.elementor-64 .elementor-element.elementor-element-169f989{width:100%;max-width:100%;text-align:center;}.elementor-64 .elementor-element.elementor-element-169f989.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-64 .elementor-element.elementor-element-169f989 .elementor-heading-title{font-family:"Fraunces", Sans-serif;color:#FFFFFF;}.elementor-64 .elementor-element.elementor-element-217e9a05{width:100%;max-width:100%;padding:0px 70px 0px 70px;text-align:center;font-family:"Inter", Sans-serif;font-size:20px;color:#DBDBDB;}.elementor-64 .elementor-element.elementor-element-217e9a05.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-5b16ac3{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-5b16ac3.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-5b16ac3 .elementor-button{font-family:"Futura", Sans-serif;border-radius:40px 40px 40px 40px;}.elementor-64 .elementor-element.elementor-element-376ffd9{padding:30px 0px 0px 50px;text-align:start;}.elementor-64 .elementor-element.elementor-element-376ffd9 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:38px;color:#040202;}.elementor-64 .elementor-element.elementor-element-dcffaac{padding:20px 0px 0px 50px;font-family:"Inter", Sans-serif;font-size:16px;color:#000000;}.elementor-64 .elementor-element.elementor-element-0866feb .elementor-button{background-color:#A5807D;font-family:"Futura", Sans-serif;fill:#FFFFFF;color:#FFFFFF;transition-duration:0.5s;border-radius:40px 40px 40px 40px;}.elementor-64 .elementor-element.elementor-element-0866feb .elementor-button:hover, .elementor-64 .elementor-element.elementor-element-0866feb .elementor-button:focus{background-color:#2F688A;color:#FFFFFF;}.elementor-64 .elementor-element.elementor-element-0866feb{padding:20px 0px 0px 50px;}.elementor-64 .elementor-element.elementor-element-0866feb .elementor-button:hover svg, .elementor-64 .elementor-element.elementor-element-0866feb .elementor-button:focus svg{fill:#FFFFFF;}.elementor-64 .elementor-element.elementor-element-e5e28a2 .elementor-image-box-wrapper{text-align:start;}.elementor-64 .elementor-element.elementor-element-e5e28a2 .elementor-image-box-title{font-family:"Fraunces", Sans-serif;font-size:24px;}.elementor-64 .elementor-element.elementor-element-e5e28a2 .elementor-image-box-description{font-family:"Inter", Sans-serif;font-size:16px;}.elementor-64 .elementor-element.elementor-element-125f330{margin:40px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-125f330 .elementor-image-box-wrapper{text-align:start;}.elementor-64 .elementor-element.elementor-element-125f330 .elementor-image-box-title{font-family:"Fraunces", Sans-serif;font-size:24px;}.elementor-64 .elementor-element.elementor-element-125f330 .elementor-image-box-description{font-family:"Inter", Sans-serif;font-size:16px;}.elementor-64 .elementor-element.elementor-element-4ce00226{--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;--padding-top:50px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-64 .elementor-element.elementor-element-4ce00226:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-4ce00226 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F1EA;}.elementor-64 .elementor-element.elementor-element-6bd8a872{--display:flex;--padding-top:0em;--padding-bottom:3em;--padding-left:0em;--padding-right:0em;}.elementor-64 .elementor-element.elementor-element-6bd8a872.e-con{--align-self:center;}.elementor-64 .elementor-element.elementor-element-507e8633{text-align:center;}.elementor-64 .elementor-element.elementor-element-507e8633 .elementor-heading-title{font-family:"Futura", Sans-serif;font-size:26px;color:#2F688A;}.elementor-64 .elementor-element.elementor-element-2e4bbf19.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-2e4bbf19 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:40px;}.elementor-64 .elementor-element.elementor-element-9f07a06{width:var( --container-widget-width, 350% );max-width:350%;--container-widget-width:350%;--container-widget-flex-grow:0;font-family:"Inter", Sans-serif;color:#252525;}.elementor-64 .elementor-element.elementor-element-664d5d3d{--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;--overlay-opacity:1;--border-radius:5px 5px 5px 5px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0em;--padding-bottom:0em;--padding-left:0em;--padding-right:0em;--z-index:1;}.elementor-64 .elementor-element.elementor-element-664d5d3d:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-664d5d3d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF00;}.elementor-64 .elementor-element.elementor-element-664d5d3d::before, .elementor-64 .elementor-element.elementor-element-664d5d3d > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-664d5d3d > .e-con-inner > .elementor-background-video-container::before, .elementor-64 .elementor-element.elementor-element-664d5d3d > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-664d5d3d > .e-con-inner > .elementor-background-slideshow::before, .elementor-64 .elementor-element.elementor-element-664d5d3d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-64 .elementor-element.elementor-element-664d5d3d.e-con{--align-self:center;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-64 .elementor-element.elementor-element-5475e4c7:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-5475e4c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-size:250% auto;}.elementor-64 .elementor-element.elementor-element-7e12b1fd{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-64 .elementor-element.elementor-element-7e12b1fd .elementor-heading-title{font-size:3.6rem;line-height:1em;}.elementor-64 .elementor-element.elementor-element-604028c5{--container-widget-width:90%;--container-widget-flex-grow:0;width:var( --container-widget-width, 90% );max-width:90%;}.elementor-64 .elementor-element.elementor-element-3abbac1c{--padding-top:3em;--padding-bottom:3em;--padding-left:0em;--padding-right:0em;}.elementor-64 .elementor-element.elementor-element-77cbb3fb{--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-64 .elementor-element.elementor-element-750dfea7{--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;--padding-top:2em;--padding-bottom:2em;--padding-left:2em;--padding-right:2em;}.elementor-64 .elementor-element.elementor-element-2e623956{--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-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-wrapper .elementor-image-box-img{width:15%;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-wrapper .elementor-image-box-img{width:15%;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-wrapper .elementor-image-box-img{width:15%;}.elementor-64 .elementor-element.elementor-element-68517c67{--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;--padding-top:3em;--padding-bottom:3em;--padding-left:0em;--padding-right:0em;}.elementor-64 .elementor-element.elementor-element-4ce00226{--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-64 .elementor-element.elementor-element-507e8633.elementor-element{--align-self:flex-start;}.elementor-64 .elementor-element.elementor-element-2e4bbf19.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-664d5d3d{--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;--padding-top:2em;--padding-bottom:0em;--padding-left:1em;--padding-right:1em;}}@media(max-width:767px){.elementor-64 .elementor-element.elementor-element-5475e4c7:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-5475e4c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-size:450% auto;}.elementor-64 .elementor-element.elementor-element-5475e4c7{--padding-top:0px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-64 .elementor-element.elementor-element-7e12b1fd{padding:70px 20px 0px 20px;text-align:center;}.elementor-64 .elementor-element.elementor-element-7e12b1fd .elementor-heading-title{font-size:3rem;line-height:1em;}.elementor-64 .elementor-element.elementor-element-604028c5{padding:0px 0px 0px 0px;text-align:center;}.elementor-64 .elementor-element.elementor-element-604028c5.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-61578572{width:100%;max-width:100%;padding:0px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-af8bbcc{width:100%;max-width:100%;padding:0px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-6ba56f8{width:100%;max-width:100%;padding:30px 0px 0px 20px;}.elementor-64 .elementor-element.elementor-element-6ba56f8 img{width:48%;}.elementor-64 .elementor-element.elementor-element-2636e33c{text-align:center;}.elementor-64 .elementor-element.elementor-element-30c80445{text-align:center;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-wrapper{text-align:center;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-img{margin-bottom:15px;}.elementor-64 .elementor-element.elementor-element-4f61e662 .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-wrapper{text-align:center;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-img{margin-bottom:15px;}.elementor-64 .elementor-element.elementor-element-639c76f9 .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-wrapper{text-align:center;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-img{margin-bottom:15px;}.elementor-64 .elementor-element.elementor-element-4bbdacef .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-64 .elementor-element.elementor-element-ef376c2{text-align:center;}.elementor-64 .elementor-element.elementor-element-169f989{text-align:center;}.elementor-64 .elementor-element.elementor-element-217e9a05{padding:0px 20px 0px 20px;text-align:center;}.elementor-64 .elementor-element.elementor-element-376ffd9{padding:0px 0px 0px 0px;text-align:center;}.elementor-64 .elementor-element.elementor-element-dcffaac{padding:20px 0px 0px 0px;text-align:center;}.elementor-64 .elementor-element.elementor-element-0866feb{width:100%;max-width:100%;padding:30px 0px 0px 0px;}.elementor-64 .elementor-element.elementor-element-507e8633.elementor-element{--align-self:center;}.elementor-64 .elementor-element.elementor-element-2e4bbf19{text-align:center;}.elementor-64 .elementor-element.elementor-element-2e4bbf19 .elementor-heading-title{font-size:36px;}.elementor-64 .elementor-element.elementor-element-9f07a06{text-align:center;}.elementor-64 .elementor-element.elementor-element-664d5d3d{--padding-top:3em;--padding-bottom:0em;--padding-left:0em;--padding-right:0em;}}@media(min-width:768px){.elementor-64 .elementor-element.elementor-element-68517c67{--width:100%;}}@media(min-width:1025px){.elementor-64 .elementor-element.elementor-element-68517c67:not(.elementor-motion-effects-element-type-background), .elementor-64 .elementor-element.elementor-element-68517c67 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}/* Start custom CSS for heading, class: .elementor-element-7e12b1fd */.elementor-64 .elementor-element.elementor-element-7e12b1fd .elementor-heading-title {
  font-family: 'Fraunces', serif;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.1;
}

.elementor-64 .elementor-element.elementor-element-7e12b1fd .elementor-heading-title em {
  font-style: italic;
  font-weight: 500;
  color: #f4b8ae;
}
.elementor-64 .elementor-element.elementor-element-7e12b1fd .elementor-heading-title {
  max-width: 750px;
}/* End custom CSS */
/* Start custom CSS for image-box, class: .elementor-element-e5e28a2 *//* ===== Resources cards (Image Box, class: resources-box) ===== */

/* NEW: per-card accent colors (rose, blue, navy) */
.resources-box { --rb-accent: #C89591; }
.resources-box:nth-child(2) { --rb-accent: #2F688A; }
.resources-box:nth-child(3) { --rb-accent: #1F3A52; }

/* The widget fills its column */
.resources-box,
.resources-box .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* Card: text on the left, "Learn More" pill on the right */
.resources-box .elementor-image-box-wrapper {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: 24px !important;
  position: relative;
  isolation: isolate;                                            /* NEW: keeps hover effects behind the text */
  overflow: hidden;                                              /* CHANGED */
  box-sizing: border-box;
  padding: clamp(20px, 2.2vw, 30px) clamp(22px, 2.6vw, 36px) clamp(22px, 2.2vw, 30px) clamp(28px, 2.8vw, 42px) !important; /* CHANGED */
  background:
    radial-gradient(circle at 100% 0%, rgba(244, 184, 174, 0.25) 0%, rgba(244, 184, 174, 0) 55%),
    linear-gradient(145deg, #FFFFFF 0%, #FBF8F7 100%) !important; /* CHANGED: soft rose glow */
  border: 1px solid rgba(200, 149, 145, 0.22) !important;       /* CHANGED */
  border-bottom: 5px solid var(--rb-accent) !important;         /* CHANGED */
  border-radius: 22px !important;                                /* CHANGED */
  box-shadow:
    0 1px 2px rgba(61, 65, 72, 0.05),
    0 14px 30px -16px rgba(61, 65, 72, 0.35);                    /* CHANGED: layered */
  text-align: left !important;
  transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .45s ease, border-color .35s ease; /* CHANGED */
}
.resources-box .elementor-image-box-wrapper:hover {
  transform: translateY(-7px) scale(1.012);                      /* CHANGED: lift + slight grow */
  border-color: rgba(47, 104, 138, 0.18) !important;
  border-bottom-color: var(--rb-accent) !important;
  box-shadow:
    0 2px 4px rgba(61, 65, 72, 0.06),
    0 30px 50px -20px rgba(47, 104, 138, 0.45);                  /* CHANGED */
}

/* NEW: left accent bar (short at rest, full height on hover) */
.resources-box .elementor-image-box-wrapper::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 6px;
  height: 36%;
  background: var(--rb-accent);
  border-radius: 0 6px 6px 0;
  transform: translateY(-50%);
  transition: height .45s cubic-bezier(.2, .8, .2, 1);
}
.resources-box .elementor-image-box-wrapper:hover::before { height: 100%; }

/* NEW: accent color wash that fades in from the left on hover */
.resources-box .elementor-image-box-content::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(47, 104, 138, 0.10), rgba(47, 104, 138, 0) 70%); /* fallback */
  background: linear-gradient(90deg, color-mix(in srgb, var(--rb-accent) 14%, transparent), transparent 70%);
  opacity: 0;
  transition: opacity .45s ease;
  pointer-events: none;
}
.resources-box .elementor-image-box-wrapper:hover .elementor-image-box-content::after { opacity: 1; }

/* NEW: light streak that sweeps across the card on hover */
.resources-box .elementor-image-box-content::before {
  content: "";
  position: absolute;
  top: 0;
  left: -60%;
  width: 35%;
  height: 100%;
  z-index: -1;
  background: linear-gradient(105deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.85), rgba(255, 255, 255, 0));
  transform: skewX(-20deg);
  transition: left .9s ease;
  pointer-events: none;
}
.resources-box .elementor-image-box-wrapper:hover .elementor-image-box-content::before { left: 130%; }

/* No image/icon in these cards */
.resources-box .elementor-image-box-img { display: none !important; }

/* Text */
.resources-box .elementor-image-box-content {
  width: 100% !important;
  margin: 0 !important;
  text-align: left !important;
}
.resources-box .elementor-image-box-title {
  margin: 0 0 6px !important;
  padding: 0 !important;
  font-family: 'Fraunces', serif !important;                    /* CHANGED: brand heading font */
  font-weight: 600 !important;
  font-size: clamp(19px, 1.7vw, 24px) !important;               /* CHANGED */
  line-height: 1.2 !important;
  letter-spacing: -0.2px;
  color: #1F3A52 !important;
  transition: color .3s ease, transform .45s cubic-bezier(.2, .8, .2, 1);
}
.resources-box .elementor-image-box-title a { color: inherit !important; }
.resources-box .elementor-image-box-wrapper:hover .elementor-image-box-title {
  color: var(--rb-accent) !important;                            /* NEW */
  transform: translateX(6px);                                    /* NEW: title slides */
}
.resources-box .elementor-image-box-description {
  margin: 0 !important;
  font-size: clamp(14px, 1.05vw, 16px) !important;
  line-height: 1.55 !important;
  color: #4A4F57 !important;
  transition: transform .45s cubic-bezier(.2, .8, .2, 1) .04s;
}
.resources-box .elementor-image-box-wrapper:hover .elementor-image-box-description {
  transform: translateX(6px);                                    /* NEW */
}

/* CHANGED: "Learn More →" is a soft pill that fills with the accent color on hover */
.resources-box .elementor-image-box-wrapper::after {
  content: "Learn More \2192";
  grid-column: 2;
  grid-row: 1;
  display: inline-flex;
  align-items: center;
  padding: 12px 22px;
  font-weight: 700;
  font-size: 14.5px;
  line-height: 1;
  white-space: nowrap;
  color: var(--rb-accent);
  background: #F3EEEC;                                           /* fallback */
  background: color-mix(in srgb, var(--rb-accent) 12%, white);
  border-radius: 999px;
  transition: background .35s ease, color .35s ease, transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease;
}
.resources-box .elementor-image-box-wrapper:hover::after {
  background: var(--rb-accent);
  color: #fff;
  transform: translateX(-4px) scale(1.06);
  box-shadow: 0 10px 20px -8px var(--rb-accent);
}

/* Whole card clickable when the widget has a link */
.resources-box .elementor-image-box-title a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}

/* NEW: soft fade-up when the cards load */
@keyframes rb-rise {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: translateY(0); }
}
.resources-box { animation: rb-rise .7s cubic-bezier(.2, .8, .2, 1) both; }
.resources-box:nth-child(2) { animation-delay: .12s; }
.resources-box:nth-child(3) { animation-delay: .24s; }

/* NEW: tablet */
@media (max-width: 1024px) {
  .resources-box .elementor-image-box-wrapper { column-gap: 16px !important; }
  .resources-box .elementor-image-box-wrapper::after { padding: 10px 16px; font-size: 14px; }
}

/* Mobile: pill drops under the text, no hover lift */
@media (max-width: 480px) {
  .resources-box .elementor-image-box-wrapper { grid-template-columns: 1fr !important; }
  .resources-box .elementor-image-box-wrapper::after {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    margin-top: 14px;
  }
  .resources-box .elementor-image-box-wrapper:hover { transform: none; }                 /* NEW */
  .resources-box .elementor-image-box-wrapper:hover .elementor-image-box-title,
  .resources-box .elementor-image-box-wrapper:hover .elementor-image-box-description { transform: none; } /* NEW */
}

/* NEW: respect reduced-motion settings */
@media (prefers-reduced-motion: reduce) {
  .resources-box { animation: none; }
  .resources-box * , .resources-box .elementor-image-box-wrapper { transition: none !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4ce00226 *//* ===== Contact section: themed background ===== */
.contact-section{
  position:relative;
  overflow:hidden;
  padding:110px 24px !important;
  background-color:#F7F2F0 !important;
  background-image:
    radial-gradient(620px 420px at 6% 8%, rgba(200,149,145,.28), transparent 70%),
    radial-gradient(700px 480px at 96% 96%, rgba(47,104,138,.20), transparent 70%),
    radial-gradient(rgba(36,82,109,.07) 1.2px, transparent 1.2px) !important;
  background-size:auto, auto, 26px 26px !important;
  background-repeat:no-repeat, no-repeat, repeat !important;
}
/* soft glow shapes (circles, not arches) */
.contact-section::before,
.contact-section::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  z-index:0;
}
.contact-section::before{
  width:340px;height:340px;
  top:-120px;right:8%;
  border:1.5px solid rgba(200,149,145,.45);
}
.contact-section::after{
  width:220px;height:220px;
  bottom:-70px;left:7%;
  background:rgba(47,104,138,.08);
}
.contact-section > *,
.contact-section > .e-con-inner{position:relative;z-index:1}

/* Text */
.contact-section .elementor-widget-heading:first-of-type .elementor-heading-title{
  color:#C89591 !important;
  font-size:14px !important;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-align:center;
}
.contact-section h2.elementor-heading-title{
  color:#24526D !important;
  text-align:center;
  font-size:clamp(30px,4vw,50px) !important;
  line-height:1.15 !important;
  text-wrap:balance;
}
.contact-section h2.elementor-heading-title::after{
  content:"";
  display:block;
  width:90px;height:3px;
  border-radius:3px;
  background:#C89591;
  margin:24px auto 0;
}
.contact-section .elementor-widget-text-editor,
.contact-section .elementor-widget-text-editor p{
  color:#3D4148 !important;
  text-align:center;
  font-size:clamp(16px,1.5vw,19px);
  line-height:1.7;
  max-width:640px;
  margin-left:auto;
  margin-right:auto;
}

/* Form card */
.contact-section .elementor-widget-form,
.contact-section .contact-form-card{
  background:#fff !important;
  border-radius:22px !important;
  padding:48px 44px !important;
  max-width:760px;
  margin:40px auto 0;
  box-shadow:0 24px 60px rgba(36,82,109,.14);
  border-top:5px solid transparent;
  border-image:linear-gradient(90deg,#2F688A,#C89591) 1;
}
.contact-section .elementor-field-label{
  color:#3D4148 !important;
  font-weight:600;
  font-size:14px;
}
.contact-section .elementor-field-textual{
  background:#F7F2F0 !important;
  border:1.5px solid transparent !important;
  border-radius:12px !important;
  padding:14px 16px !important;
  color:#3D4148 !important;
  transition:border-color .2s, box-shadow .2s, background .2s;
}
.contact-section .elementor-field-textual:focus{
  background:#fff !important;
  border-color:#2F688A !important;
  box-shadow:0 0 0 4px rgba(47,104,138,.14);
  outline:none;
}
.contact-section .elementor-button{
  width:100%;
  background:#2F688A !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:16px 36px !important;
  font-weight:600;
  transition:background .25s, transform .25s;
}
.contact-section .elementor-button:hover{
  background:#24526D !important;
  transform:translateY(-2px);
}

/* Tablet and mobile */
@media (max-width:767px){
  .contact-section{padding:70px 16px !important}
  .contact-section::before{width:220px;height:220px;top:-90px;right:-40px}
  .contact-section::after{width:150px;height:150px;bottom:-50px;left:-30px}
  .contact-section .elementor-widget-form,
  .contact-section .contact-form-card{padding:32px 22px !important;margin-top:28px}
}/* End custom CSS */
/* Start custom CSS */.services-flex {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(55% 60% at 85% 50%, rgba(232,196,190,.55) 0%, rgba(232,196,190,0) 70%),
    radial-gradient(50% 55% at 5% 85%, rgba(160,195,215,.30) 0%, rgba(160,195,215,0) 70%),
    radial-gradient(45% 40% at 40% 0%, rgba(255,255,255,.8) 0%, rgba(255,255,255,0) 100%),
    linear-gradient(180deg, #f1ebe4 0%, #f8f3ee 45%, #f5eee8 100%);
}

/* Minimal SVG art: rings, soft circles, flowing lines */
.services-flex::before {
  content: "";
  position: absolute;
  inset: -4%;
  z-index: 0;
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='xMidYMid slice' fill='none'%3E%3Cg stroke='%232a5470' stroke-opacity='.12' stroke-width='1.3'%3E%3Ccircle cx='1280' cy='450' r='240'/%3E%3Ccircle cx='1280' cy='450' r='330'/%3E%3Ccircle cx='1280' cy='450' r='420'/%3E%3Ccircle cx='1280' cy='450' r='510'/%3E%3C/g%3E%3Ccircle cx='1430' cy='160' r='150' fill='%23c99691' fill-opacity='.16'/%3E%3Ccircle cx='140' cy='790' r='210' fill='%232a5470' fill-opacity='.07'/%3E%3Cpath d='M-40 770C200 690 380 850 640 770S1000 650 1200 730' stroke='%23b88a85' stroke-opacity='.5' stroke-width='1.6'/%3E%3Cpath d='M-40 815C200 735 380 895 640 815S1000 695 1200 775' stroke='%232a5470' stroke-opacity='.2' stroke-width='1.6'/%3E%3Cpath d='M-40 140C220 80 420 220 700 150S1000 60 1150 110' stroke='%23b88a85' stroke-opacity='.35' stroke-width='1.4'/%3E%3Cg fill='%23b88a85' fill-opacity='.55'%3E%3Ccircle cx='560' cy='240' r='4'/%3E%3Ccircle cx='900' cy='110' r='3'/%3E%3Ccircle cx='720' cy='830' r='3.5'/%3E%3C/g%3E%3Cg stroke='%232a5470' stroke-opacity='.35' stroke-width='1.5'%3E%3Cpath d='M380 120v16M372 128h16'/%3E%3Cpath d='M1040 800v16M1032 808h16'/%3E%3C/g%3E%3C/svg%3E") center / cover no-repeat;
  animation: tsgFloat 26s ease-in-out infinite alternate;
}

/* Soft edge tint so it eases out of the photos above and below */
.services-flex::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(42,84,112,.22) 0%, rgba(42,84,112,0) 12%),
    linear-gradient(0deg, rgba(42,84,112,.22) 0%, rgba(42,84,112,0) 12%);
}

.services-flex > * {
  position: relative;
  z-index: 1;
}

@keyframes tsgFloat {
  0%   { transform: translate3d(-1.5%, -1%, 0) scale(1); }
  100% { transform: translate3d(1.5%, 1.5%, 0) scale(1.04); }
}

@media (prefers-reduced-motion: reduce) {
  .services-flex::before { animation: none; }
}

/* Keep content above the background layers */
.services-flex > * {
  position: relative;
  z-index: 1;
}

@keyframes tsgDrift {
  0%   { transform: translate3d(-2%, -1%, 0) scale(1); }
  50%  { transform: translate3d(2%, 2%, 0) scale(1.06); }
  100% { transform: translate3d(-1%, 3%, 0) scale(1.02); }
}

@media (prefers-reduced-motion: reduce) {
  .services-flex::before { animation: none; }
}
@media (max-width: 767px) {

  html body .services-flex {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 28px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box;
  }

  /* Every direct child (text block, cards block) goes full width */
  html body .services-flex > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
  }

  /* Any inner container that holds the cards stacks too */
  html body .services-flex :has(> .resources-box) {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 16px !important;
    width: 100% !important;
  }

  html body .services-flex .resources-box,
  html body .services-flex .resources-box .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
  }

  html body .services-flex h1,
  html body .services-flex h2,
  html body .services-flex h3 {
    font-size: clamp(30px, 8vw, 38px) !important;
    line-height: 1.15 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  html body .services-flex .resources-box .elementor-image-box-wrapper {
    grid-template-columns: 1fr !important;
    row-gap: 14px;
  }
  html body .services-flex .resources-box .elementor-image-box-wrapper::after {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
  }
}


/* NEW: parent of .services-row stacks vertically (works boxed or full-width) */
.elementor-element:has(> .services-row),
.elementor-element:has(> .e-con-inner > .services-row) > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: clamp(24px, 3vw, 40px) !important;
}

/* NEW: cards row takes the full width */
.services-row {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}

/* NEW: the button (any sibling after the cards) sits centered underneath */
.services-row ~ .elementor-element {
  width: auto !important;
  max-width: 100% !important;
  flex: none !important;
  align-self: center !important;
}
.services-row ~ .elementor-element .elementor-button {
  background: #2F688A !important;
  color: #fff !important;
  font-family: 'Fraunces', serif !important;
  font-weight: 600;
  border-radius: 12px;
  padding: 16px 34px;
  transition: background .25s ease, transform .25s ease;
}
.services-row ~ .elementor-element .elementor-button:hover {
  background: #24526D !important;
  transform: translateY(-3px);
}

@media (max-width: 480px) {
  .services-row ~ .elementor-element,
  .services-row ~ .elementor-element .elementor-button {
    width: 100% !important;
    text-align: center;
  }
}





/* ===== TSG: Path cards ===== */
.tsg-paths {
  --tsg-blue: #2F688A;
  --tsg-blue-dark: #24526D;
  --tsg-charcoal: #3D4148;
  --tsg-rose-white: #F7F2F0;
  --tsg-rose: #C89591;
  --tsg-cream: #EFE4D6; /* NEW: icon tile */

  width: 100% !important;
  max-width: 1280px !important;
  margin-inline: auto !important;
  box-sizing: border-box;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  --width: 100%;
}

/* Every wrapper between .tsg-paths and the cards: plain full-width block */
.tsg-paths:has(.tsg-card):not(:has(> .tsg-card)),
.tsg-paths :has(.tsg-card):not(:has(> .tsg-card)) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 1 1 100% !important;
  --width: 100%;
}

/* The element that directly holds the cards = the 3-column grid */
.tsg-paths:has(> .tsg-card),
.tsg-paths :has(> .tsg-card) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: clamp(20px, 2.5vw, 32px) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  box-sizing: border-box;
  --width: 100%;
}

.tsg-paths {
  padding-inline: clamp(16px, 4vw, 40px) !important;
}

/* ===== NEW: Background logos (before / after) ===== */
.tsg-paths {
  --tsg-bg-logo: url("https://tsgfuturi.com/wp-content/uploads/2026/10/4.png");
  --tsg-bg-logo-size: clamp(140px, 16vw, 240px);  /* CHANGED: smaller */
  --tsg-bg-logo-show: 0.5; /* how much of each logo is visible (0.5 = half) */
  --tsg-bg-logo-opacity: 0.14;                     /* NEW: faint, adjust 0.08 - 0.25 */

  position: relative;
  isolation: isolate; /* logos stay behind the cards, above the section background */
}

.tsg-paths::before,
.tsg-paths::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  width: calc(var(--tsg-bg-logo-size) * var(--tsg-bg-logo-show));
  height: var(--tsg-bg-logo-size);
  background-image: var(--tsg-bg-logo);
  background-repeat: no-repeat;
  background-size: var(--tsg-bg-logo-size) var(--tsg-bg-logo-size);
  opacity: var(--tsg-bg-logo-opacity);                      /* CHANGED: controlled opacity */
  filter: grayscale(1) brightness(0.55);                    /* NEW: turns logo into a soft gray shape; remove if already gray */
}

/* Left logo: pinned to the screen's left edge, shows its right part */
.tsg-paths::before {
  left: calc(50% - 50vw);
  top: 6%;                                  /* CHANGED: sits near the top of the cards */
  background-position: right center;
}

/* Right logo: pinned to the screen's right edge, shows its left part */
.tsg-paths::after {
  right: calc(50% - 50vw);
  bottom: 6%;                               /* CHANGED: a bit closer in */
  background-position: left center;
}

/* Stops the pinned logos from causing horizontal scroll */
.tsg-section-bg {
  overflow-x: clip;
}

/* Shared card styling */
.tsg-paths .tsg-card {
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;        /* CHANGED: centered */
  justify-content: flex-start !important;
  text-align: center;                    /* NEW */
  gap: 16px;
  grid-column: auto !important;
  grid-row: auto !important;
  justify-self: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  box-sizing: border-box;
  padding: clamp(28px, 3vw, 44px) !important;
  border-radius: 20px !important;
  border: 1px solid rgba(61, 65, 72, 0.06) !important;
  overflow: hidden;
  box-shadow: 0 6px 24px rgba(47, 104, 138, 0.08);
  transition: transform .3s ease, box-shadow .3s ease;
  container-type: inline-size;           /* NEW: lets heading scale to card width */
  --width: 100%;
}

/* Accent bar across the top */
.tsg-paths .tsg-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 6px;
  background: var(--tsg-accent);
}

.tsg-paths .tsg-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 40px rgba(47, 104, 138, 0.16);
}

/* Card colors */
.tsg-paths .tsg-card-1 {
  --tsg-accent: #2F688A;
  background: #E6EFF5 !important;
}
.tsg-paths .tsg-card-2 {
  --tsg-accent: #C89591;
  background: #F7F2F0 !important;
}
.tsg-paths .tsg-card-3 {
  --tsg-accent: #2F688A;
  background: #F0DCD9 !important;
}

/* ===== NEW: Icon on top, centered, inside cream tile ===== */

/* Icon Box / Image Box wrapper: stack vertically */
.tsg-paths .tsg-card .elementor-icon-box-wrapper,
.tsg-paths .tsg-card .elementor-image-box-wrapper {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 16px;
}
.tsg-paths .tsg-card .elementor-icon-box-icon,
.tsg-paths .tsg-card .elementor-image-box-img {
  margin: 0 !important;
  width: auto !important;
}
.tsg-paths .tsg-card .elementor-icon-box-content,
.tsg-paths .tsg-card .elementor-image-box-content {
  width: 100%;
}

/* The cream tile */
.tsg-paths .tsg-card .elementor-icon-box-icon .elementor-icon,
.tsg-paths .tsg-card .elementor-widget-icon .elementor-icon,
.tsg-paths .tsg-card .elementor-image-box-img,
.tsg-paths .tsg-card .elementor-widget-image .elementor-widget-container {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: clamp(60px, 18cqw, 76px) !important;
  height: clamp(60px, 18cqw, 76px) !important;
  background: var(--tsg-cream) !important;
  border-radius: 18px;
  padding: 0 !important;
  margin-inline: auto !important;
  box-sizing: border-box;
}

/* Logo inside the tile: recolored to brand blue */
.tsg-paths .tsg-card .elementor-icon svg,
.tsg-paths .tsg-card .elementor-icon i {
  width: 52%;
  height: 52%;
  font-size: clamp(28px, 8cqw, 36px);
  color: var(--tsg-blue) !important;
  fill: var(--tsg-blue) !important;
}
.tsg-paths .tsg-card .elementor-icon svg path {
  fill: var(--tsg-blue) !important;
}
/* If the logo is an image (white PNG/SVG), this turns it blue */
.tsg-paths .tsg-card .elementor-image-box-img img,
.tsg-paths .tsg-card .elementor-widget-image img {
  width: 52% !important;
  height: auto !important;
  max-width: none !important;
  filter: brightness(0) saturate(100%) invert(33%) sepia(32%) saturate(900%) hue-rotate(167deg) brightness(92%) contrast(90%);
}

/* Typography */
.tsg-paths .tsg-card .elementor-heading-title,
.tsg-paths .tsg-card .elementor-icon-box-title,
.tsg-paths .tsg-card .elementor-image-box-title {
  font-family: 'Fraunces', serif !important;   /* CHANGED */
  font-weight: 600 !important;
  color: var(--tsg-charcoal) !important;
  font-size: clamp(18px, 1.7vw, 24px);         /* fallback */
  font-size: clamp(16px, 6.2cqw, 26px);        /* scales to card width */
  line-height: 1.2;
  white-space: nowrap;                          /* NEW: one line */
  text-align: center;
  margin: 0;
}
.tsg-paths .tsg-card .elementor-icon-box-title a,
.tsg-paths .tsg-card .elementor-icon-box-title span,
.tsg-paths .tsg-card .elementor-image-box-title a {
  font: inherit;
  color: inherit;
}

.tsg-paths .tsg-card p,
.tsg-paths .tsg-card .elementor-widget-text-editor,
.tsg-paths .tsg-card .elementor-icon-box-description,
.tsg-paths .tsg-card .elementor-image-box-description {
  color: #4A4F57;
  font-size: clamp(15px, 1.1vw, 17px);
  line-height: 1.65;
  text-align: center;                           /* NEW */
  margin: 0;
}

/* Button pinned to the bottom so all three align */
.tsg-paths .tsg-card .elementor-widget-button {
  margin-top: auto;
  padding-top: 12px;
  width: 100%;
}
.tsg-paths .tsg-card .elementor-widget-button .elementor-button-wrapper {
  display: flex;                                /* NEW: centered button */
  justify-content: center;
}
.tsg-paths .tsg-card .elementor-button {
  background: var(--tsg-blue) !important;
  color: #fff !important;
  border-radius: 10px;
  padding: 14px 26px;
  transition: background .25s ease, transform .25s ease;
}
.tsg-paths .tsg-card .elementor-button:hover {
  background: var(--tsg-blue-dark) !important;
  transform: translateX(3px);
}

/* Small laptops: tighten */
@media (max-width: 1200px) {
  .tsg-paths .tsg-card { padding: 28px 24px !important; }
  .tsg-paths .tsg-card .elementor-button { padding: 12px 20px; }
}

/* NEW: Tablet: smaller background logos */
@media (max-width: 1024px) {
  .tsg-paths { --tsg-bg-logo-size: clamp(110px, 18vw, 170px); }   /* CHANGED: smaller */
}

/* Tablet and mobile: stack */
@media (max-width: 900px) {
  .tsg-paths { max-width: 640px !important; }
  .tsg-paths:has(> .tsg-card),
  .tsg-paths :has(> .tsg-card) {
    grid-template-columns: 1fr !important;
  }
  .tsg-paths .tsg-card:hover { transform: none; }
}

@media (max-width: 480px) {
  .tsg-paths { --tsg-bg-logo-size: 100px; }       /* CHANGED: smaller */
  .tsg-paths::before,
  .tsg-paths::after { opacity: .12; }             /* CHANGED: stays faint on mobile */
  .tsg-paths .tsg-card { border-radius: 16px !important; }
  .tsg-paths .tsg-card .elementor-button {
    width: 100%;
    text-align: center;
  }
}

/* Very narrow phones: allow the heading to wrap instead of overflowing */
@media (max-width: 340px) {
  .tsg-paths .tsg-card .elementor-heading-title,
  .tsg-paths .tsg-card .elementor-icon-box-title,
  .tsg-paths .tsg-card .elementor-image-box-title {
    white-space: normal;
  }
}
/* Extra space under the card headings */
.tsg-paths .tsg-card .elementor-heading-title,
.tsg-paths .tsg-card .elementor-icon-box-title,
.tsg-paths .tsg-card .elementor-image-box-title {
  padding-bottom: 10px;
}




/* ==============================================
   TSG + FUTURI — HOMEPAGE CARD REFINEMENT
   White → Blue → Rose
   Scoped to .tsg-paths only
   ============================================== */

/* 1. FIRST CARD — SOFT WHITE */
.tsg-paths .tsg-card-1 {
    --tsg-accent: #8CA8B8;

    background: #FCFBF8 !important;
    border-color: rgba(47, 104, 138, 0.12) !important;
}

/* 2. SECOND CARD — SOFT BLUE */
.tsg-paths .tsg-card-2 {
    --tsg-accent: #2F688A;

    background: #DBEAF2 !important;
    border-color: rgba(47, 104, 138, 0.16) !important;
}

/* 3. THIRD CARD — SOFT ROSE */
.tsg-paths .tsg-card-3 {
    --tsg-accent: #C89591;

    background: #F1DCDA !important;
    border-color: rgba(200, 149, 145, 0.22) !important;
}

/* Maintain top accent bars */
.tsg-paths .tsg-card::before {
    background: var(--tsg-accent) !important;
    transform-origin: left center;

    transition:
        transform 0.4s ease,
        background-color 0.4s ease;
}

/* Smooth transitions without changing layout */
.tsg-paths .tsg-card {
    transition:
        transform 0.45s cubic-bezier(.22, 1, .36, 1),
        box-shadow 0.45s ease,
        border-color 0.35s ease,
        background-color 0.35s ease !important;
}

/* Smooth animation for existing icon tiles */
.tsg-paths .tsg-card
.elementor-icon-box-icon .elementor-icon,
.tsg-paths .tsg-card
.elementor-widget-icon .elementor-icon,
.tsg-paths .tsg-card
.elementor-image-box-img,
.tsg-paths .tsg-card
.elementor-widget-image .elementor-widget-container {
    transition:
        transform 0.45s cubic-bezier(.22, 1, .36, 1),
        box-shadow 0.35s ease !important;
}

/* Smooth existing button interaction */
.tsg-paths .tsg-card .elementor-button {
    transition:
        transform 0.3s ease,
        background-color 0.3s ease,
        box-shadow 0.3s ease !important;
}

/* ==============================================
   HOVER — DEVICES WITH A MOUSE / TRACKPAD
   ============================================== */

@media (hover: hover) and (pointer: fine)
       and (min-width: 901px) {

    /* Lift the card */
    .tsg-paths .tsg-card:hover {
        transform: translateY(-8px) !important;

        box-shadow:
            0 22px 45px rgba(41, 70, 82, 0.14),
            0 6px 16px rgba(41, 70, 82, 0.05)
            !important;
    }

    /* Individual hover border accents */
    .tsg-paths .tsg-card-1:hover {
        border-color: #A5BBC5 !important;
    }

    .tsg-paths .tsg-card-2:hover {
        border-color: #79A8BD !important;
    }

    .tsg-paths .tsg-card-3:hover {
        border-color: #D9AAA6 !important;
    }

    /* Slight movement in the top accent bar */
    .tsg-paths .tsg-card:hover::before {
        transform: scaleY(1.25);
    }

    /* Icon tile floats gently upward */
    .tsg-paths .tsg-card:hover
    .elementor-icon-box-icon .elementor-icon,
    .tsg-paths .tsg-card:hover
    .elementor-widget-icon .elementor-icon,
    .tsg-paths .tsg-card:hover
    .elementor-image-box-img,
    .tsg-paths .tsg-card:hover
    .elementor-widget-image .elementor-widget-container {
        transform: translateY(-5px) scale(1.04);

        box-shadow:
            0 8px 22px rgba(47, 104, 138, 0.10)
            !important;
    }

    /* Button response */
    .tsg-paths .tsg-card
    .elementor-button:hover {
        background: #24526D !important;

        transform: translateY(-3px) !important;

        box-shadow:
            0 8px 18px rgba(47, 104, 138, 0.20)
            !important;
    }
}

/* Keyboard focus, without moving the layout */
.tsg-paths .tsg-card:focus-within {
    border-color: #2F688A !important;
}

/* Preserve mobile and tablet positioning */
@media (max-width: 900px) {
    .tsg-paths .tsg-card:hover {
        transform: none !important;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .tsg-paths .tsg-card,
    .tsg-paths .tsg-card::before,
    .tsg-paths .tsg-card
    .elementor-icon,
    .tsg-paths .tsg-card
    .elementor-image-box-img,
    .tsg-paths .tsg-card
    .elementor-widget-image .elementor-widget-container,
    .tsg-paths .tsg-card .elementor-button {
        transition: none !important;
    }

    .tsg-paths .tsg-card:hover,
    .tsg-paths .tsg-card:hover::before {
        transform: none !important;
    }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Futura';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://tsgfuturi.com/wp-content/uploads/2026/10/FuturaCyrillicMedium.ttf') format('truetype');
}
/* End Custom Fonts CSS */