/* MadAI Systems v37 — visible but disciplined motion layer */
:root{--live-x:50vw;--live-y:36vh;--live-energy:.55}
html.madai-live body{position:relative}
html.madai-live main,html.madai-live .site-footer{position:relative;z-index:1}
.madai-live-ambient{position:fixed;inset:-16vmax;z-index:0;pointer-events:none;overflow:hidden;opacity:.9;filter:saturate(115%)}
.madai-live-ambient::before,.madai-live-ambient::after{content:"";position:absolute;width:58vmax;height:58vmax;border-radius:50%;filter:blur(28px);will-change:transform,opacity}
.madai-live-ambient::before{left:6%;top:3%;background:radial-gradient(circle,rgba(66,177,255,.13),rgba(38,88,150,.045) 37%,transparent 69%);animation:madaiAuroraA 18s ease-in-out infinite alternate}
.madai-live-ambient::after{right:0;bottom:2%;background:radial-gradient(circle,rgba(126,216,255,.11),rgba(70,108,214,.035) 42%,transparent 70%);animation:madaiAuroraB 23s ease-in-out infinite alternate}
@keyframes madaiAuroraA{0%{transform:translate3d(-3%,-2%,0) scale(.9)}45%{transform:translate3d(8%,5%,0) scale(1.08)}100%{transform:translate3d(1%,11%,0) scale(.96)}}
@keyframes madaiAuroraB{0%{transform:translate3d(4%,4%,0) scale(1.02)}55%{transform:translate3d(-9%,-8%,0) scale(.9)}100%{transform:translate3d(-2%,4%,0) scale(1.12)}}
.madai-live-glow{position:fixed;left:0;top:0;width:min(46vw,520px);height:min(46vw,520px);margin:calc(min(46vw,520px)/-2) 0 0 calc(min(46vw,520px)/-2);z-index:0;border-radius:50%;pointer-events:none;opacity:.36;background:radial-gradient(circle,rgba(142,216,255,.16) 0,rgba(142,216,255,.055) 34%,transparent 70%);filter:blur(2px);mix-blend-mode:screen;will-change:transform,opacity;transform:translate3d(-1000px,-1000px,0);transition:opacity .35s ease}
.madai-live-glow.is-touch{width:280px;height:280px;margin:-140px 0 0 -140px;opacity:.52}
.madai-scroll-progress{position:fixed;z-index:2000;left:0;top:0;height:2px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#8ed8ff,#c8eeff 62%,#b7ff7a);box-shadow:0 0 18px rgba(142,216,255,.48);pointer-events:none;will-change:transform}
.madai-pointer-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:1500;pointer-events:none}
.madai-touch-ripple{position:fixed;z-index:1499;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;border:1px solid rgba(200,238,255,.62);box-shadow:0 0 36px rgba(142,216,255,.25),inset 0 0 18px rgba(142,216,255,.12);pointer-events:none;animation:madaiRipple .72s cubic-bezier(.16,1,.3,1) forwards}
@keyframes madaiRipple{0%{transform:scale(.35);opacity:.92}100%{transform:scale(6.4);opacity:0}}

/* Homepage: make the field visibly alive. */
.hero-stage{perspective:1100px;transform-style:preserve-3d;touch-action:pan-y;isolation:isolate}
.hero-stage::before{content:"";position:absolute;inset:7%;z-index:1;border-radius:50%;pointer-events:none;background:radial-gradient(circle at var(--stage-x,50%) var(--stage-y,50%),rgba(142,216,255,.10),transparent 38%);filter:blur(4px);opacity:.8;transition:opacity .25s ease}
.stage-core{--core-rx:0deg;--core-ry:0deg;transform:translate(-50%,-50%) rotateX(var(--core-rx)) rotateY(var(--core-ry));transition:transform .18s ease-out,box-shadow .22s ease;will-change:transform}
.hero-stage.is-engaged .stage-core{box-shadow:0 0 115px rgba(74,178,237,.24),0 0 38px rgba(183,255,122,.07),inset 0 0 64px rgba(148,223,255,.11)}
.stage-core::after{animation-duration:17s!important;box-shadow:0 0 34px rgba(142,216,255,.06)}
.stage-core::before{animation-duration:4.6s!important}
.stage-core small{animation:madaiPulseText 3.2s ease-in-out infinite}
@keyframes madaiPulseText{50%{opacity:.58;text-shadow:0 0 18px rgba(142,216,255,.7)}}
.stage-node{will-change:transform,box-shadow,border-color;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}
.stage-node.n1{animation:madaiNode1 5.9s ease-in-out infinite}
.stage-node.n2{animation:madaiNode2 6.7s ease-in-out infinite .6s}
.stage-node.n3{animation:madaiNode1 7.3s ease-in-out infinite 1.1s}
.stage-node.n4{animation:madaiNode2 6.1s ease-in-out infinite 1.7s}
@keyframes madaiNode1{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(7px,-9px,0)}}
@keyframes madaiNode2{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-8px,8px,0)}}
.hero-stage.is-engaged .stage-node{border-color:rgba(142,216,255,.55);box-shadow:-12px 0 30px rgba(142,216,255,.055);background:linear-gradient(90deg,rgba(11,29,43,.84),rgba(7,15,23,.06))}
.stage-interaction-hint{position:absolute;z-index:5;left:50%;bottom:7%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(142,216,255,.14);border-radius:999px;background:rgba(5,12,18,.5);backdrop-filter:blur(8px);color:rgba(200,238,255,.55);font:650 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;pointer-events:none}
.stage-interaction-hint::before{content:"";width:5px;height:5px;border-radius:50%;background:#b7ff7a;box-shadow:0 0 12px rgba(183,255,122,.65);animation:madaiHint 1.6s ease-in-out infinite}
@keyframes madaiHint{50%{transform:scale(1.7);opacity:.45}}
.scroll-cue{animation:madaiScrollCue 2.1s ease-in-out infinite}
@keyframes madaiScrollCue{50%{transform:translate(-50%,7px);opacity:.55}}

/* Reveal choreography is intentionally stronger than v36. */
html.madai-live .reveal:not(.is-visible){opacity:0;transform:translate3d(0,34px,0) scale(.988);filter:blur(4px)}
html.madai-live .reveal{transition:opacity .92s cubic-bezier(.16,1,.3,1),transform .92s cubic-bezier(.16,1,.3,1),filter .7s ease;transition-delay:var(--reveal-delay,0ms)}
html.madai-live .reveal.is-visible{opacity:1;transform:none;filter:none}

/* Cards react to mouse and touch without changing layout. */
.madai-live-card{--rx:0deg;--ry:0deg;--mx:50%;--my:50%;position:relative;transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateZ(0);transform-style:preserve-3d;will-change:transform;transition:transform .32s cubic-bezier(.16,1,.3,1),border-color .25s ease,box-shadow .25s ease,background .25s ease}
.madai-live-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(340px circle at var(--mx) var(--my),rgba(142,216,255,.105),transparent 58%);transition:opacity .24s ease}
.madai-live-card.is-live-hover::after,.madai-live-card.is-live-touch::after{opacity:1}
.madai-live-card.is-live-hover,.madai-live-card.is-live-touch{border-color:rgba(142,216,255,.28)!important;box-shadow:0 20px 60px rgba(0,0,0,.18),0 0 34px rgba(142,216,255,.035)}
.madai-magnetic{will-change:transform;transition:transform .28s cubic-bezier(.16,1,.3,1)}

/* Light motion for inner/static pages too. */
body:not(:has(#knowledge-field)) .site-header{transition:background .25s ease,border-color .25s ease,transform .25s ease}
body:not(:has(#knowledge-field)) main{position:relative;z-index:1}
body:not(:has(#knowledge-field)) .hero::after,body:not(:has(#knowledge-field)) .pricing-hero::after{content:"";position:absolute;width:460px;height:460px;right:-140px;top:40px;border-radius:50%;background:radial-gradient(circle,rgba(142,216,255,.10),transparent 68%);filter:blur(4px);pointer-events:none;animation:madaiSubpageGlow 8s ease-in-out infinite alternate}
@keyframes madaiSubpageGlow{to{transform:translate3d(-42px,31px,0) scale(1.12);opacity:.6}}

@media(max-width:720px){
 .madai-live-ambient{opacity:.72}.madai-live-glow{width:280px;height:280px;margin:-140px 0 0 -140px;opacity:.26}.stage-interaction-hint{bottom:4%;font-size:7px}.stage-node.n1,.stage-node.n2,.stage-node.n3,.stage-node.n4{animation-duration:7s}
}
@media(pointer:coarse){.madai-pointer-canvas{display:none}.madai-live-card{transform:none!important}.madai-magnetic{transform:none!important}}
@media(prefers-reduced-motion:reduce){
 .madai-live-ambient::before,.madai-live-ambient::after,.stage-node,.stage-core::before,.stage-core::after,.stage-core small,.scroll-cue,.stage-interaction-hint::before,body:not(:has(#knowledge-field)) .hero::after,body:not(:has(#knowledge-field)) .pricing-hero::after{animation:none!important}
 .madai-pointer-canvas,.madai-live-glow{display:none!important}.madai-live-card{transform:none!important}.reveal{filter:none!important}
}
html.madai-live .madai-cursor-constellation{display:none!important}
