.enterprise-system-map{--esm-ink:#020618;--esm-soft:#f1f5f9;--esm-surface-top:#f4f7fa;--esm-surface-bottom:#e8eef5;--esm-surface-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");--esm-line:#ff6330;position:relative;width:100%;max-width:100%;min-width:0;height:100%;padding:clamp(16px,3.55cqw,32px);background:#fff;color:var(--esm-ink);font-family:"Funnel Sans",sans-serif;container-type:inline-size}
/* The surface variant receives its material from the surrounding section frame.
   The map itself stays transparent so it never creates a second white card. */
.enterprise-system-map--surface{--esm-surface-top:#fff;--esm-surface-bottom:#fff;background:transparent}
.enterprise-system-map--surface .esm-domain::after,.enterprise-system-map--surface .esm-node--office::after{opacity:.22}
.esm-header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:clamp(19px,4.45cqw,40px);font-size:clamp(9px,1.34cqw,12px);font-weight:550;letter-spacing:.1em}.esm-header>b{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:99px;background:var(--esm-soft);font-size:inherit;font-weight:550}.esm-header i{width:8px;aspect-ratio:1;border-radius:50%;background:#00ff66;box-shadow:0 0 0 2px #178b9b30,0 0 3px #178b9b35;animation:esm-governed-pulse 2.6s ease-in-out infinite}@keyframes esm-governed-pulse{0%,100%{box-shadow:0 0 0 2px #178b9b30,0 0 3px #178b9b35;transform:scale(1);opacity:.8}50%{box-shadow:0 0 0 6px #178b9b38,0 0 10px #178b9b66;transform:scale(1.3);opacity:1}}
.esm-workplace{position:relative;z-index:2;text-align:center}.esm-workplace strong{font-size:clamp(30px,4.67cqw,42px);line-height:1.18;font-weight:520;letter-spacing:-.03em}.esm-rule{position:relative;z-index:1;height:1px;margin:clamp(16px,3.55cqw,32px) 0;background:linear-gradient(90deg,transparent,#020618 50%,transparent);opacity:.82}.esm-workplace+.esm-rule{margin-bottom:0}.esm-rule+.esm-connector--top{margin-top:0}.esm-connector--bottom+.esm-rule{margin-top:0;margin-bottom:clamp(30px,5.3cqw,48px)}
.esm-connector{position:relative;z-index:1;width:min(412px,100%);height:clamp(43px,7cqw,63px);margin-inline:auto}.esm-connector-svg{display:block;width:100%;height:100%;overflow:visible}.esm-connector-line{fill:none;stroke-width:1.4;vector-effect:non-scaling-stroke}.esm-connector-dot{filter:drop-shadow(0 0 2px rgb(228 71 55 / .45))}.esm-connector-dot--magenta{fill:#c5357f}.esm-connector-dot--red{fill:#e44737}.esm-connector-dot--orange{fill:#f27b18}.esm-connector--bottom{transform:rotate(180deg)}
.esm-domains{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:16px}.esm-domain{min-width:0;min-height:198px;padding:24px 16px;border-radius:8px;text-align:center}.esm-domain,.esm-node--office{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,var(--esm-surface-top),var(--esm-surface-bottom))}.esm-domain::after,.esm-node--office::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.3;background-image:var(--esm-surface-grain);background-size:180px 180px;mix-blend-mode:multiply}.esm-domain>*,.esm-node--office>*{position:relative;z-index:1}.esm-domain>span,.esm-office>span,.esm-runtime{font-size:12px;line-height:1.2;font-weight:550;letter-spacing:.1em}.esm-domain>strong{display:block;margin-top:12px;font-size:24px;line-height:1.2;font-weight:520;letter-spacing:-.01em}.esm-domain>p{margin:4px 0 12px;font-size:12px;line-height:1.4;color:#314158}.esm-nodes{display:flex;align-items:stretch;justify-content:center}.esm-node{display:grid;place-items:center;align-content:center;gap:6px;min-width:50px;padding:8px 12px;border-left:1px solid #bacde0}.esm-node:first-child{border-left:0}.esm-lucide{display:block;width:24px;height:24px}.esm-node b{font-size:12px;line-height:1.4;font-weight:550;white-space:nowrap}.esm-nodes--five .esm-node{min-width:0;padding-inline:10px;flex:1}
.esm-office{position:relative;z-index:2;padding:24px 16px 32px;text-align:center}.esm-office>strong{display:block;margin:12px 0 24px;font-size:24px;line-height:1.2;font-weight:520;letter-spacing:-.01em}.esm-office-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.esm-node--office{min-height:54px;padding:16px 8px;border:0;border-radius:8px}.esm-node--office b{font-size:12px}.esm-runtime{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 16px}.esm-runtime>div{display:flex;gap:16px}.esm-runtime b{font-weight:550}.esm-runtime-label{background:linear-gradient(90deg,#c5357f 0%,#e44737 12.5%,#f27b18 25%,#e44737 37.5%,#c5357f 50%,#e44737 62.5%,#f27b18 75%,#e44737 87.5%,#c5357f 100%);background-size:200% 100%;background-position:0 50%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.enterprise-system-map.is-runtime-visible .esm-runtime-label{animation:esm-runtime-spectrum 3.2s linear infinite}@keyframes esm-runtime-spectrum{from{background-position:0 50%}to{background-position:100% 50%}}
@media (prefers-reduced-motion:reduce){.esm-connector-svg circle{display:none}.esm-header i,.enterprise-system-map.is-runtime-visible .esm-runtime-label{animation:none}}
@container (max-width:660px){.enterprise-system-map{padding:18px}.esm-header{font-size:9px}.esm-header>b{padding:6px 9px;gap:7px}.esm-header i{width:6px}.esm-domains{grid-template-columns:1fr;gap:10px}.esm-domain{min-height:0;padding:18px 10px}.esm-domain>strong,.esm-office>strong{font-size:20px}.esm-nodes--five .esm-node{padding-inline:5px}.esm-node{min-width:42px;padding-inline:8px}.esm-node b{font-size:10px}.esm-office{padding-inline:0}.esm-office-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.esm-node--office{padding:11px 4px}.esm-runtime{padding-inline:0;font-size:9px}.esm-runtime>div{gap:8px}}

/* Motion needs a visible first frame even before the viewport observer binds. */
.esm-header i{animation-duration:2.35s;will-change:transform,opacity}.esm-runtime-label{animation:esm-runtime-spectrum 3.2s linear infinite;will-change:background-position}.enterprise-system-map[data-runtime-motion-bound]:not(.is-runtime-visible) .esm-runtime-label{animation-play-state:paused}

/* Active homepage Enterprise-System visual: transparent, outlined, and fully
   self-contained so it cannot alter other map instances. */
#sn-delivers .sn-glass:has(.enterprise-system-map--surface){background:transparent;background-image:none;border:1px solid rgb(255 255 255 / .25)}
#sn-delivers .enterprise-system-map--surface{--esm-ink:#fff;--esm-soft:rgb(255 255 255 / .13);color:#fff}
#sn-delivers .enterprise-system-map--surface :is(.esm-header,.esm-header>b,.esm-workplace>span,.esm-domain>span,.esm-office>span,.esm-runtime){font-size:12px;line-height:1.2;font-weight:550;letter-spacing:.1em;color:#fff}
#sn-delivers .enterprise-system-map--surface .esm-header>b{background:rgb(255 255 255 / .13);color:#fff}
#sn-delivers .enterprise-system-map--surface .esm-workplace strong,#sn-delivers .enterprise-system-map--surface .esm-office>strong{color:#fff}
#sn-delivers .enterprise-system-map--surface .esm-workplace>span{display:block;margin-top:8px}
#sn-delivers .enterprise-system-map--surface .esm-rule{background:linear-gradient(90deg,transparent,#fff 50%,transparent);opacity:.65}
#sn-delivers .enterprise-system-map--surface .esm-connector-line{stroke:rgb(255 255 255 / .75)}
#sn-delivers .enterprise-system-map--surface :is(.esm-domain,.esm-node--office){border:1px solid rgb(255 255 255 / .5);background:transparent;color:#fff}
#sn-delivers .enterprise-system-map--surface :is(.esm-domain,.esm-node--office)::after{display:none}
#sn-delivers .enterprise-system-map--surface .esm-domain>p{color:rgb(255 255 255 / .82)}
#sn-delivers .enterprise-system-map--surface .esm-node--office{border-color:rgb(255 255 255 / .5)}
#sn-delivers .enterprise-system-map--surface .esm-lucide{filter:brightness(0) invert(1)}
#sn-delivers .sn-media-frame--content-height{container-type:inline-size}
#sn-delivers .sn-glass:has(.enterprise-system-map--surface){font-size:min(18px,2.195118cqw)}
@container (max-width:560px){#sn-delivers .sn-glass:has(.enterprise-system-map--surface){font-size:18px}}
#sn-delivers .enterprise-system-map--surface .esm-runtime{justify-content:center;padding-inline:0}
#sn-delivers .enterprise-system-map--surface footer.esm-runtime{font-size:inherit}
#sn-delivers .enterprise-system-map--surface .esm-runtime-label{display:inline-block;min-height:0;padding:0;background:linear-gradient(112deg,rgb(255 255 255 / .3) 8%,#fff 42%,rgb(255 255 255 / .3) 74%);background-size:240% 100%;background-position:0 50%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:fg-workplace-label-flow 7s ease-in-out infinite alternate;will-change:background-position}
#sn-delivers .enterprise-system-map--surface .esm-runtime-pill{display:inline-flex;background:transparent;border:0;border-radius:0;box-shadow:none}
@media (prefers-reduced-motion:reduce){#sn-delivers .enterprise-system-map--surface .esm-runtime-label{animation:none}}

/* The enterprise map is content-led at every viewport. Its complete graphic
   must remain visible even when the outlined node grid becomes taller. */
#sn-delivers .sn-media-frame--content-height{height:auto;min-height:0;aspect-ratio:auto;overflow:visible}
#sn-delivers .sn-media-frame--content-height :is(.sn-glass,.sn-graphic-canvas,.enterprise-system-map--surface){height:auto;min-height:0;overflow:visible}
#sn-delivers .sn-media-frame--content-height .sn-glass:has(.enterprise-system-map--surface){display:block}

#sn-delivers .esm-connector-dot{fill:#fff;filter:drop-shadow(0 0 2px rgb(99 188 225 / .45))}
