/* Text-free official Arbortext mark on the shared transparent hero.
 * Geometry and palette stay intact; one gentle pulse and quiet traces loop. */
.arbortext-page .at-hero-graphic{background:transparent;border:0;box-shadow:none;overflow:visible}
.arbortext-page .at-hero-graphic:before,.arbortext-page .at-hero-graphic:after{display:none}
.at-hero-graphic .at-publication-graphic{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}
.at-hero-graphic .atl-mark{transform-box:fill-box;transform-origin:center;animation:atLogoPulse 16s ease-in-out infinite;animation-play-state:paused}
.at-hero-graphic .atl-trace{stroke-dasharray:14 86;stroke-dashoffset:100;opacity:.65;animation:atLogoTrace 16s linear infinite;animation-play-state:paused}
.at-hero-graphic .atl-trace-middle{animation-delay:-5.333333s}
.at-hero-graphic .atl-trace-lower{animation-delay:-10.666667s}
.at-hero-graphic.ip-animation-active :is(.atl-mark,.atl-trace){animation-play-state:running}
@keyframes atLogoPulse{0%,100%{transform:scale(1);filter:drop-shadow(0 0 3px rgba(88,201,191,.06))}25%,45%{transform:scale(1.025);filter:drop-shadow(0 0 16px rgba(88,201,191,.2))}70%{transform:scale(1);filter:drop-shadow(0 0 3px rgba(88,201,191,.06))}}
@keyframes atLogoTrace{0%{stroke-dashoffset:100;opacity:0}18%,65%{opacity:.75}100%{stroke-dashoffset:0;opacity:0}}
@media(prefers-reduced-motion:reduce){
 .at-hero-graphic .atl-mark{animation:none;transform:none;filter:none}
 .at-hero-graphic .atl-trace{animation:none;opacity:0}
}
