/* The words keep their own space; the illustrations occupy a separate plane. */
.intro-glyph-word { isolation: isolate; cursor: text; outline: none; --glyph-x: 0; --glyph-y: 0; --glyph-color: var(--skill-light,var(--ink)); }
.intro-glyph-word[data-intro-glyph="mind"] { --glyph-color: var(--skill-character,var(--ink)); }
.intro-glyph-word[data-intro-glyph="artist"] { --glyph-color: var(--skill-fx,var(--ink)); }
.intro-glyph-word[data-intro-glyph="technical"] { --glyph-color: var(--skill-code,var(--ink)); }
.intro-glyph-word:focus-visible { outline: 1px solid var(--glyph-color); outline-offset: 7px; }
.intro-type-line > .intro-type-prefix { transition: transform .65s cubic-bezier(.2,.8,.2,1); }
.intro-type-line:has(> .intro-type-word[data-glyph-open="true"]) > .intro-type-prefix { transform: translateY(-.5em); }
.intro-glyph-word > .intro-type-face { transition: opacity .3s ease, filter .4s ease, transform .55s cubic-bezier(.2,.8,.2,1); }
.intro-glyph-word > .intro-type-echo { transition: opacity .35s ease; }
.intro-glyph-stage { position: absolute; inset: -4% -2% 1%; display: block; z-index: 3; color: var(--glyph-color); pointer-events: none; user-select: none !important; opacity: 0; visibility: hidden; translate: 0 .15em; transform: perspective(750px) translate3d(0,9px,0) rotateX(calc(var(--glyph-y) * -7deg)) rotateY(calc(var(--glyph-x) * 9deg)) scale(.86); transform-origin: 50% 50%; transition: opacity .4s ease, visibility .4s, transform .65s cubic-bezier(.2,.8,.2,1); }
.intro-glyph-stage svg { display: block; width: 100%; height: 100%; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.intro-glyph-word[data-glyph-open="true"] > .intro-type-face { opacity: 0; filter: blur(3px); transform: scale(.93); }
.intro-glyph-word[data-glyph-open="true"] > .intro-type-echo { opacity: 0; }
.intro-glyph-word[data-glyph-open="true"] > .intro-glyph-stage { opacity: 1; visibility: visible; transform: perspective(750px) translate3d(0,0,0) rotateX(calc(var(--glyph-y) * -7deg)) rotateY(calc(var(--glyph-x) * 9deg)) scale(1); }
/* Compact phrases retain their baseline and expand only their decorative plane. */
.intro-glyph-prefix { position: relative; display: inline-block; flex-shrink: 0; }
.intro-glyph-prefix > .intro-glyph-stage { inset: auto -6px -.12em; height: 3.5em; translate: none; }
.intro-glyph-prefix .intro-glyph-stage svg { stroke-width: 2.5; }
.intro-glyph-prefix[data-glyph-open="true"]::before { content: ""; position: absolute; inset: -2.5em -6px -.3em; }
.intro-glyph-prefix[data-glyph-selecting="true"]::before, .text-selection-active .intro-glyph-prefix::before { pointer-events: none; }
.intro-glyph-rear { opacity: .19; stroke-width: .8; transform: translate(calc(7px + var(--glyph-x) * -10px),calc(-7px + var(--glyph-y) * -8px)); }
.intro-glyph-front { transform: translate(calc(var(--glyph-x) * 3px),calc(var(--glyph-y) * 2px)); }
.intro-glyph-guides { opacity: .32; stroke-width: .7; }
.intro-eye-iris { transform: translate(calc(var(--glyph-x) * 12px),calc(var(--glyph-y) * 8px)); }
.intro-eye-pupil { fill: currentColor; stroke: none; }
.intro-eye-glint { fill: var(--bg); stroke: none; }
.intro-eye-detail { opacity: .6; stroke-width: .8; }
.intro-eye-blink { transform-box: view-box; transform-origin: 50% 50%; animation: intro-eye-blink 6.8s ease-in-out infinite; }
.intro-eye-drift { transform-box: view-box; transform-origin: 50% 50%; animation: intro-eye-breathe 7s ease-in-out infinite; }
.intro-brain-drift { transform-box: view-box; transform-origin: 50% 50%; animation: intro-brain-breathe 5.8s ease-in-out infinite; }
.intro-brain-detail { stroke-width: 1.2; opacity: .68; }
.intro-brain-signal { stroke-width: 2.2; stroke-dasharray: .12 .88; animation: intro-brain-signal 5s linear infinite; }
.intro-brain-signal-late { animation-delay: -2.5s; }
.intro-brain-node { fill: currentColor; stroke: none; opacity: .6; animation: intro-brain-node 3.4s ease-in-out infinite; }
.intro-brain-node:nth-child(2n) { animation-delay: -1.7s; }
.intro-camera-drift, .intro-board-drift { transform-box: view-box; transform-origin: 50% 50%; animation: intro-eye-breathe 7s ease-in-out infinite; }
.intro-camera-aperture { transform-box: view-box; transform-origin: 101px 83px; animation: intro-camera-focus 8s ease-in-out infinite; }
.intro-camera-glint { fill: currentColor; stroke: none; animation: intro-brain-node 4s ease-in-out infinite; }
.intro-paint-brush { transform-box: view-box; transform-origin: 0px 8px; animation: intro-brush-sweep 5s ease-in-out infinite; }
.intro-paint-stroke { stroke-width: 4; stroke-dasharray: 1; animation: intro-paint-flow 5s ease-in-out infinite; }
.intro-board-detail { opacity: .5; stroke-width: 1.8; }
.intro-board-signal { stroke-width: 3; stroke-dasharray: .16 .84; animation: intro-brain-signal 4.8s linear infinite; }
.intro-board-signal-late { animation-delay: -2.4s; }
.intro-chip-pulse { transform-box: view-box; transform-origin: 120px 80px; animation: intro-chip-pulse 4.8s ease-in-out infinite; }
.intro-board-node { fill: currentColor; stroke: none; animation: intro-brain-node 3.6s ease-in-out infinite; }
.intro-board-node:nth-child(2n) { animation-delay: -1.8s; }
.intro-glyph-word .intro-glyph-stage * { animation-play-state: paused !important; }
html:not(.motion-paused):not(.text-selection-active) .intro-person.is-ambient .intro-glyph-word[data-glyph-open="true"][data-glyph-visible="true"]:not([data-glyph-selecting="true"]) .intro-glyph-stage * { animation-play-state: var(--life-state,paused) !important; }
.motion-paused .intro-glyph-word .intro-glyph-stage *, .text-selection-active .intro-glyph-word .intro-glyph-stage *, .intro-glyph-word[data-glyph-selecting="true"] .intro-glyph-stage * { animation-play-state: paused !important; }
.motion-paused .intro-glyph-word > *, .text-selection-active .intro-glyph-word > * { transition: none; }
.motion-paused .intro-type-line > .intro-type-prefix { transition: none; }
/* Restore the actual heading before a native selection begins. */
.intro-type-line:has(.intro-glyph-word[data-glyph-selecting="true"]) > .intro-type-prefix, .text-selection-active .intro-type-line > .intro-type-prefix { transform: none; transition: none; }
.intro-glyph-word[data-glyph-selecting="true"] > .intro-type-face, .text-selection-active .intro-glyph-word > .intro-type-face { opacity: 1; filter: none; transform: none; transition: none; }
.intro-glyph-word[data-glyph-selecting="true"] > .intro-type-echo, .text-selection-active .intro-glyph-word > .intro-type-echo { opacity: .28; transition: none; }
.intro-glyph-word[data-glyph-selecting="true"] > .intro-glyph-stage, .text-selection-active .intro-glyph-word > .intro-glyph-stage { opacity: 0; visibility: hidden; transition: none; }
@keyframes intro-eye-blink { 0%,42%,46%,93%,97%,100% { transform: scaleY(1); } 44%,95% { transform: scaleY(.07); } }
@keyframes intro-eye-breathe { 0%,100% { transform: translateY(1px); } 50% { transform: translateY(-1.5px); } }
@keyframes intro-brain-breathe { 0%,100% { transform: translateY(1px) scale(.985); } 50% { transform: translateY(-1.5px) scale(1.015); } }
@keyframes intro-brain-signal { to { stroke-dashoffset: -1; } }
@keyframes intro-brain-node { 0%,100% { opacity: .35; } 50% { opacity: .95; } }
@keyframes intro-camera-focus { 0%,100% { transform: rotate(-12deg) scale(.92); } 50% { transform: rotate(18deg) scale(1); } }
@keyframes intro-brush-sweep { 0%,100% { transform: rotate(-4deg) translateY(1px); } 50% { transform: rotate(5deg) translateY(-2px); } }
@keyframes intro-paint-flow { 0%,100% { stroke-dashoffset: .65; opacity: .4; } 55%,75% { stroke-dashoffset: 0; opacity: .9; } }
@keyframes intro-chip-pulse { 0%,100% { transform: scale(.96); opacity: .68; } 50% { transform: scale(1.03); opacity: 1; } }
@media print {
  .intro-type-line > .intro-type-prefix { transform: none !important; }
  .intro-glyph-word > .intro-glyph-stage { display: none; }
  .intro-glyph-word > .intro-type-face { opacity: 1 !important; filter: none !important; transform: none !important; }
}
