/* Leitura e áreas de toque do site público, com 320 px como largura mínima. */
.story-grid>* ,.product-grid>* ,.faq-grid>* ,.contact-grid>*{min-width:0}
@media(max-width:760px){
 html{scroll-padding-top:86px}
 .site-header{gap:12px}.site-header .header-login{min-height:44px;display:flex;align-items:center}.menu-toggle{min-height:44px}
 .container{width:calc(100% - 36px)}
 .hero-copy,.world-ready .hero-copy{padding-top:clamp(95px,16svh,130px)}
 .hero-description,.world-ready .hero-description{font-size:15px;line-height:1.65;max-width:430px}
 .hero-copy .eyebrow{font-size:10px;letter-spacing:.06em;max-width:90%}
 .hero-copy h1,.world-ready .hero-copy h1{font-size:clamp(34px,10.2vw,72px)}
 .hero-bottom{bottom:18px}.world-toggle{font-size:12px;min-height:44px;padding:10px 14px}
 .section{padding:66px 0}.eyebrow,.tiny-label,.section-number{font-size:12px;letter-spacing:.06em}
 .manifesto-bottom p,.product-copy>p:not(.eyebrow),.section-heading>p:last-child,.steps p,.resource p,.faq-list details p,.contact-grid>div>p{font-size:15px;line-height:1.65}
 .steps a,.text-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
 .resource-grid{grid-template-columns:minmax(0,1fr)}.resource{padding:26px 22px}.resource h3{font-size:24px}.resource>div{font-size:13px;margin-bottom:25px}
 .faq-list summary{font-size:16px;line-height:1.4;min-height:44px}.faq-list details p{padding-right:0}
 .contact-grid{gap:30px}.form-pair{grid-template-columns:minmax(0,1fr);gap:0}
 #demo-form label{font:14px/1.5 Arial,Helvetica,sans-serif}#demo-form input,#demo-form textarea{font-size:16px;padding:14px 0;min-height:48px}
 .contact-small{font-size:13px!important;line-height:1.6}.form-status{font-size:14px}
 .button{min-height:48px;font-size:14px}.footer-grid{gap:24px}.footer-grid a{font-size:14px;min-height:38px;display:flex;align-items:center}.footer-bottom{font-size:11px;line-height:1.5}
 .client-logo span{font-size:12px}.site-footer{padding-top:45px}
}
@media(max-width:360px){.site-header{padding:0 12px;gap:8px}.site-header .brand{font-size:21px;gap:6px}.site-header .brand svg{width:22px}.site-header .header-login{font-size:10px;padding:8px}.menu-toggle{font-size:10px;gap:4px}.hero-copy .button{font-size:13px;gap:18px}.footer-grid{grid-template-columns:minmax(0,1fr)}.footer-grid>div:last-child{grid-column:auto}}
@media(max-width:760px) and (max-height:700px){.hero,.world-ready .hero{height:auto;min-height:0}.hero-sticky{position:relative;height:auto;min-height:620px;padding-top:90px}.hero-copy,.world-ready .hero-copy{padding-top:65px}.hero-copy h1,.world-ready .hero-copy h1{font-size:clamp(34px,8.6vw,62px)}}

/* Ampliação apenas da tipografia pequena; títulos e marca preservados. */
.eyebrow,.tiny-label,.section-number,.brand-sub,.hero-topline,.hero-copy .eyebrow,.world-toggle,.orbit-label{font-size:14px;line-height:1.5;letter-spacing:.04em}
.site-header nav a,.site-header .header-login,.menu-toggle,.text-link,.steps a,.button,.hero-copy .button{font-size:15px;line-height:1.5}
.hero-description,.world-ready .hero-description,.manifesto-bottom p,.section-heading>p:last-child,.steps p,.product-copy>p:not(.eyebrow),.resource p,.faq-list details p,.contact-grid>div>p{font-size:16px;line-height:1.65}
.resource>div,.client-logo span,.footer-bottom,.footer-grid .tiny-label,.footer-grid p,.footer-top p,.form-status{font-size:14px;line-height:1.6}
.footer-grid a,.faq-list summary{font-size:16px;line-height:1.5}
#demo-form label{font-size:15px;line-height:1.5}#demo-form input,#demo-form textarea{font-size:16px}
.contact-small{font-size:14px!important;line-height:1.6}
.story .map-node span,.motion-scenes .story .map-node span{font-size:15px;line-height:1.45}
.story .visual-caption,.world-ready .story .visual-caption,.motion-scenes .story .visual-caption,.story .story-heading .eyebrow,.story .story-count,.story .story-panel .tiny-label{font-size:14px;line-height:1.5;letter-spacing:.025em}
.story .story-step{font-size:14px;gap:8px;line-height:1.5}
.story .story-panel .text-link,.motion-scenes .story .story-panel .text-link{font-size:15px}
.story .story-panel>p:not(.tiny-label),.motion-scenes .story .story-panel>p:not(.tiny-label){font-size:16px;line-height:1.6}
.dash-top,.dash-kpis>div,.dash-kpis b,.bar-chart,.donut-chart,.dash-table{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.dash-top{gap:14px;flex-wrap:wrap}.dash-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-kpis>div{min-width:0}.dash-charts{grid-template-columns:repeat(2,minmax(0,1fr))}
.site-chat-header p,.site-chat-suggestions button,.site-chat-demo,.site-chat-human,.site-chat.is-compact .site-chat-panel>.site-chat-human span{font-size:14px;line-height:1.5}
.site-chat-message,.site-chat-launch{font-size:15px}.site-chat-form input{font-size:16px}
@media(max-width:1100px) and (min-width:761px){.site-header nav{gap:12px}.site-header{gap:14px}.header-login{padding-inline:12px}}
@media(max-width:760px){
 .hero-topline{max-width:100%;overflow-wrap:anywhere}.hero-copy .eyebrow{font-size:14px;max-width:100%}
 .site-header .header-login,.menu-toggle{font-size:13px}.site-header{gap:10px}.site-header .header-login{padding-inline:8px}.menu-toggle{gap:4px}
 .story .visual-caption,.motion-scenes .story .visual-caption{gap:8px;flex-wrap:wrap}
 .story .story-progress{gap:10px;flex-wrap:wrap}.story .story-step{font-size:14px;gap:5px}.story .story-step i{min-width:6px}
 .story .map-node,.motion-scenes .story .map-node{padding:10px 8px}
 .dash-kpis{grid-template-columns:minmax(0,1fr)}.dash-kpis>div{padding:12px}.dash-charts{grid-template-columns:minmax(0,1fr)}
 .site-chat-suggestions button{min-height:40px}
}
@media(max-width:360px){.site-header{padding-inline:10px;gap:6px}.site-header .header-login,.menu-toggle{font-size:12px}.site-header .header-login{padding-inline:6px}.story .story-progress{gap:8px}}

/* Composição própria do diagrama em telas pequenas, sem posições do desktop. */
@media(max-width:760px){
 .story .connection-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto 72px auto;gap:12px;height:auto;min-height:300px;padding:8px 0;isolation:isolate}
 .story .connection-lines{inset:0;z-index:-1}
 .story .map-node{position:relative;inset:auto;width:auto;min-width:0;min-height:100px;padding:14px 10px;transform:none;overflow-wrap:anywhere;display:flex;flex-direction:column;justify-content:center}
 .story .node-one{grid-area:1/1}.story .node-two{grid-area:1/2}.story .node-three{grid-area:3/1}.story .node-four{grid-area:3/2}
 .story .map-center{position:relative;inset:auto;grid-area:2/1/3/3;justify-self:center;align-self:center;width:58px;height:58px}
 .story .story-heading{gap:12px;align-items:flex-start}.story .story-heading .eyebrow{min-width:0}
 .story .visual-caption{align-items:flex-start;gap:10px}.story .visual-caption span{flex:1 1 130px}
 .story .story-visual{max-width:480px;width:100%}
 .dashboard-art{width:100%;max-width:100%;margin-inline:0;transform:none!important}
 .dash-body,.dash-main{min-width:0}.dash-main{flex:1;padding:14px 10px}.dash-side{flex:0 0 28px;width:28px;padding:14px 6px}
 .dash-top{padding:14px;align-items:flex-start}.dash-top span{min-width:0;overflow-wrap:anywhere}
 .bar-chart,.donut-chart{min-width:0}.dash-kpis b{white-space:normal}
 .client-logo img{max-width:100%;height:auto;max-height:85px;object-fit:contain}
}

/* Envio do assistente com texto no lugar da seta. */
.site-chat-form button{width:auto;min-width:70px;padding:0 12px;font-size:14px}
