/* Kenshin's natural-history moth; sensing marks are a conceptual overlay. */
.km-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;border-top:1px solid #283329;padding:54px 0 62px}
.km-section>*{min-width:0}.km-figure{margin:0;position:relative}.km-art{position:relative;aspect-ratio:3/2;isolation:isolate}
.km-art img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.km-art svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.km-trace{fill:none;stroke:#d0e77b;stroke-width:.7;opacity:.2}.km-signal{fill:none;stroke:#e4f5a5;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:.085 .915;stroke-dashoffset:1;opacity:0;animation:km-travel 9s linear infinite;animation-delay:var(--delay,0s)}
.km-sensor{fill:#d0e77b;stroke:#f2f7d9;stroke-width:.6}.km-ring{fill:none;stroke:#d0e77b;stroke-width:.8;transform-box:fill-box;transform-origin:center;animation:km-sense 9s ease-out infinite;animation-delay:var(--delay,0s);opacity:.25}
.km-center{fill:#e2edb6;opacity:.9}.km-center-ring{fill:none;stroke:#d0e77b;stroke-width:.8;opacity:.35}
.km-figure .km-motion{display:block;margin:8px 0 0 auto;border:1px solid #34402e;background:transparent;color:#abb69f;font:11px -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-height:36px;padding:6px 12px;cursor:pointer;border-radius:20px}.km-motion:hover{color:#eee9dc;border-color:#87966c}.km-motion[hidden]{display:none}
.km-motion:focus-visible,.km-link:focus-visible{outline:2px solid #d0e77b;outline-offset:5px}
.km-caption{color:#87947e;font:10px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:.6px;text-align:center;margin:16px 0 0}
.km-copy .km-eyebrow{color:#b6c695;font:10px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;margin:0 0 18px}
.km-copy h2{font:400 clamp(30px,3.3vw,44px)/1.13 Georgia,"Times New Roman",serif;letter-spacing:-1px;color:#eee9dc;margin:0 0 22px}
.km-copy .km-body{font:14px/1.85 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#aab4a4;max-width:530px;margin:0 0 16px}
.km-copy .km-emphasis{font:400 21px/1.5 Georgia,"Times New Roman",serif;color:#d0e77b;max-width:510px;margin:24px 0 0}
.km-link{display:inline-flex;gap:28px;align-items:center;color:#eee9dc;text-decoration:none;font:12px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;border-bottom:1px solid #526044;padding:10px 0;margin-top:8px}.km-link:hover{color:#d0e77b}
.kg-connection.km-section{margin-top:54px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;padding-top:40px;padding-bottom:10px;scroll-margin-top:30px}
.km-figure .km-signal,.km-figure .km-ring{animation-play-state:paused}.km-figure.km-active:not(.km-paused) .km-signal,.km-figure.km-active:not(.km-paused) .km-ring{animation-play-state:running}
@keyframes km-travel{0%,15%{stroke-dashoffset:1;opacity:0}20%{opacity:.7}52%{stroke-dashoffset:0;opacity:.7}58%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes km-sense{0%,12%{transform:scale(.7);opacity:0}20%{opacity:.7}42%{transform:scale(1.8);opacity:0}100%{transform:scale(1.8);opacity:0}}
@media(max-width:800px){.km-section,.kg-connection.km-section{grid-template-columns:1fr;gap:24px;padding:34px 0 44px}.km-figure{width:100%;max-width:580px;justify-self:center}.km-copy{max-width:580px;justify-self:center;width:100%}.km-copy h2{font-size:34px}.km-copy .km-body{font-size:14px}.km-caption{font-size:10px}.km-copy .km-emphasis{font-size:21px}.km-figure .km-motion{min-height:44px}}
@media(prefers-reduced-motion:reduce){.km-signal,.km-ring{animation:none!important}.km-signal{display:none}.km-ring{opacity:.3}.km-motion{display:none!important}}
