/* A single connected portrait; fallback motion also keeps the drawing intact. */
.team-hero .lead-portrait { position:absolute; inset:0; z-index:1; width:100%; height:100%; overflow:visible; pointer-events:none; }
.lead-figure { transform-origin:660px 790px; animation:lead-breathe 8s ease-in-out infinite alternate paused; }
.lead-warp-surface { opacity:0; pointer-events:none; }
.lead-warp-canvas { display:block; width:100%; height:100%; }
.lead-warp-ready .lead-warp-surface { opacity:1; }
.lead-warp-ready .lead-figure { opacity:0; animation:none!important; }
.lead-blink { opacity:0; animation:lead-blink 7.4s -3s linear infinite paused; }
.lead-jewel { fill:#efd1a8; opacity:.15; animation:lead-jewel-glint 6s -1s ease-in-out infinite paused; }
.lead-halo { fill:none; stroke:#d5b092; stroke-width:1; opacity:.5; }
.lead-halo-trace { stroke-dasharray:1600; stroke-dashoffset:calc(1600 - var(--lead-scroll,0) * 1600); }
.lead-active .lead-figure,.lead-active .lead-blink,.lead-active .lead-jewel { animation-play-state:running; }
.lead-awake .lead-scene-enter { animation:lead-wake 2400ms var(--moon-ease) both; }
.lead-reacting .lead-figure { animation:lead-whole-answer 3200ms var(--moon-ease) both; }
.lead-reacting .lead-blink { animation:lead-answer-blink 3200ms linear both; }
.lead-light { fill:url('#lead-moonlight'); opacity:0; }
.lead-reacting .lead-light { animation:lead-light-bloom 3200ms ease-in-out both; }
.lead-feathers { fill:#c7a2b7; stroke:#ead0bc; stroke-width:1; opacity:0; }
.lead-reacting .lead-feathers { animation:lead-feather-flight 3200ms var(--moon-ease) both; transform-origin:392px 607px; }
.lead-reacting .lead-jewel { animation:lead-jewel-glint 1700ms ease-in-out both; }
.team-hero .lead-react { position:absolute; z-index:1; inset:120px 3% 70px 52%; border:0; padding:0; margin:0; background:transparent; border-radius:48% 48% 5px 5px; cursor:pointer; touch-action:pan-y pinch-zoom; -webkit-tap-highlight-color:transparent; }
.lead-react[hidden] { display:none!important; }
.lead-react:focus-visible { outline:1px solid #d8bba0; outline-offset:5px; }
.lead-hint { position:absolute; left:4%; bottom:7%; display:flex; align-items:center; gap:9px; max-width:90%; padding:11px 15px; color:#ead4bd; border:1px solid #c3a28c77; border-radius:30px; background:#241622e8; font:10px/1.4 var(--body); text-align:left; transition:background 300ms; }
.lead-hint svg { width:26px; height:26px; flex-shrink:0; fill:none; stroke:#e6c8a6; stroke-width:1.4; }
.lead-react:hover .lead-hint { background:#4a2a3c; }
.lead-hint-touch { display:none; }
.lead-response { position:absolute; width:1px; height:1px; clip-path:inset(50%); overflow:hidden; white-space:nowrap; }
@keyframes lead-whole-answer { 0%,100% { rotate:0deg; translate:0 0; } 25%,50% { rotate:-.7deg; translate:0 3px; } 75% { rotate:.15deg; } }
@keyframes lead-breathe { from { translate:0 0; } to { translate:0 -3px; } }
@keyframes lead-blink { 0%,87%,100% { opacity:0; } 90%,93% { opacity:1; } }
@keyframes lead-jewel-glint { 0%,100% { opacity:.1; } 45%,65% { opacity:.9; } }
@keyframes lead-wake { from { opacity:.35; translate:0 14px; } to { opacity:1; translate:0 0; } }
@keyframes lead-answer-blink { 0%,14%,38%,100% { opacity:0; } 20%,30% { opacity:1; } }
@keyframes lead-light-bloom { 0%,100% { opacity:0; } 30%,65% { opacity:.55; } }
@keyframes lead-feather-flight { 0% { opacity:0; translate:0 10px; rotate:-15deg; } 18%,55% { opacity:.75; } 100% { opacity:0; translate:90px -185px; rotate:35deg; } }
@media(max-width:720px) {
  .mms-art-page .hero.team-hero.owner-solo-hero .hero-content { padding-top:410px; }
  .team-hero .lead-react { inset:95px 16px auto; height:280px; max-width:350px; margin-inline:auto; }
  .lead-hint { left:50%; bottom:5px; translate:-50% 0; max-width:100%; width:max-content; padding:8px 12px; font-size:9px; }
  .lead-hint svg { width:20px; height:20px; }
  .lead-hint-desktop { display:none; }
  .lead-hint-touch { display:inline; }
}
@media(hover:none),(pointer:coarse) { .lead-hint-desktop { display:none; } .lead-hint-touch { display:inline; } }
html.motion-hidden .lead-portrait *,html.intro-open .lead-portrait * { animation-play-state:paused!important; }
html.motion-paused .lead-portrait * { animation:none!important; transition:none!important; }
html.motion-paused .lead-react { display:none; }
html.motion-paused .lead-halo-trace { stroke-dashoffset:0; }
@media(prefers-reduced-motion:reduce) { .lead-portrait * { animation:none!important; transition:none!important; } .lead-react { display:none; } .lead-halo-trace { stroke-dashoffset:0; } }
