/* The shared light/dark palette is provided by theme.css. */
.stories-section { overflow: hidden; }
.stories-heading { position: relative; z-index: 1; }
.stories-heading h2 { max-width: 18ch; margin-inline: auto; text-wrap: balance; }
.chat-stream { --chat-travel: -940px; height: 680px; max-width: 1450px; margin-top: 16px; mask-image: linear-gradient(transparent,#000 12%,#000 82%,transparent); }
.chat-float { left: calc(var(--lane) * (100% / var(--chat-columns)) + .8%); width: calc(100% / var(--chat-columns) - 1.6%); }
.chat-bubble { padding: 16px; box-shadow: 0 10px 28px rgba(20,30,60,.06); }
.chat-float:nth-child(4n+2) .chat-bubble { border-radius: 16px 16px 4px 16px; }
.chat-stream .chat-text { font-size: 13px; line-height: 1.8; }
.chat-stream .chat-meta { font-size: 10px; }
.support-conversations { display: block; padding: 58px 0; }
.conversation-intro { display: grid; grid-template-columns: 1fr 1.15fr; align-items: start; column-gap: 48px; }
.conversation-intro h2 { grid-row: span 3; font-size: clamp(28px,3.2vw,42px); line-height: 1.4; }
.support-conversations .conversation-intro > p { max-width: 54ch; margin-top: 4px; }
.support-conversations .conversation-intro > .conversation-source-note { margin-top: 8px; }
.support-conversations .conversation-intro .text-link { margin-top: 8px; }
.conversation-content { margin-top: 32px; }
.support-conversations .chat-controls { justify-content: flex-end; }
.support-chat-stage { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; max-width: none; min-height: 470px; margin-top: 20px; }
.support-thread { padding: 28px; background: var(--surface-soft); border-radius: 16px; }
.support-thread-heading h3 { font-size: 20px; }
.support-thread-heading { margin-bottom: 26px; }
.support-thread-lines { gap: 22px; }
.support-chat-copy > p { font-size: 15px; line-height: 1.8; padding: 12px 16px; }
.support-chat-line { grid-template-columns: 36px minmax(0,1fr); gap: 12px; }
.support-chat-line .chat-avatar { width: 36px; height: 36px; }
.support-chat-line[data-role="support"] { margin-left: 32px; max-width: calc(100% - 32px); }
.support-thread-dots { justify-content: center; margin-top: 14px; }
.support-conversations #support-chat-hint { text-align: center; margin-top: 2px; }
.support-chat-static { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.support-chat-static .support-thread + .support-thread { padding: 28px; }
@media(max-width:1100px) { .chat-stream .chat-text { font-size: 13px; } .support-thread { padding: 22px; } }
@media(max-width:700px) {
 .chat-stream { --chat-travel:-870px; height:630px; max-width:420px; }
 .chat-float { left: 4%; width: 92%; }
 .chat-stream .chat-text { font-size: 14px; }
 .chat-stream .chat-meta { font-size: 11px; }
 .conversation-intro { display: block; }
 .support-conversations .conversation-intro > p { margin-top: 14px; }
 .support-conversations { padding: 40px 0; }
 .support-conversations .chat-controls { justify-content: flex-start; }
 .support-chat-stage { grid-template-columns:1fr; min-height:470px; gap:0; }
 .support-thread { padding: 22px 18px; }
 .support-thread-heading h3 { font-size:18px; }
 .support-chat-copy > p { font-size:14px; padding:10px 12px; }
 .support-chat-line[data-role="support"] { margin-left:15px; max-width:calc(100% - 15px); }
 .support-thread-dots { gap:0; }
 .support-thread-dots button { width:40px; }
 .support-chat-static { grid-template-columns:1fr; }
 .support-chat-static .support-thread + .support-thread { padding:22px 18px; }
}
