.ai-technology{position:relative;background:#fff;color:#181b20;direction:ltr;text-align:center;padding:88px 24px 62px;isolation:isolate;scroll-margin-top:88px}
.ai-technology *{box-sizing:border-box}
.ai-heading{position:relative;z-index:2}
.ai-heading h2{font-size:clamp(38px,4.25vw,62px);font-weight:400;line-height:1.12;letter-spacing:-2.2px;margin:0}
.ai-heading p{font-size:19px;font-weight:400;line-height:1.5;letter-spacing:-.25px;color:#818690;margin:15px 0 0}
.ai-composition{position:relative;width:100%;max-width:1050px;height:510px;margin:22px auto 0}
.ai-visual{position:absolute;inset:0;pointer-events:none}
.ai-visual:after{content:"";position:absolute;left:34%;bottom:17%;width:32%;height:5%;background:radial-gradient(ellipse,#8094b221,transparent 70%);filter:blur(10px);z-index:-1}
.ai-canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .7s}
.ai-ready .ai-canvas{opacity:1}
.ai-fallback{position:absolute;left:26%;top:9%;width:48%;height:75%;transition:opacity .5s}
.ai-ready .ai-fallback{opacity:0}
.ai-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1}
.ai-connection{fill:none;stroke:#b5c1d1;stroke-width:.75;stroke-opacity:.65}
.ai-point-halo{fill-opacity:.12}
.ai-point{stroke:#fff;stroke-width:1.15;fill-opacity:.95}
.ai-features{list-style:none;padding:0;margin:0}
.ai-feature{position:absolute;z-index:2;width:180px;font-size:14px;line-height:1.5;letter-spacing:-.15px;font-weight:400;color:#5b6472;background:#ffffffd9;padding:6px 10px;text-align:left}
.ai-feature:nth-child(1){left:3%;top:22%;text-align:right}
.ai-feature:nth-child(2){right:3%;top:20%}
.ai-feature:nth-child(3){right:1%;top:64%}
.ai-feature:nth-child(4){left:1%;top:66%;text-align:right}
.ai-feature:nth-child(5){left:50%;top:89%;transform:translateX(-50%);text-align:center;width:210px}
@media(min-width:1500px){.ai-composition{height:550px;max-width:1120px}}
@media(max-width:800px){.ai-technology{padding-top:68px;padding-bottom:48px}.ai-composition{height:470px}.ai-feature{font-size:12px;width:155px}.ai-feature:nth-child(1){left:0}.ai-feature:nth-child(2){right:0}.ai-feature:nth-child(3){right:0}.ai-feature:nth-child(4){left:0}}
@media(max-width:550px){
  .ai-technology{padding:57px 22px 42px}
  .ai-heading h2{font-size:37px;letter-spacing:-1.4px}
  .ai-heading p{font-size:16px;letter-spacing:-.1px;margin-top:12px}
  .ai-composition{height:430px;margin-top:21px}
  .ai-feature{font-size:11px;line-height:1.45;width:126px;padding:4px 5px;letter-spacing:-.05px}
  .ai-feature:nth-child(1){left:-2px;top:9%;text-align:left;width:125px}
  .ai-feature:nth-child(2){right:-2px;top:9%;text-align:right;width:113px}
  .ai-feature:nth-child(3){right:-2px;top:71%;text-align:right;width:126px}
  .ai-feature:nth-child(4){left:-2px;top:71%;text-align:left;width:125px}
  .ai-feature:nth-child(5){top:91%;width:190px}
  .ai-fallback{left:8%;top:18%;width:84%;height:57%}
  .ai-visual:after{left:21%;bottom:24%;width:58%}
  .ai-connection{stroke-width:.65;stroke-opacity:.55}
}
@media(max-width:360px){.ai-technology{padding-left:18px;padding-right:18px}.ai-heading h2{font-size:33px}.ai-heading p{font-size:15px}.ai-composition{height:410px}.ai-feature{font-size:10px}.ai-feature:nth-child(1){width:115px}.ai-feature:nth-child(2){width:105px}}
@media(prefers-reduced-motion:reduce){.ai-canvas,.ai-fallback{transition:none}}

/* Render the real sculpture first; show the SVG only when WebGL is unavailable. */
.ai-fallback{display:none}.ai-no-webgl .ai-fallback{display:block;opacity:1}
.ai-canvas{transition:none}.ai-connections{opacity:0}.ai-ready .ai-connections,.ai-no-webgl .ai-connections{opacity:1}
.ai-feature{background:transparent}
.ai-flow-pulse{filter:drop-shadow(0 0 3px #8ab9ff)}
@media(max-width:550px){.ai-feature:nth-child(3),.ai-feature:nth-child(4){top:79%}.ai-feature:nth-child(5){top:96%}.ai-composition{margin-bottom:20px}}
/* Satin graphite: restrained monochrome signal paths. */
.ai-connection{stroke:#a5a9ae;stroke-opacity:.4}
.ai-flow-pulse{fill:none;stroke:#f8f9fa;stroke-width:2;stroke-linecap:round;stroke-dasharray:.065 .935;filter:drop-shadow(0 0 1px #454b54) drop-shadow(0 0 3px #c2c6cc)}
.ai-point{stroke:#f5f5f5;stroke-width:1.25}
.ai-point-halo{filter:none}
.ai-fallback{filter:hue-rotate(0deg)}
