/* Motion is progressive enhancement: content stays visible without JavaScript. */
.motion-scene { position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:0; opacity:.65; }
.motion-orbit { position:absolute; width:430px; height:280px; right:5%; top:18%; border:1px solid #c1e3d52b; border-radius:50%; transform:rotate(-24deg); }
.motion-orbit > span { position:absolute; top:50%; right:-3px; width:6px; height:6px; border-radius:50%; background:#bedac9; box-shadow:0 0 14px #bedac93d; }
.orbit-two { width:340px; height:430px; right:9%; top:9%; transform:rotate(34deg); border-color:#c1e3d51f; }
.orbit-two > span { width:4px; height:4px; right:-2px; }
.orbit-three { width:540px; height:540px; right:1%; top:-2%; border-style:dashed; border-color:#c1e3d518; }
.orbit-three > span { top:12%; right:15%; width:5px; height:5px; }
.motion-cross { position:absolute; color:#d2e9db7a; font-size:24px; font-weight:300; }
.cross-one { right:39%; top:22%; }
.cross-two { right:7%; bottom:18%; font-size:18px; }
.motion-beam { position:absolute; top:8%; bottom:8%; right:24%; width:1px; background:linear-gradient(transparent,#d7ecdc24,transparent); transform:rotate(25deg); }
.inner-cta { position:relative; isolation:isolate; overflow:hidden; }
.inner-cta .motion-scene { opacity:.4; }
.inner-cta .motion-orbit { top:-35%; right:2%; }
.inner-cta .orbit-two { top:-60%; right:7%; }
.inner-cta .orbit-three { top:-80%; right:-1%; }
.enterprise-hero .hero-inner, .page-inner .hero .container, .inner-cta > .container { z-index:1; }
.enterprise-hero .hero-image-caption, .enterprise-hero .hero-scroll, .enterprise-hero .hero-index { z-index:1; }
.hero-scroll > span { display:inline-block; }
.platform-explorer { background:#f0f3ee; border-top:1px solid #e3e9df; }
.explorer-layout { display:grid; grid-template-columns:1.1fr 1fr; gap:0; border:1px solid #d3ded1; background:#fafbf9; }
.platform-diagram { position:relative; min-height:445px; isolation:isolate; overflow:hidden; background:#142e3c; color:#c2d8cb; }
.diagram-grid { position:absolute; inset:0; background-image:linear-gradient(#bad7c608 1px,transparent 1px),linear-gradient(90deg,#bad7c608 1px,transparent 1px); background-size:35px 35px; mask-image:radial-gradient(ellipse at center,black,transparent 80%); }
.diagram-halo { position:absolute; width:260px; height:260px; top:50%; left:50%; border:1px solid #accfba24; border-radius:50%; transform:translate(-50%,-50%); }
.diagram-halo::before, .diagram-halo::after { content:''; position:absolute; inset:35px; border:1px solid #accfba1c; border-radius:50%; }
.diagram-halo::after { inset:-40px; border-style:dashed; }
.diagram-connections { position:absolute; inset:0; width:100%; height:100%; fill:none; stroke:#accfba38; stroke-width:1; }
.diagram-connections .diagram-packets { stroke:#bfdcc4; stroke-width:1.6; stroke-dasharray:5 110; opacity:.8; }
.diagram-core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:104px; height:104px; border:1px solid #9cbbac66; border-radius:20px; background:#1d3d49; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:10px; box-shadow:0 0 50px #a4c6a413; }
.diagram-core svg { width:32px; height:36px; stroke:#d9e7d8; stroke-width:1.3; }
.diagram-core > span { font-size:7px; letter-spacing:1.6px; }
.diagram-node { position:absolute; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; width:125px; height:70px; border:1px solid #8ba89738; background:#173441; border-radius:4px; font-size:7px; letter-spacing:1px; transition:background .35s,border-color .35s,color .35s,box-shadow .35s; }
.diagram-node-icon { font-size:22px; line-height:1; }
.node-compute { left:21.66%; top:23.75%; transform:translate(-50%,-50%); }
.node-models { left:78.33%; top:23.75%; transform:translate(-50%,-50%); }
.node-connect { left:21.66%; top:76.25%; transform:translate(-50%,-50%); }
.node-control { left:78.33%; top:76.25%; transform:translate(-50%,-50%); }
[data-active-layer="compute"] :is(.node-compute,.node-models), [data-active-layer="connect"] .node-connect, [data-active-layer="control"] .node-control { color:#e1eedc; background:#2b4c4c; border-color:#b2cfb8b3; box-shadow:0 0 28px #b2cfb812; }
.diagram-caption { position:absolute; bottom:16px; left:20px; font-size:7px; letter-spacing:1.4px; color:#87a89b; display:flex; align-items:center; gap:8px; }
.diagram-caption > span { width:4px; height:4px; background:#a5c4aa; border-radius:50%; }
.explorer-content { padding:32px 38px; min-width:0; }
.explorer-tabs { display:none; gap:0; margin-bottom:35px; border-bottom:1px solid #dce3da; }
.explorer-enhanced .explorer-tabs { display:flex; }
.explorer-tab { display:flex; align-items:center; gap:9px; flex:1; justify-content:center; border:0; background:transparent; padding:14px 5px; font-size:8px; color:#7e9182; cursor:pointer; border-bottom:2px solid transparent; margin-bottom:-1px; transition:color .2s,border-color .2s; }
.explorer-tab > span { font-size:12px; font-weight:500; }
.explorer-tab[aria-selected="true"] { border-bottom-color:#4e7964; color:#254d3b; }
.explorer-tab:hover { color:#254d3b; }
.explorer-panel[hidden] { display:none; }
.explorer-panel:not([hidden]) + .explorer-panel:not([hidden]) { border-top:1px solid #dce3da; padding-top:24px; margin-top:24px; }
.explorer-panel > .eyebrow { color:#688571; font-size:8px; letter-spacing:1.4px; margin-bottom:18px; }
.explorer-panel h3 { font-size:28px; font-weight:500; letter-spacing:-1px; line-height:1.2; margin-bottom:19px; color:#192d41; }
.corporate-home .explorer-panel p { font-size:12px; line-height:1.85; margin-bottom:18px; }
.explorer-panel ul { list-style:none; margin:0 0 25px; }
.explorer-panel li { position:relative; padding:5px 0 5px 17px; font-size:11px; color:#657b68; }
.explorer-panel li::before { content:''; position:absolute; left:0; top:12px; width:4px; height:4px; background:#709b7a; border-radius:50%; }
.explorer-panel .text-link { margin-top:20px; }
.motion-progress { position:fixed; left:0; top:0; width:100%; height:2px; background:#709480; z-index:1300; pointer-events:none; transform:scaleX(0); transform-origin:left; }
.motion-toggle { position:fixed; right:18px; bottom:18px; display:flex; align-items:center; gap:8px; padding:10px 13px; border:1px solid #d4dfd4; border-radius:30px; background:#fafbf9f5; color:#3f604d; font-size:10px; z-index:980; cursor:pointer; box-shadow:0 4px 18px #10243c0a; }
.motion-toggle[hidden] { display:none; }
.motion-toggle > span { font-size:11px; }
.motion-toggle:hover { border-color:#8da994; background:#fff; }
@media (hover:hover) and (pointer:fine) {
  .enterprise-site :is(.capability-card,.numbered-card,.pricing-card,.blog-card) { position:relative; isolation:isolate; overflow:hidden; transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .3s,box-shadow .3s; }
  .enterprise-site :is(.capability-card,.numbered-card,.pricing-card,.blog-card)::after { content:''; display:block; pointer-events:none; position:absolute; inset:0; z-index:-1; opacity:0; background:radial-gradient(300px circle at var(--pointer-x,50%) var(--pointer-y,50%),#c2d7ba44,transparent 75%); transition:opacity .4s; }
  .enterprise-site :is(.capability-card,.numbered-card,.pricing-card,.blog-card):hover::after { opacity:1; }
  .enterprise-site :is(.capability-card,.numbered-card,.pricing-card,.blog-card):hover { transform:translateY(-5px); border-color:#8aa68c; box-shadow:0 14px 30px #173b2409; }
  .enterprise-site :is(.enterprise-button,.btn) { overflow:hidden; position:relative; }
  .enterprise-site :is(.enterprise-button,.text-link,.hero-text-link,.card-link) > span[aria-hidden] { display:inline-block; transition:transform .3s; }
  .enterprise-site :is(.enterprise-button,.text-link,.hero-text-link):hover > span[aria-hidden], .capability-card:hover .card-link > span { transform:translate(3px,-3px); }
  .industry-links > a .round-arrow { transition:transform .3s,background .3s; }
  .industry-links > a:hover .round-arrow { transform:rotate(45deg); }
}
@media (prefers-reduced-motion:no-preference) {
  .motion-orbit { animation:orbit-turn 52s linear infinite; }
  .orbit-two { animation:orbit-turn-reverse 65s linear infinite; }
  .orbit-three { animation:orbit-turn 100s linear infinite; }
  .motion-cross { animation:cross-drift 12s ease-in-out infinite alternate; }
  .cross-two { animation-delay:-6s; }
  .motion-beam { animation:beam-drift 18s ease-in-out infinite alternate; }
  .hero-photograph { animation:photo-drift 28s ease-in-out infinite alternate; }
  .cta-orbit { animation:cta-drift 22s ease-in-out infinite alternate; }
  .hero-scroll > span { animation:scroll-cue 2.5s ease-in-out infinite; }
  .enterprise-hero .hero-eyebrow, .enterprise-hero h1, .enterprise-hero-description, .hero-buttons, .hero-footnote { animation:hero-arrival .9s cubic-bezier(.22,1,.36,1) both; }
  .enterprise-hero h1 { animation-delay:.08s; }
  .enterprise-hero-description { animation-delay:.16s; }
  .hero-buttons { animation-delay:.24s; }
  .hero-footnote { animation-delay:.32s; }
  .diagram-connections .diagram-packets { animation:packet-flow 7s linear infinite; }
  .diagram-halo::after { animation:orbit-turn 90s linear infinite; }
  .diagram-core svg { animation:core-float 6s ease-in-out infinite alternate; }
  .explorer-enhanced .explorer-panel:not([hidden]) { animation:panel-arrival .35s ease-out both; }
  .motion-ready .reveal-target { opacity:0; transform:translateY(22px); transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1); transition-delay:var(--reveal-delay,0ms); }
  .motion-ready .reveal-target.is-revealed { opacity:1; transform:translateY(0); }
  .motion-ready .reveal-target:focus-within { opacity:1; transform:none; }
}
/* Never hide content, move objects, or animate state changes in reduced motion. */
@media (prefers-reduced-motion:reduce) {
  .enterprise-site .reveal-target { opacity:1; transform:none; }
  .motion-toggle { display:none; }
}
.motion-paused .enterprise-site *, .motion-paused .enterprise-site *::before, .motion-paused .enterprise-site *::after { animation-play-state:paused !important; transition:none !important; }
.motion-paused .enterprise-site .reveal-target { opacity:1; transform:none; }
.motion-paused { scroll-behavior:auto; }
.motion-paused .enterprise-site .hero-inner > * { animation:none; }
[data-motion-visible="false"] *, [data-motion-visible="false"] *::before, [data-motion-visible="false"] *::after { animation-play-state:paused !important; }
@keyframes orbit-turn { from { transform:rotate(-24deg); } to { transform:rotate(336deg); } }
@keyframes orbit-turn-reverse { from { transform:rotate(34deg); } to { transform:rotate(-326deg); } }
@keyframes cross-drift { from { transform:translate(0,0); opacity:.4; } to { transform:translate(12px,-20px); opacity:.9; } }
@keyframes beam-drift { from { transform:translateX(-25px) rotate(25deg); opacity:.2; } to { transform:translateX(35px) rotate(25deg); opacity:.7; } }
@keyframes photo-drift { from { transform:scale(1.01); } to { transform:scale(1.065) translate(-.5%,.3%); } }
@keyframes cta-drift { from { transform:translate(0,0) rotate(-8deg); } to { transform:translate(-25px,15px) rotate(8deg); } }
@keyframes scroll-cue { 0%,100% { transform:translateY(0); } 50% { transform:translateY(5px); } }
@keyframes hero-arrival { from { opacity:0; transform:translateY(17px); } to { opacity:1; transform:translateY(0); } }
@keyframes packet-flow { to { stroke-dashoffset:-230; } }
@keyframes core-float { from { transform:translateY(0); } to { transform:translateY(-4px); } }
@keyframes panel-arrival { from { opacity:0; transform:translateY(7px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:1024px) { .explorer-content { padding:28px; } .diagram-node { width:105px; font-size:6px; } }
@media (max-width:767px) {
  .motion-orbit { width:300px; height:220px; right:-80px; top:20%; }
  .orbit-two { width:230px; height:300px; right:-50px; }
  .orbit-three { width:360px; height:360px; right:-110px; }
  .motion-scene { opacity:.35; }
  .cross-one { right:17%; }
  .explorer-layout { grid-template-columns:1fr; }
  .platform-diagram { min-height:330px; }
  .diagram-node { width:105px; height:65px; }
  .diagram-core { width:85px; height:85px; border-radius:15px; }
  .diagram-core > span { font-size:6px; }
  .diagram-halo { width:190px; height:190px; }
  .explorer-content { padding:24px; }
  .explorer-tabs { margin-bottom:26px; }
  .explorer-panel h3 { font-size:27px; }
  .motion-toggle { right:12px; bottom:12px; padding:9px 12px; font-size:9px; }
  .hero-photograph { animation:none; }
}
.motion-backgrounded *, .motion-backgrounded *::before, .motion-backgrounded *::after { animation-play-state:paused !important; }
/* Featured labels extend past the pricing card's top border. */
.enterprise-site .pricing-card { overflow:visible; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .motion-ready .enterprise-site :is(.capability-card,.numbered-card,.pricing-card,.blog-card).is-revealed:hover { transform:translateY(-5px); }
}
.motion-paused .enterprise-site :is(.capability-card,.numbered-card,.pricing-card,.blog-card):hover { transform:none; }
