/* 발표용 보정: 한 장씩 멈추고, 멀리서도 읽히는 밀도 */
.slide { scroll-snap-stop: always; }
.slide::after { content: attr(data-slide) " / 12"; position: absolute; top: 32px; right: 7.4vw; font-size: 12px; font-weight: 500; letter-spacing: .08em; color: #787671; z-index: 10; }
.dark::after { color: #a4a097; }
.incident, .goals, .traits, .test-info { background: #fafaf9; }
.incident .incident-title h1, .goals h1, .traits-title h1 { font-size: clamp(56px, 6vw, 88px); }
.incident-title > p:last-child, .goals-hint, .traits-title > p:last-child,
.statement-sub, .definition-chip, .binary { display: none; }
.risk-strip { justify-content: center; }
.risk-strip > article { width: min(260px, 27vw); padding: 18px 22px; }
.risk-strip b { font-size: 16px; }
.risk-strip small { font-size: 13px; line-height: 1.45; margin-left: 0; }
.trait-grid { margin-left: 33%; gap: 22px; }
.traits-title { width: 460px; }
.traits-title h1 { white-space: nowrap; }
.trait { min-height: 240px; padding: 32px; }
.trait h2 { font-size: 34px; }
.trait p { font-size: 18px; line-height: 1.55; max-width: 470px; }
.trait i { font-size: 36px; }
.test-info { color: #1a1a1a; }
.test-info .test-heading h1 { font-size: clamp(52px, 5vw, 78px); }
.test-flow { max-width: 1180px; margin-top: 70px; }
.test-flow .avatar { width: 135px; height: 135px; font-size: 52px; }
.test-flow .screen { width: 300px; padding: 42px; }
.test-flow .screen b { font-size: 62px; color: #5645d4; }
.test-flow .line { font-size: 54px; color: #5645d4; }
.turing-person { background: #0a1530; }
.turing-title { background: #fde0ec; }
.incident { display: grid; place-items: center; background: #fafaf9; }
.chat-scene { width: min(1000px, 82vw); display: grid; gap: 38px; }
.chat-person { display: flex; align-items: flex-start; gap: 18px; }
.chat-person > div:last-child { max-width: 720px; }
.chat-person b { display: block; margin: 0 0 10px; font-size: 18px; }
.chat-person p { margin: 0; padding: 28px 34px; border-radius: 14px; font-size: clamp(24px, 2.7vw, 40px); font-weight: 600; letter-spacing: -.05em; line-height: 1.3; }
.chat-avatar { flex: 0 0 58px; width: 58px; height: 58px; border-radius: 50%; display: grid; place-items: center; font-size: 17px; font-weight: 700; }
.manager { justify-self: start; }
.manager .chat-avatar { background: #dcecfa; color: #0075de; }
.manager p { background: #fff; border: 1px solid #e5e3df; }
.claude { justify-self: end; flex-direction: row-reverse; text-align: right; }
.claude .chat-avatar { background: #e6e0f5; color: #5645d4; }
.claude p { background: #5645d4; color: #fff; }
.test-info { display: grid; align-content: center; }
.test-rules { width: min(980px, 82vw); margin: 52px auto 0; padding: 0; display: grid; gap: 12px; list-style: none; counter-reset: test-rule; }
.test-rules li { counter-increment: test-rule; min-height: 74px; display: flex; align-items: center; gap: 26px; padding: 18px 30px; background: #fff; border: 1px solid #e5e3df; border-radius: 10px; font-size: clamp(19px, 1.75vw, 27px); color: #1a1a1a; letter-spacing: -.035em; }
.test-rules li::before { content: counter(test-rule, decimal-leading-zero); flex: 0 0 48px; color: #5645d4; font-size: 16px; font-weight: 700; }
@media (max-width: 800px) {
  .trait-grid { margin-left: 0; gap: 12px; }
  .traits-title { width: auto; }
  .trait { min-height: 190px; padding: 18px; }
  .trait h2 { font-size: 24px; }
  .trait p { font-size: 13px; }
  .risk-strip > article { width: 31%; padding: 10px; }
  .risk-strip small { font-size: 10px; }
  .chat-scene { width: 90vw; gap: 25px; }
  .chat-person p { padding: 20px; font-size: 21px; }
  .chat-avatar { flex-basis: 44px; width: 44px; height: 44px; }
  .test-rules { width: 90vw; margin-top: 34px; gap: 8px; }
  .test-rules li { min-height: 68px; padding: 14px 16px; gap: 12px; font-size: 16px; }
}
