/* Shared interaction rhythm: a 220ms rule, followed by a 280ms arrow drawing. */
:root{--motion-ease:cubic-bezier(.22,1,.36,1)}
.header nav>a,.menu-links>a,.footer-links a,#back-top,.menu-socials a{position:relative}
.header nav>a::after,.menu-links>a::after,.footer-links a::after,#back-top::after,.menu-socials a::after{
 content:"";position:absolute;left:0;right:0;bottom:0;height:1px;border:0;background:currentColor;
 transform:scaleX(0);transform-origin:left center;transition:transform 160ms var(--motion-ease);pointer-events:none;
}
.header nav>a::after{bottom:6px}
.header nav>a>span[aria-hidden="true"]{opacity:1}
.header nav>a .arrow-icon,.menu-links>a .arrow-icon{
 opacity:0;transition:opacity 130ms ease;
}
.header nav>a .arrow-icon path,.menu-links>a .arrow-icon path{
 stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 150ms var(--motion-ease);
}
.header nav>a:focus-visible::after,.menu-links>a:focus-visible::after,.footer-links a:focus-visible::after,#back-top:focus-visible::after,.menu-socials a:focus-visible::after{transform:scaleX(1);transition-duration:220ms}
.header nav>a:focus-visible .arrow-icon,.menu-links>a:focus-visible .arrow-icon{opacity:1;transition:opacity 60ms linear 220ms}
.header nav>a:focus-visible .arrow-icon path,.menu-links>a:focus-visible .arrow-icon path{stroke-dashoffset:0;transition:stroke-dashoffset 280ms var(--motion-ease) 220ms}
.footer-links a .arrow-icon path,.press-entry .arrow-icon path,.bio-back .arrow-icon path{stroke-dasharray:1;stroke-dashoffset:0}
.footer-links a:focus-visible .arrow-icon path,.press-entry a:focus-visible .arrow-icon path,.bio-back a:focus-visible .arrow-icon path{animation:arrow-trace 280ms var(--motion-ease) 220ms backwards}
.header nav>a,.footer-links a,#back-top,.menu-socials a,.menu-categories button,.press-filters button,.press-story h3,.press-arrow,.career-copy a{transition:color 200ms ease,border-color 200ms ease}
.contact-field input,.contact-field textarea,.press-search input{transition:border-color 220ms ease,box-shadow 220ms ease,background-color 220ms ease}
.contact-field input:focus,.contact-field textarea:focus{outline:none;box-shadow:inset 0 -1px var(--ink)}
.contact-submit button{transition:background-color 200ms ease,color 200ms ease,opacity 200ms ease,transform 160ms var(--motion-ease)}
.contact-submit button:active:not(:disabled){transform:scale(.97)}
.site-brand .myth-mark,.menu-trigger svg,.menu-close svg,#back-top>span,.press-story,.menu-category-count{transition:transform 260ms var(--motion-ease),opacity 200ms ease}
.menu-trigger:active svg,.menu-close:active svg{transform:scale(.9)}
.menu-categories button:active .menu-category-count{transform:translateX(-3px)}
.press-entry>a:focus-visible .press-story{transform:translateX(4px)}
.contact-page h1,.contact-field,.contact-submit,.press-intro,.press-tools,.press-list-heading{animation:quiet-enter 420ms var(--motion-ease) both}
.contact-field:nth-child(1){animation-delay:45ms}.contact-field:nth-child(2){animation-delay:90ms}.contact-field:nth-child(3){animation-delay:135ms}.contact-submit{animation-delay:180ms}
.press-tools{animation-delay:65ms}.press-list-heading{animation-delay:110ms}
@keyframes quiet-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes arrow-trace{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media(hover:hover) and (pointer:fine){
 .header nav>a:hover::after,.menu-links>a:hover::after,.footer-links a:hover::after,#back-top:hover::after,.menu-socials a:hover::after{transform:scaleX(1);transition-duration:220ms}
 .header nav>a:hover .arrow-icon,.menu-links>a:hover .arrow-icon{opacity:1;transition:opacity 60ms linear 220ms}
 .header nav>a:hover .arrow-icon path,.menu-links>a:hover .arrow-icon path{stroke-dashoffset:0;transition:stroke-dashoffset 280ms var(--motion-ease) 220ms}
 .footer-links a:hover .arrow-icon path,.press-entry a:hover .arrow-icon path,.bio-back a:hover .arrow-icon path{animation:arrow-trace 280ms var(--motion-ease) 220ms backwards}
 .footer-links a:hover>span{transform:none}
 .contact-submit button:hover:not(:disabled){background:var(--paper);color:var(--ink)}
 .contact-field input:hover,.contact-field textarea:hover,.press-search input:hover{border-color:var(--muted)}
 .contact-field input:focus,.contact-field textarea:focus,.press-search input:focus{border-color:var(--ink)}
 .press-entry>a:hover .press-story{transform:translateX(4px)}
 .menu-categories button:hover .menu-category-count{transform:translateX(-3px)}
 .menu-trigger:hover svg{transform:scale(1.06)}
 .menu-close:hover svg{transform:rotate(90deg)}
 #back-top:hover>span{display:inline-block;transform:translateY(-3px)}
}
@media(prefers-reduced-motion:reduce){
 .header nav>a,.header nav>a::after,.header nav>a .arrow-icon,.header nav>a .arrow-icon path,
 .menu-links>a::after,.menu-links>a .arrow-icon,.menu-links>a .arrow-icon path,
 .footer-links a,.footer-links a::after,.footer-links a .arrow-icon path,#back-top,#back-top::after,#back-top>span,
 .menu-socials a,.menu-socials a::after,.menu-categories button,.menu-category-count,
 .press-filters button,.press-story,.press-story h3,.press-arrow,.press-entry .arrow-icon path,.bio-back .arrow-icon path,.career-copy a,
 .contact-field input,.contact-field textarea,.press-search input,.contact-submit button,
 .site-brand .myth-mark,.menu-trigger svg,.menu-close svg,
 .contact-page h1,.contact-field,.contact-submit,.press-intro,.press-tools,.press-list-heading{animation:none!important;transition:none!important}
}

/* The original symbol unfolds into an outlined extrusion without moving the link. */
.symbol-morph-anchor{display:block;pointer-events:none}
.site-brand[data-symbol-morph] .myth-mark{overflow:visible;transform:none;transition:none}
.site-brand .symbol-wire{fill:none;stroke:currentColor;stroke-width:.85;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
