/* An independent speech bubble sits beside the shared reception scene. */
.hero-inner{display:block;min-height:850px;padding-top:120px;padding-bottom:80px}
.hero-copy{width:42%;max-width:460px}
.hero h1{font-size:52px;line-height:1.22}
.hero-eyebrow{margin-bottom:20px}
.hero-lede{font-size:16px;line-height:1.8;margin-top:22px}
/* User-confirmed business counts, separated from the characters and product navigation. */
.hero-metrics{position:absolute;z-index:4;top:700px;left:0;right:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0;padding:0;color:#17345b}
.hero-metrics>div{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding-left:32px;border-left:1px solid #d6e0eb}
.hero-metrics>div:first-child{padding-left:0;border-left:0}
.hero-metrics dt{order:1;font-size:13px;line-height:22px;color:#546984}
.hero-metric-value{display:flex;align-items:baseline;gap:8px;margin:0;font-family:Manrope,'Noto Sans SC','Noto Sans SC Fallback',sans-serif;font-size:40px;font-weight:700;line-height:48px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.hero-metric-value>span{font-family:'Noto Sans SC','Noto Sans SC Fallback',sans-serif;font-size:13px;font-weight:400;line-height:22px;letter-spacing:0;color:#546984}
.robot-conversation,.robot-guide{display:contents}
.team-speech{position:absolute;z-index:5;top:180px;right:110px;display:grid;grid-template-rows:40px minmax(0,1fr);gap:8px;width:360px;height:160px;min-height:160px;padding:16px 18px 12px;border:1px solid #d3dfec;border-radius:22px;background:#fffffff2;box-shadow:0 12px 36px #325b8810;pointer-events:auto}
.team-speech::after{content:'';position:absolute;bottom:-7px;left:43%;width:14px;height:14px;border-right:1px solid #d3dfec;border-bottom:1px solid #d3dfec;border-radius:0 0 4px 0;background:#fff;rotate:45deg}
.robot-conversation[data-story-speaker="partner"] .team-speech{top:164px;right:310px}
.robot-conversation[data-story-speaker="partner"] .team-speech::after{left:42%}
.robot-conversation[data-story-speaker="rover"] .team-speech{top:326px;right:0;width:264px;height:184px;min-height:184px}
.robot-conversation[data-story-speaker="rover"] .team-speech::after{left:51%}
.team-speech-heading{display:flex;align-items:center;gap:10px;min-height:40px}
.story-avatar{position:relative;display:block;flex-shrink:0;width:36px;height:36px;overflow:hidden;border:1px solid #dce6f1;border-radius:50%;background:#f0f5fb}
.story-avatar img{position:absolute;display:block;left:50%;top:0;width:48px;max-width:none;height:auto;translate:-50% 0}
[data-story-speaker="partner"] .story-avatar img{width:82px;top:-2px}
[data-story-speaker="rover"] .story-avatar img{width:64px;top:3px}
.team-speech-heading>div{flex:1;min-width:0}
.team-speech-heading strong{display:block;font-size:14px;line-height:20px;font-weight:600;color:#234570}
.team-speech-heading small{display:block;font-size:12px;line-height:18px;color:#607795}
.robot-guide-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;margin-left:auto;padding:12px;border-radius:12px;background:transparent;color:#607795}
.robot-guide-close:hover{background:#f0f5fc;color:#234570}
.team-speech-text{min-height:0;margin:0;overflow:auto;font-size:14px;line-height:23px;color:#234570}
.team-speech.is-speaking .team-speech-text{animation:story-line-in .28s ease-out both}
@keyframes story-line-in{from{opacity:.6;translate:0 2px}to{opacity:1;translate:0 0}}
.team-story-console{position:absolute;z-index:5;top:403px;left:0;width:420px;padding:0;pointer-events:auto}
.story-products-label{margin:0 0 10px;color:#607795;font-size:12px;line-height:20px}
.team-story-heading{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.story-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:4px}
.story-topics button{min-height:44px;padding:8px 10px;border:1px solid #d6e2f1;border-radius:10px;background:#f8fafde8;color:#546984;font-size:13px;line-height:22px;text-align:left}
.story-topics button:hover,.story-topics button[aria-pressed="true"]{border-color:#a9c6ee;background:#edf4ff;color:#0f54d4}
.story-player{display:flex;align-items:center;gap:8px;margin-top:8px}
.story-player button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;flex:1;padding:9px 8px;border:0;border-radius:10px;background:#eef3fa;color:#395b87;font-size:13px;line-height:22px}
.story-player button:hover{background:#e3edfa}
.story-player button:disabled{opacity:.45;cursor:default}
.story-secondary{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}
.story-secondary button{min-height:44px;padding:8px 2px;background:transparent;color:#607795;font-size:12px;line-height:20px}
.story-secondary button:hover{color:#0f54d4}
.robot-guide-needs{display:inline-flex;align-items:center;gap:7px;margin-left:auto}
.robot-guide-needs>.icon{width:16px;height:16px}
.robot-guide-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin-top:0}
.robot-guide-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:10px 0;border:0;border-bottom:1px solid #dbe5f0;border-radius:0;background:transparent;color:#395b87;font-size:14px;line-height:22px}
.robot-guide-links a>.icon{flex-shrink:0;width:16px;height:16px}
.robot-guide-links a:hover{color:#0f54d4;border-color:#8db2e5}
.robot-conversation[data-mode="needs"]{display:block;position:absolute;z-index:5;top:370px;left:0;width:440px;height:auto;border:1px solid #d3dfec;border-radius:22px;background:#fffffff2;box-shadow:0 12px 40px #325b880d}
.robot-needs-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 10px 0}
.robot-needs-bar button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border-radius:10px;background:transparent;font-size:12px;color:#546984}
.robot-needs-bar button:hover{background:#eef4fc;color:var(--blue)}
.robot-needs-bar [data-guide-close]{width:44px;padding:12px}
.robot-conversation .needs-dialogue{width:100%;max-width:none;margin:0;border:0;border-radius:0 0 22px 22px;background:transparent;box-shadow:none}
.hero[data-conversation="needs"] .hero-inner{min-height:980px}
.robot-conversation [hidden],.robot-conversation[hidden]{display:none!important}
.robot-conversation button:focus-visible,.robot-conversation a:focus-visible{outline:2px solid #3d8cf1;outline-offset:3px}
.motion-paused .team-speech.is-speaking .team-speech-text{animation:none}
@media(max-width:1279px){
 .hero-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-areas:"copy copy" "metrics metrics" "conversation art" "bottom bottom";gap:24px;min-height:0;padding-top:112px;padding-bottom:24px}
 .hero-copy{grid-area:copy;width:100%;max-width:none}.hero h1{font-size:48px}.hero-lede{max-width:450px}
 .robot-conversation,.robot-conversation[data-mode="needs"]{display:block;grid-area:conversation;position:relative;top:auto;left:auto;width:100%;height:auto;align-self:center}
 .robot-guide{display:block}
 .team-speech,.robot-conversation[data-story-speaker="partner"] .team-speech,.robot-conversation[data-story-speaker="rover"] .team-speech{position:relative;top:auto;right:auto;width:100%;height:160px;min-height:160px}
 .team-speech::after,.robot-conversation[data-story-speaker] .team-speech::after{bottom:auto;top:66px;left:auto;right:-7px;rotate:-45deg}
 .team-story-console{position:relative;top:auto;left:auto;width:100%;margin-top:24px}
 .hero-metrics{grid-area:metrics;position:static;gap:24px;width:100%;margin-top:8px}
 .robot-conversation .needs-dialogue{height:450px}
 .hero[data-conversation="needs"] .hero-inner{min-height:0}.hero-bottom{grid-area:bottom;position:static;gap:24px}
}
@media(max-width:900px){
 .hero-inner{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "metrics" "speech" "art" "console" "bottom";gap:12px;padding-top:108px;padding-bottom:22px}
 .robot-conversation:not([data-mode="needs"]),.robot-conversation:not([data-mode="needs"]) .robot-guide{display:contents}
 .team-speech,.robot-conversation[data-story-speaker="partner"] .team-speech,.robot-conversation[data-story-speaker="rover"] .team-speech{grid-area:speech;justify-self:center;width:100%;max-width:520px;height:160px;min-height:160px;margin-top:6px;padding:14px 16px;border-radius:20px}
 .team-speech::after,.robot-conversation[data-story-speaker] .team-speech::after{top:auto;right:auto;bottom:-7px;left:51%;rotate:45deg}
 .robot-conversation[data-story-speaker="partner"] .team-speech::after{left:26%}.robot-conversation[data-story-speaker="rover"] .team-speech::after{left:80%}
 .team-story-console{grid-area:console;width:100%;max-width:520px;justify-self:center;padding:0;margin-top:-6px}
 .story-topics{margin-top:0}
 .hero-metrics{max-width:520px;justify-self:center;margin-top:20px;gap:16px}
 .hero-metrics>div{padding-left:16px}
 .hero[data-conversation="needs"] .hero-inner{grid-template-areas:"copy" "metrics" "conversation" "art" "bottom"}
 .robot-conversation[data-mode="needs"]{display:block;max-width:520px;justify-self:center}
}
@media(max-width:640px){
 .hero h1{font-size:38px;line-height:1.25}.hero-eyebrow{font-size:12px;margin-bottom:16px}.hero-lede{font-size:14px;line-height:1.85;margin-top:18px;max-width:none}
 .hero-inner{padding-top:104px;gap:12px}
 .hero-metrics{gap:12px;margin-top:18px}
 .hero-metrics>div{padding-left:12px}
 .hero-metrics dt{font-size:12px;line-height:20px}
 .hero-metric-value{font-size:34px;line-height:44px;gap:6px}
 .hero-metric-value>span{font-size:12px;line-height:20px}
 .team-speech,.robot-conversation[data-story-speaker="partner"] .team-speech,.robot-conversation[data-story-speaker="rover"] .team-speech{height:170px;min-height:170px;padding:14px;border-radius:18px}
 .team-speech-text{font-size:14px;line-height:23px}
 .robot-conversation .needs-dialogue{height:460px;border-radius:0 0 20px 20px}
 .hero-bottom{margin-top:8px;gap:12px}
}
@media(max-width:360px){.hero h1{font-size:36px}.hero-metric-value{font-size:30px}.story-topics button{font-size:12px}.story-secondary button{font-size:12px}.team-speech,.robot-conversation[data-story-speaker="partner"] .team-speech,.robot-conversation[data-story-speaker="rover"] .team-speech{height:184px;min-height:184px}}
@media(prefers-reduced-motion:reduce){.team-speech.is-speaking .team-speech-text{animation:none}}
@media(min-width:1280px) and (prefers-reduced-motion:reduce){.hero-inner{min-height:910px}}
@media(min-width:1280px){.hero-bottom{bottom:18px}.hero[data-conversation="needs"] .hero-metrics{top:900px}.hero[data-conversation="needs"] .hero-inner{min-height:1050px}}
