/* TUH Hypnotic Ambient Background v3 — site-wide soothing + cursor-reactive ambiance.
   Pairs with tuh-hypnotic-reactive.js. Nested orb/core so JS parallax (outer transform)
   never fights the CSS drift (inner animation). Design per DESIGN_SPEC: #09090f, gold
   #C9A84C, cyan #50D8F4, purple #C4B4FF. Transform/opacity only (GPU). Reduced-motion safe.
   Additive — remove the markup + this file + the JS to fully revert. */

/* layering: let the fixed aura show behind transparent body content */
html{background:#09090f !important;}
body{background:transparent !important;}
.tuh-su-grid{perspective:1100px;}

.tuh-aura-bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:transparent;}
.tuh-aura-bg__orb{position:absolute;will-change:transform;}                 /* JS sets parallax transform here */
.tuh-aura-bg__core{width:100%;height:100%;border-radius:50%;filter:blur(86px);opacity:.10;mix-blend-mode:screen;will-change:transform,opacity;} /* CSS drift+breathe here */
.tuh-aura-bg__orb.o-gold{width:44vw;height:44vw;left:-10vw;top:-8vw;}
.o-gold .tuh-aura-bg__core{background:radial-gradient(circle,#C9A84C 0%,rgba(201,168,76,0) 70%);animation:tuh-drift-a 56s ease-in-out infinite,tuh-breathe 14s ease-in-out infinite;}
.tuh-aura-bg__orb.o-cyan{width:38vw;height:38vw;right:-8vw;top:20vh;}
.o-cyan .tuh-aura-bg__core{background:radial-gradient(circle,#50D8F4 0%,rgba(80,216,244,0) 70%);animation:tuh-drift-b 70s ease-in-out infinite,tuh-breathe 17s ease-in-out infinite reverse;}
.tuh-aura-bg__orb.o-purple{width:50vw;height:50vw;left:26vw;bottom:-20vw;}
.o-purple .tuh-aura-bg__core{background:radial-gradient(circle,#C4B4FF 0%,rgba(196,180,255,0) 70%);animation:tuh-drift-c 84s ease-in-out infinite,tuh-breathe 20s ease-in-out infinite;}
.tuh-aura-bg::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(9,9,15,0) 28%,rgba(9,9,15,.82) 100%);}

/* cursor aura-glow (JS positions it) */
.tuh-aura-glow{position:fixed;top:0;left:0;width:480px;height:480px;z-index:-1;pointer-events:none;border-radius:50%;
  background:radial-gradient(circle,rgba(201,168,76,.10) 0%,rgba(80,216,244,.06) 35%,rgba(9,9,15,0) 70%);
  filter:blur(8px);transform:translate(-50%,-50%);will-change:transform;}

/* card: 3D lift + cursor spotlight + sheen + inner parallax (NO rotation tilt).
   Add .tuh-tilt to cards; wrap card content in .tuh-tilt__inner. Put perspective on the
   card's grid container (e.g. perspective:1100px) for the depth pop. */
.tuh-tilt{position:relative;transform-style:preserve-3d;will-change:transform;overflow:hidden;
  transition:transform .34s cubic-bezier(.2,.8,.2,1),box-shadow .34s,border-color .34s;}
.tuh-tilt:hover{transform:translateY(-9px) translateZ(28px) scale(1.018);
  box-shadow:0 22px 55px -14px rgba(201,168,76,.22),0 0 0 1px rgba(201,168,76,.16);border-color:rgba(201,168,76,.34);}
.tuh-tilt::before{content:'';position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .3s;pointer-events:none;
  background:radial-gradient(380px circle at var(--sx,50%) var(--sy,50%),rgba(255,255,255,.09),transparent 58%);}
.tuh-tilt::after{content:'';position:absolute;inset:-1px;border-radius:inherit;opacity:0;transition:opacity .3s;pointer-events:none;mix-blend-mode:screen;
  background:radial-gradient(240px circle at var(--sx,50%) var(--sy,50%),rgba(80,216,244,.20),transparent 60%);}
.tuh-tilt:hover::before,.tuh-tilt:hover::after{opacity:1;}
.tuh-tilt__inner{position:relative;z-index:1;transition:transform .22s ease;will-change:transform;}

/* magnetic CTA (add class .tuh-magnetic to gold CTA buttons) */
.tuh-magnetic{will-change:transform;}

@keyframes tuh-breathe{0%,100%{opacity:.06}50%{opacity:.12}}
@keyframes tuh-drift-a{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(4vw,3vh) scale(1.05)}66%{transform:translate(-2vw,5vh) scale(.98)}}
@keyframes tuh-drift-b{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-5vw,4vh) scale(1.06)}}
@keyframes tuh-drift-c{0%,100%{transform:translate(0,0) scale(1)}40%{transform:translate(3vw,-4vh) scale(1.04)}75%{transform:translate(-3vw,2vh) scale(.97)}}

@media (prefers-reduced-motion:reduce){
  .tuh-aura-bg__core{animation:none!important;}
  .tuh-aura-glow{display:none;}
  .tuh-tilt{transition:none;}
}
