html[data-opening-locked=true],html[data-opening-locked=true] body{overflow:hidden;overscroll-behavior:none}.opening .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.site-header{position:fixed;z-index:30;top:0;left:0;width:100%;transform:translateY(-105%);opacity:0;visibility:hidden;transition:transform .75s cubic-bezier(.22,1,.36,1),opacity .5s ease,visibility 0s .75s}.site-header .scene-link{display:inline-flex;align-items:center;min-height:44px}body[data-opening-complete=true] .site-header{transform:translateY(0);opacity:1;visibility:visible;transition-delay:0s}
.opening{min-height:100svh;background:#050a0d;color:#edf3ee;isolation:isolate}.opening-frame{position:relative;width:100%;height:100svh;margin:auto;overflow:hidden}.opening-art{position:absolute;inset:0}.opening-art img,.opening-art video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.opening[data-state=handoff] .opening-art img,.opening[data-state=handoff] .opening-art video,.opening[data-autonomy=reveal] .opening-art img,.opening[data-autonomy=reveal] .opening-art video{object-fit:cover}.opening-ring-still{z-index:0}.opening-ring-video{z-index:1;pointer-events:none}.opening[data-autonomy=still] .opening-ring-video,.opening[data-autonomy=reveal] .opening-ring-video{visibility:hidden}.opening-lit{z-index:2;opacity:0;transition:opacity 3000ms linear}.opening-shade{position:absolute;inset:0;z-index:3;background:linear-gradient(180deg,#050a0de0,#050a0d33 37%,transparent 60%);opacity:0;transition:opacity 3000ms linear}
.opening[data-state=handoff] .opening-lit,.opening[data-state=handoff] .opening-shade,.opening[data-autonomy=reveal] .opening-lit,.opening[data-autonomy=reveal] .opening-shade{opacity:1}.opening[data-instant=true] .opening-lit,.opening[data-instant=true] .opening-shade{transition:none}
.opening-copy{position:absolute;z-index:4;top:7%;left:5%;right:5%;max-width:820px}.opening[data-state=ringing] .opening-copy h1,.opening[data-state=ringing] .opening-next{opacity:0;visibility:hidden;transform:translateY(16px)}.opening[data-state=ringing][data-ready=true] .opening-copy h1{animation:opening-copy-in .9s cubic-bezier(.22,1,.36,1) 2s both}.opening[data-state=ringing][data-ready=true] .opening-next{animation:opening-copy-in .9s cubic-bezier(.22,1,.36,1) 2.16s both}.opening[data-state=ringing][data-advancing=true] .opening-next{animation:opening-action-out .65s ease forwards}.opening[data-state=conflict] .opening-next{opacity:0;visibility:hidden;transform:translateY(12px);animation:opening-copy-in .8s cubic-bezier(.22,1,.36,1) 2s both}.opening-copy .eyebrow{color:#c7e3d5;margin-bottom:12px}.opening-copy h1{font:400 clamp(32px,4.5vw,76px)/1.04 Georgia,serif;letter-spacing:-.035em;margin:0 0 22px;max-width:900px;text-wrap:balance}.opening[data-state=conflict] .opening-copy{max-width:none}.opening[data-state=conflict] .opening-copy h1{max-width:none;white-space:nowrap}.opening[data-state=conflict] .opening-action-wrap{position:fixed;z-index:5;left:50%;top:75%;transform:translate(-50%,-50%)}#opening-title-continuation{display:inline;opacity:0;animation:opening-continuation-in 1s cubic-bezier(.22,1,.36,1) .1s forwards}#opening-title-continuation::before{content:' '}.opening[data-state=handoff] .opening-copy{top:calc(92px + 4vh);left:calc(5% + 30px);max-width:760px;transform:none}.opening[data-state=handoff] .opening-copy h1{max-width:none}.opening[data-state=handoff] #opening-title-continuation{display:block;opacity:1;animation:none}.opening[data-state=handoff] #opening-title-continuation::before{content:''}.opening[data-state=handoff] .opening-action-wrap,.opening[data-state=handoff] #opening-hint{display:none}.opening-action-wrap{position:relative;display:inline-block}
.opening-showcase{position:absolute;z-index:5;left:50%;top:calc(17% - 50px);width:min(390px,31vw);min-height:394px;overflow:hidden;border:1px solid #d5dfd7;border-radius:10px;background:#f6f7f1ee;color:#183e35;box-shadow:0 24px 80px #07171040,0 2px 0 #ffffff80;backdrop-filter:blur(12px);opacity:0;visibility:hidden;transform:translate(-50%,22px);pointer-events:none}.opening[data-state=handoff] .opening-showcase{animation:showcase-enter .9s cubic-bezier(.22,1,.36,1) .32s forwards}.opening-showcase .showcase-call,.opening-showcase .showcase-dialogue,.opening-showcase .showcase-tool{transition:opacity .55s ease,filter .55s ease,transform .55s cubic-bezier(.22,1,.36,1)}.opening-showcase[data-switching=true] .showcase-call,.opening-showcase[data-switching=true] .showcase-dialogue,.opening-showcase[data-switching=true] .showcase-tool{opacity:0;filter:blur(7px);transform:translateY(-10px)}.opening-showcase[data-switching=false] .showcase-call,.opening-showcase[data-switching=false] .showcase-dialogue{animation:showcase-scene-in .65s cubic-bezier(.22,1,.36,1) both}.showcase-call{height:50px;padding:0 19px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d5dfd7;font:600 10px/1 "Segoe UI",sans-serif;letter-spacing:.12em;text-transform:uppercase}.showcase-live{display:flex;align-items:center}.showcase-live>span{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.showcase-live b{display:flex;align-items:center;gap:8px;font:inherit}.showcase-live time{padding-left:15px;color:#627267;font-size:9px;font-variant-numeric:tabular-nums;letter-spacing:.08em}.showcase-live i{width:7px;height:7px;border-radius:50%;background:#4c916d;box-shadow:0 0 0 4px #4c916d1c}.showcase-status{color:#627267;font-weight:500}.showcase-dialogue{height:344px;padding:18px 18px 15px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;background:linear-gradient(145deg,#e9efe4,#f4f6ef);transition:height .55s cubic-bezier(.22,1,.36,1)}.opening-showcase[data-stage=tool] .showcase-dialogue{height:244px}.opening-showcase[data-stage=receipt] .showcase-dialogue{height:282px}.showcase-dialogue::-webkit-scrollbar{display:none}.showcase-message{display:flex;align-items:flex-start;gap:9px;flex:0 0 auto;opacity:0;filter:blur(5px);clip-path:inset(0 100% 0 0);transform:translate(-14px,8px) scale(.97);transition:opacity .7s ease,filter .7s ease,clip-path .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}.showcase-message.agent{clip-path:inset(0 0 0 100%)}.showcase-message[data-visible=true]{opacity:1;filter:blur(0);clip-path:inset(0);transform:none}.showcase-message>div{min-width:0;max-width:82%}.showcase-message small{display:block;margin:0 0 4px 2px;color:#627267;font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.showcase-bubble{padding:11px 13px;box-shadow:0 8px 24px #183e3509}.showcase-message p{margin:0;font:600 12px/1.48 "Segoe UI",sans-serif}.showcase-message.caller .showcase-bubble{background:#fff;border:1px solid #dbe3d6;border-radius:2px 12px 12px 12px}.showcase-message.agent{justify-content:flex-end;transform:translate(14px,8px) scale(.97)}.showcase-message.agent[data-visible=true]{transform:none}.showcase-message.agent>div{order:1}.showcase-message.agent .showcase-avatar{order:2}.showcase-message.agent small{text-align:right;margin-right:2px}.showcase-message.agent .showcase-bubble{background:#183e35;color:#f5f7f1;border-radius:12px 2px 12px 12px}.showcase-message.agent p{font-weight:500}.bubble-wave{height:22px;display:flex;align-items:center;gap:3px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #183e3516}.showcase-message.agent .bubble-wave{border-color:#f5f7f126}.bubble-wave i{width:2px;height:4px;border-radius:2px;background:currentColor;opacity:.25;transform-origin:center}.bubble-wave i:nth-child(3n){height:7px}.bubble-wave i:nth-child(4n){height:10px}.bubble-wave[data-active=true] i{animation:bubble-wave 760ms ease-in-out infinite;opacity:.65}.bubble-wave[data-active=true] i:nth-child(3n){animation-delay:-.52s}.bubble-wave[data-active=true] i:nth-child(3n+1){animation-delay:-.26s}.showcase-avatar{display:grid!important;place-items:center;width:31px;height:31px;flex:0 0 31px;margin:16px 0 0!important;border-radius:50%;background:#dce5d6;color:#183e35;font:700 10px/1 "Segoe UI",sans-serif!important;letter-spacing:0!important}.showcase-avatar.phone{background:#183e35;color:#e8d4b4}.showcase-avatar svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.showcase-tool{margin:0 12px 12px;padding:11px 13px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;border-top:1px solid #d5dfd7;border-bottom:1px solid #d5dfd7;background:#edf2e9;clip-path:inset(0 0 0 0);animation:showcase-tool-open .55s cubic-bezier(.22,1,.36,1) both}.showcase-tool-mark{width:30px;height:30px;display:flex;align-items:end;justify-content:center;gap:3px;padding-bottom:8px;border:1px solid #b8c9bb;border-radius:50%}.showcase-tool-mark span{width:2px;height:10px;background:#183e35}.showcase-tool-mark span:nth-child(2){height:16px}.showcase-tool strong{display:block;font-size:12px}.showcase-tool p{margin:2px 0 0;color:#627267;font-size:10px;line-height:1.35}.showcase-chips{display:flex;gap:5px;margin-top:8px}.showcase-chips span{padding:3px 6px;border:1px solid #b8c9bb;background:#f8f8f3;font-size:9px;font-weight:650}.showcase-check{color:#4c916d;font-size:16px}.opening-showcase[data-stage=receipt] .showcase-tool{padding-block:8px;animation:showcase-tool-collapse .5s cubic-bezier(.22,1,.36,1) both}.opening-showcase[data-stage=receipt] .showcase-tool-mark{width:28px;height:28px}.opening-showcase[data-stage=receipt] .showcase-chips{display:none}.showcase-disclaimer{margin:0;padding:0 17px 13px;color:#718379;font-size:9px;letter-spacing:.03em;text-align:right}.opening-showcase[data-stage=speaking] .showcase-tool{display:none}.opening[data-takeover=true],.opening[data-takeover=true] *{cursor:none!important}.opening-autonomy-cursor{position:absolute;z-index:6;left:0;top:0;width:76px;height:94px;opacity:0;filter:drop-shadow(0 12px 18px #000a);pointer-events:none;will-change:left,top,transform,opacity}.opening-autonomy-cursor svg{display:block;width:100%;height:100%;overflow:visible}.opening-autonomy-cursor path{fill:#183e35;stroke:#f5f7f1;stroke-width:5;stroke-linejoin:round}.opening-next{position:relative;overflow:hidden;border:0;background:#c7e3d5;color:#123c33;padding:13px 24px;border-radius:4px;font-weight:600}.opening-next:hover:not(:disabled){background:#e1f2e8}#opening-hint{font-size:13px;color:#cfdbd7;max-width:460px;margin:12px 0 0}
.opening-skip{position:absolute;z-index:7;right:28px;bottom:28px;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 4px;color:#c7d4ce;text-decoration:none;font-size:11px;letter-spacing:.04em;animation:opening-skip-float 2.4s ease-in-out infinite}.opening-skip:hover{color:#fff}.opening-skip:focus-visible{outline:3px solid #b87937;outline-offset:4px}.opening[data-state=handoff] .opening-skip{display:none}.opening-scroll{position:absolute;z-index:7;left:50%;bottom:26px;display:grid;width:48px;height:48px;place-items:center;border:2px solid #f5f7f1;border-radius:50%;background:#183e35;color:#f5f7f1;box-shadow:0 8px 28px #0005;text-decoration:none;font:24px/1 Georgia,serif;transform:translateX(-50%);animation:opening-scroll-in .7s cubic-bezier(.22,1,.36,1) both,opening-scroll-float 2s ease-in-out .7s infinite}.opening-scroll:hover{background:#edf3ee;color:#183e35}.opening-scroll:focus-visible{outline:3px solid #b87937;outline-offset:4px}.opening-caption{max-width:1800px;margin:0 auto;padding:0 5% 18px;font-size:11px;color:#93a89f}.opening[data-image-error=true] .opening-art{display:none}.opening[data-image-error=true] .opening-frame{aspect-ratio:auto}.opening[data-image-error=true] .opening-copy{position:static;padding:45px 5%;max-width:900px}
.floating-end{position:fixed;z-index:20;right:24px;bottom:24px;box-shadow:0 4px 24px #0003;background:#fffaf6}#demo{scroll-margin-top:12px}
.opening[data-autonomy=pressed] .opening-next,.opening[data-autonomy=still] .opening-next,.opening[data-autonomy=reveal] .opening-next{animation:opening-action-out .3s ease forwards}
@keyframes showcase-enter{to{opacity:1;visibility:visible;transform:translate(-50%,0)}}
@keyframes showcase-scene-in{from{opacity:0;filter:blur(7px);transform:translateY(10px)}to{opacity:1;filter:blur(0);transform:none}}
@keyframes bubble-wave{0%,100%{transform:scaleY(.45);opacity:.3}50%{transform:scaleY(1.65);opacity:.9}}
@keyframes showcase-tool-open{from{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(-5px)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes showcase-tool-collapse{from{opacity:.7;transform:scaleY(1)}to{opacity:1;transform:scaleY(.98)}}
@keyframes opening-copy-in{to{opacity:1;visibility:visible;transform:translateY(0)}}
@keyframes opening-scroll-in{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes opening-scroll-float{50%{transform:translate(-50%,8px)}}
@keyframes opening-skip-float{50%{transform:translateY(8px)}}
@keyframes opening-action-out{from{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(8px)}}
@keyframes opening-continuation-in{to{opacity:1}}
@media(max-width:900px) and (min-width:651px){.opening-showcase{left:50%;top:calc(29% - 50px);width:340px;transform:translate(-50%,22px) scale(.86);transform-origin:top center}.opening[data-state=handoff] .opening-showcase{animation-name:showcase-enter-tablet}}
@keyframes showcase-enter-tablet{to{opacity:1;visibility:visible;transform:translate(-50%,0) scale(.86)}}
@media(max-width:650px){.opening-frame{height:auto;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden}.opening-copy{position:static;grid-row:1;width:100%;min-width:0;max-width:100%;padding:28px 6%;min-height:360px}.opening-copy h1{font-size:38px;max-width:370px;margin-bottom:16px}.opening[data-state=handoff] .opening-copy{position:absolute;top:calc(62px + 2vh);left:0;padding:0 6%;transform:none}.opening[data-state=handoff] .opening-copy h1{font-size:32px}.opening-showcase{left:50%;top:calc(35% - 50px);width:90%;min-height:330px;transform:translate(-50%,18px) scale(.84);transform-origin:top center}.opening[data-state=handoff] .opening-showcase{animation-name:showcase-enter-mobile}.opening-showcase[data-switching=true]{transform:translate(-50%,-10px) scale(.84)}.showcase-dialogue{height:280px;padding:14px}.opening-showcase[data-stage=tool] .showcase-dialogue{height:190px}.opening-showcase[data-stage=receipt] .showcase-dialogue{height:224px}.showcase-message p{font-size:11px}.showcase-tool{min-height:72px}.opening[data-state=conflict] .opening-copy h1{max-width:100%;white-space:normal;font-size:clamp(27px,8.5vw,34px);line-height:1.08;text-wrap:pretty}.opening[data-state=conflict] #opening-title-continuation{display:block;margin-top:.18em}.opening[data-state=conflict] #opening-title-continuation::before{content:''}.opening[data-state=conflict] .opening-action-wrap{position:absolute;left:50%;right:auto;top:75%;transform:translate(-50%,-50%)}.opening-copy .eyebrow{font-size:10px;margin-bottom:10px}#opening-hint{font-size:12px}.opening-art{position:absolute;inset:0;aspect-ratio:auto}.opening-art img,.opening-art video{object-fit:cover;object-position:30% center}.opening-shade{display:block;opacity:1;background:linear-gradient(180deg,#050a0df2 0%,#050a0db8 32%,#050a0d30 62%,#050a0d00 100%)}.opening-skip{right:18px;bottom:18px}.opening-caption{padding:0 6% 18px;font-size:10px}.floating-end{right:16px;bottom:16px}}
@keyframes showcase-enter-mobile{to{opacity:1;visibility:visible;transform:translate(-50%,0) scale(.84)}}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}.opening-scroll,.opening-skip,.opening-showcase,.bubble-wave i,.showcase-tool{animation:none!important}.opening[data-state=handoff] .opening-showcase{opacity:1;visibility:visible;transform:none}.opening .opening-copy h1,.opening .opening-next{animation:none!important;opacity:1;visibility:visible;transform:none}.opening .opening-lit,.opening .opening-shade{opacity:1;transition:none!important}}
