/* Original production wordmark geometry and animation rules, restored 18 September 2026. */
.morph-logo{--ease:cubic-bezier(.76,0,.24,1);--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--ink:#191817;--field:#ffffff;--signal:#d95864;}
.morph-logo { position: relative; display: block; width: 360px; height: 58px; color: var(--ink); font: 500 25px/.9 "Helvetica Neue", Helvetica, Arial, sans-serif; letter-spacing: .015em; text-decoration: none; text-transform: uppercase; white-space: nowrap; perspective: 700px; }
.morph-logo .logo-word { position: absolute; display: inline-flex; align-items: baseline; z-index: 1; transform-origin: center; }
.morph-logo .logo-word b { font-weight: 500; }
.morph-logo .logo-word:first-child { right: calc(50% + 20px); top: 7px; transform-origin: right center; }
.morph-logo .logo-word:last-child { left: calc(50% + 20px); bottom: 7px; transform-origin: left center; }
.morph-logo .logo-word > span { display: inline-block; max-width: 145px; overflow: hidden; opacity: 1; transform: translateX(0); transition: max-width .55s var(--ease), opacity .3s ease, transform .55s var(--ease); }
.morph-logo i { position: absolute; z-index: 3; left: 50%; top: 2px; display: flex; width: 21px; height: 54px; align-items: center; justify-content: center; overflow: visible; color: var(--signal); font: 300 54px/.78 var(--sans); font-style: normal; opacity: 1; transform: translateX(-50%); }
.morph-logo.fx-collapse .logo-word > span { max-width: 0; opacity: 0; transform: translateX(14px); }
.morph-logo.fx-visual-stretch .logo-word:first-child > span { animation: logo-stretch var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-drop .logo-word:first-child { animation: logo-drop var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-scramble .logo-word:first-child { animation: logo-jitter var(--visual-effect-duration, 2.4s) steps(2,end); }
.morph-logo.fx-visual-slice .logo-word:first-child > span { animation: logo-slice var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-compress .logo-word:first-child { animation: logo-compress-left var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-lift .logo-word:first-child { animation: logo-lift var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-focus .logo-word:first-child { animation: logo-focus var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-pulse .logo-word:first-child { animation: logo-pulse var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-skew .logo-word:first-child { animation: logo-skew var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-visual-wipe .logo-word:first-child > span { animation: logo-wipe-left var(--visual-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-flip .logo-word:last-child { animation: logo-flip-x var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-invert .logo-word:last-child { animation: logo-invert var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-tighten .logo-word:last-child { animation: logo-tighten var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-scramble .logo-word:last-child { animation: logo-jitter var(--normality-effect-duration, 2.4s) steps(2,end); }
.morph-logo.fx-normality-split .logo-word:last-child > span { animation: logo-split var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-focus .logo-word:last-child { animation: logo-outline-focus var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-squeeze .logo-word:last-child { animation: logo-squeeze-y var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-tilt .logo-word:last-child { animation: logo-tilt var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-echo .logo-word:last-child { animation: logo-echo var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-normality-wipe .logo-word:last-child > span { animation: logo-wipe-right var(--normality-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-duo-relay-lift .logo-word:first-child { animation: logo-lift var(--duo-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-duo-relay-lift .logo-word:last-child { animation: logo-lift var(--duo-effect-duration, 2.4s) var(--ease) var(--duo-effect-delay, .5s); }
.morph-logo.fx-duo-relay-focus .logo-word:first-child { animation: logo-focus var(--duo-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-duo-relay-focus .logo-word:last-child { animation: logo-outline-focus var(--duo-effect-duration, 2.4s) var(--ease) var(--duo-effect-delay, .5s); }
.morph-logo.fx-duo-relay-compress .logo-word:first-child { animation: logo-compress-left var(--duo-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-duo-relay-compress .logo-word:last-child { animation: logo-squeeze-y var(--duo-effect-duration, 2.4s) var(--ease) var(--duo-effect-delay, .5s); }
.morph-logo.fx-duo-relay-slice .logo-word:first-child > span { animation: logo-slice var(--duo-effect-duration, 2.4s) var(--ease); }
.morph-logo.fx-duo-relay-slice .logo-word:last-child > span { animation: logo-split var(--duo-effect-duration, 2.4s) var(--ease) var(--duo-effect-delay, .5s); }
@keyframes logo-flip-x { 0%,100% { transform: rotateX(0); } 42%,62% { transform: rotateX(180deg); } }
@keyframes logo-invert { 0%,100% { color: var(--ink); background: transparent; padding: 0; } 38%,66% { color: var(--field); background: var(--ink); padding: 4px 7px; } }
@keyframes logo-stretch { 0%,100% { letter-spacing: .015em; } 45%,62% { letter-spacing: .28em; } }
@keyframes logo-drop { 0%,100% { transform: translateY(0); } 44%,63% { transform: translateY(24px); } }
@keyframes logo-jitter { 0%,100% { transform: translate(0); } 20% { transform: translate(-2px,1px); } 40% { transform: translate(2px,-1px); } 60% { transform: translate(-1px,-1px); } 80% { transform: translate(1px,1px); } }
@keyframes logo-slice { 0%,100% { clip-path: inset(0); transform: translateY(0); } 42%,62% { clip-path: polygon(0 0,100% 0,88% 48%,12% 58%); transform: translateY(-4px); } }
@keyframes logo-compress-left { 0%,100% { transform: scaleX(1); } 43%,64% { transform: scaleX(.58); } }
@keyframes logo-lift { 0%,100% { transform: translateY(0); } 42%,64% { transform: translateY(-17px); } }
@keyframes logo-focus { 0%,100% { filter: blur(0); opacity: 1; } 42%,64% { filter: blur(5px); opacity: .38; } }
@keyframes logo-pulse { 0%,100% { opacity: 1; } 38% { opacity: .18; } 55% { opacity: .82; } 68% { opacity: .32; } }
@keyframes logo-skew { 0%,100% { transform: skewX(0) translateX(0); } 42%,64% { transform: skewX(-15deg) translateX(-7px); } }
@keyframes logo-wipe-left { 0%,100% { clip-path: inset(0); } 43%,62% { clip-path: inset(0 100% 0 0); } }
@keyframes logo-tighten { 0%,100% { letter-spacing: .015em; } 42%,64% { letter-spacing: -.09em; } }
@keyframes logo-split { 0%,100% { clip-path: inset(0); transform: translateY(0); } 42%,64% { clip-path: polygon(8% 48%,92% 38%,100% 100%,0 100%); transform: translateY(4px); } }
@keyframes logo-outline-focus { 0%,100% { color: var(--ink); -webkit-text-stroke: 0 transparent; opacity: 1; } 42%,64% { color: transparent; -webkit-text-stroke: 1px var(--ink); opacity: .58; } }
@keyframes logo-squeeze-y { 0%,100% { transform: scaleY(1); } 42%,64% { transform: scaleY(.22); } }
@keyframes logo-tilt { 0%,100% { transform: rotate(0) translateY(0); } 42%,64% { transform: rotate(-7deg) translateY(-3px); } }
@keyframes logo-echo { 0%,100% { text-shadow: 0 0 transparent; } 42%,64% { text-shadow: 8px 0 rgba(25,24,23,.34), 16px 0 rgba(25,24,23,.14); } }
@keyframes logo-wipe-right { 0%,100% { clip-path: inset(0); } 43%,62% { clip-path: inset(0 0 0 100%); } }
@media(max-width:680px){
 .morph-logo{width:300px;height:50px;font-size:21px}
 .morph-logo .logo-word:first-child{right:calc(50% + 17px);top:5px}
 .morph-logo .logo-word:last-child{left:calc(50% + 17px);bottom:5px}
 .morph-logo i{top:1px;width:18px;height:47px;font-size:47px}
}
@media(prefers-reduced-motion:reduce){.morph-logo,.morph-logo *{animation:none!important;transition:none!important}}
