/* OC-SCN-064 r02. The ground and main objects are static; only one ribbon and
   three conversation dots receive a brief, restrained accent per 20s cycle. */
.gpt-hero-art .gpt-screen-layer{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.gpt-hero-art .gpt-platform-logo{position:absolute;left:81.4%;top:27.2%;width:6.4%;height:auto;border-radius:21%;transform:rotate(9deg)}
.gpt-ribbon-light{opacity:0;stroke-dasharray:.13 1.3;stroke-dashoffset:.2;animation:gpt-context-pass 20s ease-in-out infinite;animation-play-state:paused}
.gpt-dot{opacity:0;animation:gpt-conversation-dot 20s ease-in-out infinite;animation-play-state:paused}
.gpt-dot-b{animation-delay:.3s}.gpt-dot-c{animation-delay:.6s}
.gpt-hero-art.is-running .gpt-ribbon-light,.gpt-hero-art.is-running .gpt-dot{animation-play-state:running}
@keyframes gpt-context-pass{0%,5%{opacity:0;stroke-dashoffset:.2}8%{opacity:.28}17%{opacity:.2;stroke-dashoffset:-1}20%,100%{opacity:0;stroke-dashoffset:-1}}
@keyframes gpt-conversation-dot{0%,18%,34%,100%{opacity:0}23%{opacity:.28}28%{opacity:0}}
@media(prefers-reduced-motion:reduce){.gpt-ribbon-light,.gpt-dot{animation:none;opacity:0}}
