/* Public release additions: form delivery, consent and status states. */
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-consent{align-items:flex-start;gap:10px;color:var(--muted);font-size:12px;line-height:1.45;display:flex}
.form-consent input{accent-color:var(--accent);width:17px;height:17px;margin-top:2px;flex:none}
.form-consent a{color:var(--accent-dark);text-decoration:underline;text-underline-offset:2px}
.audit-form button[disabled]{cursor:wait;opacity:.7}
.audit-form .form-status{min-height:2.8em}
.audit-form label>span em{color:#a39eb2;font-size:.9em;font-style:normal;font-weight:500}

/* Pointer parallax is deliberately limited to precise desktop pointers.
   Touch and reduced-motion visitors retain the stable composition. */
@media (hover:hover) and (pointer:fine){
  .about-v3-scene{will-change:transform;transition:transform .18s ease-out}
  .about-v3-object,.about-v3-portrait{will-change:transform;transition:transform .18s ease-out}
}

/* Milena's motion language is part of the public art direction, including
   browsers that expose an overly broad reduced-motion preference. */
html.milena-motion-immersive .service-marquee-track{
  width:max-content!important;
  animation:marquee 48s linear infinite!important;
}
html.milena-motion-immersive .service-marquee-track span:nth-child(2){display:inline!important}
html.milena-motion-immersive .hero-panel>.violet-field{
  top:6%;left:12%;
  animation:violet-drift 12s ease-in-out infinite alternate!important;
}
html.milena-motion-immersive .about-v3-scene{
  transform:perspective(1450px) rotateX(var(--about-rotate-x)) rotateY(var(--about-rotate-y))!important;
  transition:transform .18s ease-out!important;
}
html.milena-motion-immersive .about-v3-laptop{transform:translate3d(var(--about-far-x),var(--about-far-y),-36px) rotate(-1.5deg)!important}
html.milena-motion-immersive .about-v3-marketplace{transform:translate3d(var(--about-mid-x),var(--about-mid-y),10px) rotate(2deg)!important}
html.milena-motion-immersive .about-v3-language{transform:translate3d(var(--about-far-x),var(--about-far-y),-24px) rotate(3deg)!important}
html.milena-motion-immersive .about-v3-ai{transform:translate3d(var(--about-near-x),var(--about-near-y),112px) rotate(-4.5deg)!important}
html.milena-motion-immersive .about-v3-portrait{transform:translate3d(var(--about-portrait-x),var(--about-portrait-y),78px)!important}
html.milena-motion-immersive .about-v3-object,.milena-motion-immersive .about-v3-portrait{transition:transform .18s ease-out!important}
html.milena-motion-immersive .about-v3-object img{
  animation-name:about-v3-float!important;
  animation-duration:4.8s!important;
  animation-timing-function:ease-in-out!important;
  animation-iteration-count:infinite!important;
  animation-fill-mode:both!important;
}
html.milena-motion-immersive .about-v3-stars i,
html.milena-motion-immersive .site-star-field i{
  animation-name:site-star-twinkle!important;
  animation-duration:4.5s!important;
  animation-timing-function:ease-in-out!important;
  animation-iteration-count:infinite!important;
}
html.milena-motion-immersive.motion-ready [data-reveal]{
  opacity:0!important;
  transform:translateY(22px)!important;
  transition:opacity .68s ease,transform .82s cubic-bezier(.16,1,.3,1)!important;
}
html.milena-motion-immersive.motion-ready [data-reveal].is-visible{
  opacity:1!important;
  transform:none!important;
}
html.milena-motion-immersive .case-card:before,
html.milena-motion-immersive .format-card:before,
html.milena-motion-immersive .work-card:before{transition:opacity .42s ease!important}

/* The hero receives the same calm, dimensional cursor response as «Обо мне». */
html.milena-motion-immersive .hero-panel{
  --hero-title-x:0px;--hero-title-y:0px;--hero-side-x:0px;--hero-side-y:0px;
  --hero-light-x:50%;--hero-light-y:50%;
}
html.milena-motion-immersive .hero-panel:after{
  z-index:1;content:"";opacity:0;pointer-events:none;
  background:radial-gradient(390px circle at var(--hero-light-x) var(--hero-light-y),#9a83ff20,transparent 68%);
  transition:opacity .38s ease!important;position:absolute;inset:0;
}
html.milena-motion-immersive .hero-panel.is-pointer-active:after{opacity:1}
html.milena-motion-immersive .hero-panel .hero-grid,
html.milena-motion-immersive .hero-panel .service-marquee{z-index:2;position:relative}
html.milena-motion-immersive .hero-panel .hero-title{
  transform:translate3d(var(--hero-title-x),calc(var(--hero-title-y) - (var(--hero-progress,0) * 22px)),0) scale(calc(1 - var(--hero-progress,0) * .05))!important;
  transition:transform .32s cubic-bezier(.16,1,.3,1),opacity .32s ease!important;
}
html.milena-motion-immersive .hero-panel .hero-side{
  transform:translate3d(var(--hero-side-x),calc(var(--hero-side-y) + (var(--hero-progress,0) * 24px)),0)!important;
  transition:transform .32s cubic-bezier(.16,1,.3,1),opacity .32s ease!important;
}
