/* A connected circuit system shared by all content sections. No text or artwork is replaced. */
:root{--fgt-trace:#16839d40;--fgt-trace-strong:#087c98;--fgt-network-glow:#18b3cd12;--fgt-network-ink:#147a96;--fgt-network-opacity:.24;--fgt-rail-inset:24px}
html[data-fgt-mode="dark"]{--fgt-trace:#63dfee35;--fgt-trace-strong:#79eff1;--fgt-network-glow:#1aaac523;--fgt-network-ink:#63dfee;--fgt-network-opacity:.32}
body{position:relative}
/* The two unbroken rails span the document, including the gaps between sections. */
#fgt-tech-spine{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden;background-image:linear-gradient(var(--fgt-trace),var(--fgt-trace)),linear-gradient(var(--fgt-trace),var(--fgt-trace));background-size:1px 100%;background-position:left var(--fgt-rail-inset) top,right var(--fgt-rail-inset) top;background-repeat:no-repeat;contain:paint}
#fgt-tech-spine:before,#fgt-tech-spine:after{content:'';position:absolute;top:0;bottom:0;width:7px;background:radial-gradient(circle,var(--fgt-trace-strong) 1px,transparent 2px) center 140px/7px 220px repeat-y;opacity:.65}
#fgt-tech-spine:before{left:calc(var(--fgt-rail-inset) - 3px)}
#fgt-tech-spine:after{right:calc(var(--fgt-rail-inset) - 3px)}
.fgt-connected-section{position:relative;isolation:isolate}
.fgt-section-circuit{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 8% 25%,var(--fgt-network-glow),transparent 38%),radial-gradient(ellipse at 92% 65%,var(--fgt-network-glow),transparent 42%);contain:paint}
/* Branching node clusters replace the square grid. Their centre stays quiet behind copy. */
.fgt-section-circuit:before{content:'';position:absolute;inset:0;background:var(--fgt-network-ink);opacity:var(--fgt-network-opacity);-webkit-mask:url('../images2/fgt-neural-network.svg') center top/100% auto repeat-y;mask:url('../images2/fgt-neural-network.svg') center top/100% auto repeat-y}
.fgt-section-circuit:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 100px 90px at 6.1% 200px,var(--fgt-network-glow),transparent),radial-gradient(ellipse 150px 120px at 84.4% 316px,var(--fgt-network-glow),transparent);opacity:.8}
/* Remove the old hero grid as well, keeping the artwork and circuit frame. */
html .banner-section-new:after{background-image:url('../images2/fgt-circuit.svg');background-size:cover;background-position:center}
/* Panels repeat the circuit edge without adding labels, claims or metrics. */
html :is(.work-block,.work-block-two,.work-block-three,.news-block,.product-block,.candidate-block,.pricing-table)>.inner-box,html :is(.mentor-feature,.mentor-profile,.signal-benefit,.signal-story,.feature-card,.flow-card,.accordion-box .block){border-color:var(--fgt-trace)!important;box-shadow:inset 0 1px 0 var(--fgt-trace),0 12px 36px #0015270c}
html .fgt-connected-section :is(.sec-title,.signal-section-heading,.mentor-solution-heading,.mentor-testimonial-heading){position:relative}
html .fgt-connected-section :is(.sec-title,.signal-section-heading,.mentor-solution-heading,.mentor-testimonial-heading):after{content:'';display:block;width:72px;height:3px;margin-top:20px;border-radius:3px;background:linear-gradient(90deg,var(--fgt-trace-strong) 0 65%,transparent 65% 72%,var(--fgt-trace) 72% 87%,transparent 87% 94%,var(--fgt-trace) 94%);box-shadow:0 0 16px var(--fgt-network-glow)}
html .fgt-connected-section :is(.sec-title.text-center,.mentor-testimonial-heading):after{margin-inline:auto}
/* Keep dense utility tables and mobile copy clear of the decorative rails. */
@media(max-width:991px){:root{--fgt-rail-inset:12px}.fgt-section-circuit:before{-webkit-mask-size:1100px 550px;mask-size:1100px 550px;-webkit-mask-position:left top;mask-position:left top}}
@media(max-width:600px){:root{--fgt-rail-inset:6px;--fgt-network-opacity:.17}html[data-fgt-mode="dark"]{--fgt-network-opacity:.23}.fgt-section-circuit:before{-webkit-mask-size:900px 450px;mask-size:900px 450px}html .fgt-connected-section :is(.sec-title,.signal-section-heading,.mentor-solution-heading,.mentor-testimonial-heading):after{width:52px;margin-top:15px}#fgt-tech-spine:before,#fgt-tech-spine:after{opacity:.4}}
@media(prefers-reduced-motion:no-preference){.fgt-section-circuit:after{animation:fgt-network-breathe 7s ease-in-out infinite alternate}@keyframes fgt-network-breathe{from{opacity:.35}to{opacity:1}}}
@media print{#fgt-tech-spine,.fgt-section-circuit{display:none}}
@media(max-width:600px){html .main-footer .auto-container{padding-inline:20px}}
