/* Movement follows the reference: sliding chats, spring presses and a moving spectrum. */
@property --spectrum-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
.app-bubble>img{display:block;width:100%;height:100%;border-radius:8px}.chip-icon.whatsapp{background:transparent;border:0}.chip-icon.whatsapp>img{display:block;width:100%;height:100%;border-radius:7px}
.avatar,.bubble.jose{font-size:0!important;background-image:url('/assets/jose-192.webp');background-position:center;background-size:cover}
.header-cta{background:#5099f9;color:#fff;border:2px solid #3980dc;box-shadow:0 3px 0 #3980dc;min-height:39px;font-weight:600}
.button-primary{overflow:visible;animation:button-arrive .7s cubic-bezier(.22,1,.36,1) both}
.button-primary:before{inset:0 -1px -2px;background:conic-gradient(from var(--spectrum-angle),#a58aff,#4dc8ff,#7cf0b5,#ffe067,#ff7ab9,#a58aff);animation:spectrum-turn 2s linear infinite;box-shadow:none!important}
.button-primary:after{inset:0 0 2px}
.button-primary .cta-glow{position:absolute;z-index:-3;bottom:-17px;left:15%;width:70%;height:27px;background:linear-gradient(90deg,#ffa5d7,#ffe392,#96e6b4,#7fbdff,#c0a0fa);filter:blur(15px);opacity:.65;animation:glow-travel 5s ease-in-out infinite alternate;pointer-events:none}
.button-primary>span:not(.cta-glow),.header-cta>span{transition:transform .22s}.button-primary:hover>span:not(.cta-glow),.header-cta:hover>span{transform:translateX(4px)}
.bubble-line{animation:badge-arrive .7s cubic-bezier(.22,1,.36,1) both}.bubble-line .bubble{animation:circle-ripple 7s var(--ripple-delay,0s) ease-in-out infinite}.bubble-line .bubble:nth-child(1){--ripple-delay:.54s}.bubble-line .bubble:nth-child(2){--ripple-delay:.36s}.bubble-line .bubble:nth-child(3){--ripple-delay:.18s}.bubble-line .bubble:nth-child(4){--ripple-delay:0s}.bubble-line .bubble:nth-child(5){--ripple-delay:.18s}.bubble-line .bubble:nth-child(6){--ripple-delay:.36s}.bubble-line .bubble:nth-child(7){--ripple-delay:.54s}
.hero h1,.hero-description{animation:copy-arrive .7s .15s cubic-bezier(.22,1,.36,1) both}.hero-description{animation-delay:.24s}
.chip-mask{max-width:1200px}.chip-row{display:block;overflow:hidden;padding:7px 0 9px}.chip-track{display:flex;gap:11px;width:max-content;animation:chat-drift var(--drift-duration,54s) linear infinite;will-change:transform}.chip-row:nth-child(2) .chip-track{animation-direction:reverse;--drift-duration:66s}.chip-row:nth-child(3) .chip-track{--drift-duration:60s}.chip-row:hover .chip-track,.chip-row:focus-within .chip-track,.chip-row.is-paused .chip-track{animation-play-state:paused}
.chat-chip{transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .15s}.chat-chip:hover{transform:translateY(-3px) rotate(-1deg)}.chat-chip:active{transform:translateY(3px) scale(.97)}
.tap-hint>span{animation:hint-point 1.6s ease-in-out infinite}.reveal-ready{opacity:0;transform:translateY(25px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}
.story-card{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.story-card:hover{transform:translateY(-5px) rotate(-.6deg)}.story-card:active{transform:translateY(4px) scale(.985);box-shadow:0 1px 0 #e5e5e5}
.report-paper{transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.report-paper:hover{transform:rotate(0deg) translateY(-4px)}.demo-chart.is-visible>span{animation:chart-grow 1s cubic-bezier(.22,1,.36,1) both;transform-origin:left}.demo-chart.is-visible>span+span{animation-delay:.15s}
dialog[open]{animation:modal-appear .28s cubic-bezier(.22,1,.36,1)}dialog[open]::backdrop{animation:backdrop-appear .25s ease}.dialog-messages .message{animation:message-in .3s cubic-bezier(.22,1,.36,1) both}.dialog-messages .message:nth-child(2){animation-delay:.14s}.dialog-messages .message:nth-child(3){animation-delay:.28s}.dialog-verdict{animation:copy-arrive .5s .32s both}
.marquee-control{display:flex;align-items:center;gap:6px;margin:19px auto 0;min-height:36px;background:transparent;border:0;color:#858585;font-size:10px;padding:7px 12px}.jose-intro>.avatar{position:relative;isolation:isolate}.jose-intro>.avatar:before,.jose-intro>.avatar:after{content:'';position:absolute;inset:-6px;z-index:-1;border:1px solid #68a5ff66;border-radius:50%;animation:jose-halo 2.4s ease-out infinite}.jose-intro>.avatar:after{animation-delay:1.2s}
@keyframes circle-ripple{0%,8%,32%,100%{transform:translateY(0) scale(1)}16%{transform:translateY(-5px) scale(1.07)}23%{transform:translateY(2px) scale(.985)}}@keyframes jose-halo{0%{transform:scale(.92);opacity:.7}100%{transform:scale(1.5);opacity:0}}
@keyframes spectrum-turn{to{--spectrum-angle:360deg}}@keyframes glow-travel{from{transform:translateX(-15%);filter:blur(15px) hue-rotate(0)}to{transform:translateX(15%);filter:blur(16px) hue-rotate(110deg)}}@keyframes badge-arrive{from{opacity:0;transform:translateY(18px) scale(.7)}to{opacity:1;transform:none}}@keyframes jose-wink{0%,87%,100%{rotate:0deg;scale:1}91%{rotate:-7deg;scale:1.07}95%{rotate:5deg;scale:1.04}}@keyframes copy-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes button-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes chat-drift{to{transform:translateX(-50%)}}@keyframes hint-point{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes chart-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes modal-appear{from{opacity:0;transform:translateY(28px) scale(.98)}to{opacity:1;transform:none}}@keyframes backdrop-appear{from{opacity:0}to{opacity:1}}@keyframes message-in{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:640px){.site-header{height:66px;padding:0 23px}.site-header .brand>span:last-child{display:none}.site-header .avatar-small{width:39px;height:39px;font-size:27px;outline:0;border:0;box-shadow:none}.header-cta{min-height:36px;padding:7px 15px;font-size:13px;gap:9px}.hero{text-align:left;padding:104px 23px 59px}.bubble-line{margin-bottom:36px}.bubble{width:45px;height:45px;font-size:26px}.bubble.jose{width:51px;height:51px;font-size:32px}h1{font-size:35px;font-weight:500;line-height:1.19;letter-spacing:-1.4px;max-width:none;margin:0 0 30px}.hero-description{font-size:15px;line-height:1.7;max-width:none;margin:0 0 34px}.hero>.button-primary{width:100%;min-height:56px;font-size:17px;margin:0}.examples{padding-top:22px}.chip-row{padding-left:0}.chat-chip{min-height:52px;font-size:12px;padding:9px 13px;gap:9px;border-radius:14px}.chip-icon{width:30px;height:30px;font-size:19px}.tap-hint{margin-top:35px}.marquee-control{margin-top:12px}.bubble-line{padding-left:5px}.chip-mask:before,.chip-mask:after{width:20px}}
html[data-motion="off"] *,html[data-motion="off"] *:before,html[data-motion="off"] *:after{animation:none!important;transition:none!important}html[data-motion="off"] .reveal-ready{opacity:1;transform:none}html[data-motion="off"] .chip-row{overflow-x:auto}html[data-motion="off"] .chip-track{transform:none!important}html[data-motion="off"] .chip-track>[data-clone]{display:none}
@media(prefers-reduced-motion:reduce){html:not([data-motion="on"]) *,html:not([data-motion="on"]) *:before,html:not([data-motion="on"]) *:after{animation:none!important;transition:none!important}html:not([data-motion="on"]) .reveal-ready{opacity:1;transform:none}html:not([data-motion="on"]) .chip-row{overflow-x:auto}html:not([data-motion="on"]) .chip-track{transform:none!important}html:not([data-motion="on"]) .chip-track>[data-clone]{display:none}}
