/* hero-chat.css: cartão do hero da home, com o desenho do feed da página /aquisicao.
   Só tokens do site: #1f1f22 painel, #17171a fundo, #e1dfdd texto, #f15436 acento, Outfit. */
.oslo-hero-wrap > *:not(.hero-chat){display:none!important}
/* entre ~900 e ~1100 px o Framer deixa a caixa com 315 px: sem isto o cartão ficava cortado */
.oslo-hero-wrap{height:auto!important;min-height:0!important;align-self:flex-start!important;margin-top:0!important;padding:0!important}
.oslo-hero-wrap > .hero-chat{position:relative!important;inset:auto!important;width:100%;min-height:540px}
.hero-chat{--ease:cubic-bezier(.22,1,.36,1);position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;gap:16px;padding:20px;background:#1f1f22;border:1px solid #e1dfdd29;color:#e1dfdd;font-family:Outfit,sans-serif;font-weight:300;font-size:16px;line-height:1.35;letter-spacing:-.02em;text-transform:none;text-align:left;box-sizing:border-box;animation:hc-in .6s var(--ease) .2s both}
.hero-chat *{box-sizing:border-box}
@keyframes hc-in{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}
.hc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.hc-item{display:flex;align-items:center;gap:14px;min-height:52px;padding:10px 18px;border:1px solid #e1dfdd14;background:#17171a;color:#e1dfdda3;transition:color .3s var(--ease);opacity:0;animation:hc-up .55s var(--ease) both;animation-delay:calc(var(--n)*80ms + .5s)}
@keyframes hc-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.hc-box{flex:none;position:relative;width:18px;height:18px;border:1px solid #e1dfdd29;transition:background-color .3s var(--ease),border-color .3s var(--ease)}
.hc-box svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:square;stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset .3s var(--ease) .1s}
.hc-item.done{color:#e1dfdd}
.hc-item.done .hc-box{background:#f15436;border-color:#f15436}
.hc-item.done .hc-box svg{stroke-dashoffset:0}
.hc-mid{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:8px}
.hc-msg{display:none;align-items:center;gap:10px;max-width:100%;padding:12px 18px;border:1px solid #e1dfdd14;background:#17171a;color:#e1dfdd}
.hc-msg.show{display:flex}
.hc-msg i{flex:none;width:8px;height:8px;border-radius:50%;background:#f15436}
.hc-box2{flex:none;display:flex;flex-direction:column;justify-content:space-between;min-height:150px;padding:16px 16px 14px;border:1px solid #e1dfdd29;background:#17171a}
.hc-text{min-height:24px;color:#e1dfdd;font-size:16px}
.hc-text .ph{color:#e1dfdd73}
.hc-caret{display:inline-block;width:1.5px;height:1.05em;margin-left:2px;vertical-align:-.15em;background:#f15436;animation:hc-blink 1s steps(1) infinite}
@keyframes hc-blink{50%{opacity:0}}
.hc-tools{display:flex;justify-content:space-between;align-items:center}
.hc-tools div{display:flex;gap:4px}
.hc-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#1f1f22;border:1px solid #e1dfdd29;color:#e1dfdd}
.hc-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.hc-btn.gh svg{fill:currentColor;stroke:none}
.hc-btn.send{background:#f15436;border-color:#f15436;color:#fff}
.hc-btn.send.press{animation:hc-press .25s var(--ease)}
@keyframes hc-press{40%{transform:scale(.9)}}
.hero-chat.hc-out{animation:none;opacity:0;transition:opacity .4s linear}
.hero-chat.hc-paused .hc-caret{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){
 .hero-chat,.hc-item{animation:none!important;opacity:1!important}
 .hc-caret{display:none}
 .hc-box,.hc-box svg,.hc-item{transition:none!important}
}

/* Hero da home: mais respiro entre a etiqueta, o título, o parágrafo e os botões */
section[data-framer-name="Hero"] [data-framer-name="Heading"]:has(h1){gap:32px!important}
section[data-framer-name="Hero"] [data-framer-name="Text"]:has(h1){gap:36px!important}
section[data-framer-name="Hero"] :has(> [data-framer-name="Heading"] h1){gap:64px!important}
section[data-framer-name="Hero"] [data-framer-name="Buttons"]{gap:16px!important}
@media (max-width:1199px){
 section[data-framer-name="Hero"] [data-framer-name="Heading"]:has(h1){gap:28px!important}
 section[data-framer-name="Hero"] [data-framer-name="Text"]:has(h1){gap:32px!important}
 section[data-framer-name="Hero"] :has(> [data-framer-name="Heading"] h1){gap:48px!important}
}

/* O hero tinha altura fixa (calculada pela altura da janela) com overflow cortado: em janelas baixas o fundo do cartão era cortado.
   Agora a altura acompanha o conteúdo. */
section[data-framer-name="Hero"],
section[data-framer-name="Hero"] > [data-framer-name="Container"]{height:auto!important;min-height:0!important}
@media (min-width:1200px){
 section[data-framer-name="Hero"] > [data-framer-name="Container"]{align-items:flex-start!important}
}

/* O parágrafo do hero tinha a 2.ª frase a 18 px e a 1.ª a 16 px no tablet e no telemóvel */
section[data-framer-name="Hero"] [data-framer-name="Text"]:has(h1) p span{font-size:1em!important;line-height:inherit!important;letter-spacing:inherit!important}
