/* Raio único das molduras de foto (e cards com foto). Para mudar em todo o site, altere só este valor. */
:root{--s8-r:6px;--s8-measure:100%}  /* --s8-measure = largura máxima do texto dos artigos (920 = estreito; 1160 = largura toda) */
.s8-case-img,.s8-vs-wrap{border-radius:var(--s8-r)}
/* SCOPE8 — estados dos componentes interativos da Home (portados do React; o JS só troca classes). */

/* Entrada ao rolar */
.s8-enter{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.s8-enter.s8-d{transition-delay:.15s}
.s8-enter.is-in{opacity:1;transform:none}

/* Setas (Hero / Solutions) */
.s8-arrow{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:transparent;color:rgba(255,255,255,.45);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s,color .2s,background .2s,box-shadow .2s}
.s8-arrow:hover{border-color:var(--accent,#7BE7BE);color:var(--accent,#7BE7BE);background:color-mix(in srgb,var(--accent,#7BE7BE) 10%,transparent)}
.s8-arrow--lg{width:38px;height:38px;border-width:1.5px;color:rgba(255,255,255,.5)}
.s8-arrow--lg:hover{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#7BE7BE) 13%,transparent)}
.s8-arrow--light{width:40px;height:40px;border:1.5px solid rgba(7,31,107,.18);color:rgba(7,31,107,.42)}
.s8-arrow--light:hover{border-color:rgba(7,31,107,.5);color:#071F6B;background:rgba(7,31,107,.05)}

/* HERO */
.s8-hero{--accent:#7BE7BE}
.s8-hero-bg{opacity:0;transition:opacity 1s}
.s8-hero-bg.is-active{opacity:1}
.s8-hc{display:none;opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s}
.s8-hc.is-active{display:block}
.s8-hc.is-in{opacity:1;transform:none}
.s8-hc a.s8-cta-link{transition:transform .2s}
.s8-hc a.s8-cta-link:hover{transform:translateX(2px)}
.s8-dot{width:5px;height:3px;border-radius:2px;border:0;padding:0;cursor:pointer;background:rgba(255,255,255,.22);transition:all .38s ease}
.s8-dot.is-active{width:20px;background:var(--accent)}

/* WHO WE ARE */
.s8-wwa-img{transition:transform .7s ease}
/* Artigo de Insight: título em toda a largura; texto à esquerda e foto à direita (a foto flutua e o texto continua por baixo dela). */
.s8-art-hero{padding:48px 0 24px}
.s8-art-body{padding:0 0 64px}
.s8-art-wrap{display:flow-root}
.s8-art-fig{margin:0 0 28px}
.s8-art-fig-img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--s8-r)}
@media(min-width:900px){.s8-art-hero{padding:64px 0 32px}.s8-art-body{padding:0 0 96px}.s8-art-fig{float:right;width:42%;margin:6px 0 32px 56px}}
.s8-wwa-media{isolation:isolate;border-radius:var(--s8-r)}
.s8-wwa-panel{border-radius:var(--s8-r)}
.s8-wwa-media>[data-overlay],.s8-wwa-media>.bg-gradient-to-t{z-index:2}
.s8-wwa-layer{opacity:0;z-index:0;transition:opacity 1s ease,transform .7s ease}
.s8-wwa-layer.is-prev{opacity:1}
.s8-wwa-layer.is-on{opacity:1;z-index:1}
.s8-wwa:hover .s8-wwa-img{transform:scale(1.04)}
.s8-wwa-panel{transform:translate(-20px,20px);box-shadow:0 8px 32px rgba(4,25,79,.25);transition:all .3s}
.s8-wwa:hover .s8-wwa-panel{transform:translate(-20px,16px)}
.s8-wwa-t{transition:opacity .32s ease,transform .32s ease}
.s8-wwa-t.is-out{opacity:0;transform:translateY(5px)}
.s8-wwa-dot{width:6px;height:6px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.25);transition:all .3s;cursor:pointer}
.s8-wwa-dot.is-active{transform:scale(1.3)}

/* SOLUTIONS (desktop) */
.s8-sol-card{position:relative;height:100%;border-radius:var(--s8-r);overflow:hidden;cursor:pointer;flex-grow:0;flex-shrink:0;transition:flex-basis .44s cubic-bezier(.4,0,.2,1)}
.s8-sol-card img{position:absolute;width:100%;height:130%;top:-15%;object-fit:cover;transform:scale(1);filter:brightness(.65);transition:transform .56s cubic-bezier(.4,0,.2,1),filter .44s ease;will-change:transform}
.s8-sol-card.is-active img{transform:scale(1.04);filter:brightness(1.05)}
.s8-sol-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(4,25,79,.98) 0%,rgba(4,25,79,.86) 50%,rgba(4,25,79,.6) 100%)}
.s8-sol-card.is-active .s8-sol-ov{background:linear-gradient(to top,rgba(4,25,79,.97) 0%,rgba(4,25,79,.82) 35%,rgba(4,25,79,.28) 62%,rgba(4,25,79,.04) 100%)}
.s8-sol-bar{position:absolute;top:0;left:0;right:0;height:5px;z-index:10;opacity:.45;transition:opacity .44s}
.s8-sol-card.is-active .s8-sol-bar{opacity:1}
.s8-sol-on{display:none}.s8-sol-off{display:flex}
.s8-sol-card.is-active .s8-sol-on{display:flex}.s8-sol-card.is-active .s8-sol-off{display:none}
.s8-sol-dot{width:5px;height:5px;border-radius:3px;border:0;padding:0;cursor:pointer;background:rgba(255,255,255,.18);transition:all .38s ease}
.s8-sol-dot.is-active{width:22px;background:var(--accent)}
/* mobile (solutions e cases): empilhado com expansão */
.s8-m{position:relative;overflow:hidden;cursor:pointer;border-radius:var(--s8-r);height:160px;transition:height .5s ease}
.s8-m.is-active{height:380px}
.s8-m img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.55)}
.s8-m.is-active img{filter:brightness(1)}
.s8-m-body{overflow:hidden;max-height:0;opacity:0;transition:max-height .45s ease,opacity .35s ease}
.s8-m.is-active .s8-m-body{max-height:160px;opacity:1}
.s8-m--case{height:180px}.s8-m--case.is-active{height:400px}
.s8-m--case img{filter:brightness(.58)}

/* EXPERTISE */
.s8-exp{--accent:#3960B7}
.s8-exp-tab{display:block;flex:1 1 0;position:relative;padding:28px 28px 28px 22px;background:var(--ibg);border-left:3px solid var(--ibd);border-bottom:1px solid rgba(7,31,107,.08);transition:background .38s ease,border-color .38s ease}
.s8-exp-tab.is-active{background:#3960B7;border-left-color:#F5A23A}
.s8-exp-num{font-size:10px;font-weight:700;letter-spacing:.22em;color:var(--inum);transition:color .38s ease}
.s8-exp-tab.is-active .s8-exp-num{color:#7BE7BE}
.s8-exp-rule{height:1px;flex:1;background:transparent;transition:background .38s ease}
.s8-exp-tab.is-active .s8-exp-rule{background:rgba(123,231,190,.3)}
.s8-exp-h{font-size:14px;font-weight:500;line-height:1.25;color:var(--ititle);transition:font-size .38s ease,color .38s ease,font-weight .38s ease}
.s8-exp-tab.is-active .s8-exp-h{font-size:18px;font-weight:700;color:#fff;letter-spacing:-.01em}
.s8-exp-more{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:#7BE7BE;letter-spacing:.04em;overflow:hidden;max-height:0;opacity:0;margin-top:0;transition:max-height .38s ease,opacity .3s ease,margin-top .38s ease}
.s8-exp-tab.is-active .s8-exp-more{max-height:24px;opacity:1;margin-top:14px}
.s8-exp-pic{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .5s ease}
.s8-exp-pic.is-active{opacity:1;pointer-events:auto}
.s8-exp-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;transform:scale(1.16);transition:transform .7s ease;will-change:transform}
.s8-exp-pic.is-active img{transform:scale(1.18)}
.s8-exp-bar{background-color:var(--accent);transition:background-color .5s ease}
.s8-exp-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;z-index:4;padding:clamp(25.2px,2.76vw,39.6px);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .42s ease,transform .42s ease}
.s8-exp-copy.is-active{opacity:1;transform:none;pointer-events:auto}
.s8-exp-dot{width:5px;height:5px;border-radius:3px;background:rgba(255,255,255,.22);transition:all .38s ease}
.s8-exp-dot.is-active{width:20px;background:var(--accent)}

/* BIG NUMBERS */
.s8-stat{opacity:0;transform:translateY(14px) scale(.97);transition:opacity .6s var(--d,0ms) ease,transform .6s var(--d,0ms) ease}
.s8-nums.is-in .s8-stat{opacity:1;transform:none}

/* CLIENTS */
.s8-logo{height:var(--h,30px);width:min(var(--w,120px),calc(var(--h,30px) * var(--r,3)));max-width:var(--w,120px);object-fit:contain;filter:grayscale(1) brightness(.55);opacity:.85;transition:opacity .3s ease,filter .3s ease;flex-shrink:0}
.s8-logo.is-invert{filter:invert(1) grayscale(1) brightness(.55)}
.s8-logo:hover{opacity:.95;filter:none}

/* CASES (Home) */
.s8-cs-pic{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .48s ease}
.s8-cs-pic.is-active{opacity:1;pointer-events:auto}
.s8-cs-copy{position:absolute;inset:0;display:none;flex-direction:column;justify-content:flex-end;z-index:20;padding:clamp(25.2px,2.76vw,43.2px);text-decoration:none;opacity:1;transform:none;transition:opacity .34s ease,transform .34s ease}
.s8-cs-copy.is-active{display:flex}
.s8-cs-copy.is-out{opacity:0;transform:translateY(10px)}
.s8-cs-dot{width:5px;height:5px;border-radius:3px;border:0;padding:0;cursor:pointer;background:rgba(255,255,255,.22);transition:all .38s ease}
.s8-cs-dot.is-active{width:20px;background:var(--accent)}
@media (prefers-reduced-motion:reduce){.s8-enter,.s8-stat{opacity:1;transform:none;transition:none}}

/* ARTIGO (Insight): títulos numerados automaticamente (01, 02…), parágrafos e imagens editoriais. Sem destaque/callout. */
.s8-article{max-width:var(--s8-measure);counter-reset:s8sec}
.s8-article>*+*{margin-top:1.2em}
.s8-article h2{counter-increment:s8sec;margin-top:56px;margin-bottom:20px;font-weight:800;color:#071F6B;line-height:1.2;font-size:clamp(22px,2.7vw,34px);letter-spacing:-.025em}
.s8-article>h2:first-child{margin-top:0}
.s8-article h2::before{content:counter(s8sec,decimal-leading-zero);color:#3960B7;font-size:.42em;letter-spacing:.18em;vertical-align:.22em;margin-right:12px}
.s8-article h3{margin-top:36px;font-weight:800;color:#071F6B;font-size:clamp(18px,2vw,24px);letter-spacing:-.02em}
.s8-article p,.s8-article li{font-size:17px;line-height:1.8;font-weight:500;color:rgba(7,31,107,.65)}
.s8-article ul{list-style:disc;padding-left:1.4em}.s8-article ol{list-style:decimal;padding-left:1.4em}
.s8-article li+li{margin-top:.5em}
.s8-article a{color:#3960B7;text-decoration:underline}
.s8-article img{max-width:100%;height:auto;border-radius:var(--s8-r)}
.s8-article figure{margin:2em 0}.s8-article figcaption{margin-top:.6em;font-size:13px;color:rgba(7,31,107,.5)}

/* SERVICES — acordeão de serviços */
.s8-svc{border:1px solid rgba(7,31,107,.09);border-radius:7px;background:#fff;overflow:hidden;transition:border-color .22s ease,background-color .22s ease,box-shadow .22s ease}
.s8-svc.is-open{border-color:var(--abd);background:var(--abg);box-shadow:0 8px 28px var(--ash)}
.s8-svc-t{flex:1;font-size:clamp(14.4px,1.84vw,18px);font-weight:700;color:rgba(7,31,107,.68);letter-spacing:-.015em;transition:color .2s ease,transform .22s ease}
.s8-svc-btn:hover .s8-svc-t{color:#071F6B;transform:translateX(4px)}
.s8-svc.is-open .s8-svc-t{color:#071F6B;transform:none}
.s8-svc-i{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid rgba(7,31,107,.10);color:var(--accent);font-size:13.5px;transition:transform .22s ease,border-color .22s ease}
.s8-svc.is-open .s8-svc-i{transform:rotate(45deg);border-color:var(--accent)}
.s8-svc-body{max-height:0;overflow:hidden;opacity:0;transition:max-height .4s ease,opacity .25s ease}
.s8-svc.is-open .s8-svc-body{max-height:260px;opacity:1}
.s8-svc-in{margin:0 20px 20px 50px;padding:18px 20px;background:#fff;border-left:2px solid var(--accent);border-radius:0 5px 5px 0}

/* SOLUTIONS — animações de entrada das seções */
.solution-section{opacity:0;transform:translateY(28px);transition:opacity 700ms cubic-bezier(.22,1,.36,1),transform 800ms cubic-bezier(.22,1,.36,1)}
.solution-section.solution-visible{opacity:1;transform:translateY(0)}
.solution-title,.solution-positioning,.solution-content,.solution-image{opacity:0;transition:opacity 650ms cubic-bezier(.22,1,.36,1),transform 750ms cubic-bezier(.22,1,.36,1)}
.solution-title{transform:translateY(22px);transition-delay:80ms}
.solution-section:nth-of-type(2) .solution-image{transition-delay:80ms}
.solution-section:nth-of-type(3) .solution-image{transition-delay:150ms}
.solution-section:nth-of-type(4) .solution-image{transition-delay:110ms}
.solution-section:nth-of-type(5) .solution-image{transition-delay:180ms}
.solution-positioning{transform:translateY(18px);transition-delay:170ms}
.solution-content{transform:translateX(24px);transition-delay:220ms}
.solution-image{transform:scale(.965) translateY(12px);transition-delay:120ms}
.solution-visible .solution-title,.solution-visible .solution-positioning,.solution-visible .solution-content,.solution-visible .solution-image{opacity:1;transform:translate(0,0) scale(1)}
.solution-image img{transition:transform 1000ms cubic-bezier(.22,1,.36,1),filter 900ms ease;filter:saturate(.92)}
.solution-visible .solution-image img{filter:saturate(1)}
@media (prefers-reduced-motion:reduce){.solution-section,.solution-title,.solution-positioning,.solution-content,.solution-image,.solution-image img{opacity:1!important;transform:none!important;transition:none!important;filter:none!important}}

/* ABOUT — 3-Zero Quest */
.s8-quest-line{width:1px;height:0;background:linear-gradient(to bottom,#3960B7,#F5A23A,#7BE7BE);transition:height 1.4s cubic-bezier(.4,0,.2,1)}
.s8-quest.is-in .s8-quest-line{height:100%}
.s8-q{opacity:0;transform:translateY(18px);transition:opacity .65s ease var(--d),transform .65s ease var(--d)}
.s8-quest.is-in .s8-q{opacity:1;transform:none}
.s8-q-node{top:50px;width:10px;height:10px;border-radius:50%;background-color:var(--c);transform:translateX(-4.5px);box-shadow:0 0 0 4px #fff,0 0 0 5px color-mix(in srgb,var(--c) 25%,transparent);transition:box-shadow .3s ease}
.s8-q.is-active .s8-q-node{box-shadow:0 0 0 4px #fff,0 0 0 6px var(--c),0 0 16px color-mix(in srgb,var(--c) 38%,transparent)}
.s8-q-h{font-size:clamp(25.2px,3.22vw,39.6px);letter-spacing:-.025em;line-height:1;color:rgba(7,31,107,.72);transition:color .3s ease}
.s8-q.is-active .s8-q-h{color:#071F6B}
.s8-q-p{font-size:15.3px;max-width:440px;line-height:1.75;color:rgba(7,31,107,.42);transition:color .3s ease}
.s8-q.is-active .s8-q-p{color:rgba(7,31,107,.68)}

/* ABOUT — Our Values */
.s8-vn-n{width:58px;height:58px;background:rgba(4,25,79,.92);border:1px solid rgba(255,255,255,.12);transition:all .3s ease}
.s8-vn.is-active .s8-vn-n{width:64px;height:64px;background:#04194F;border-color:var(--c);box-shadow:0 0 0 5px color-mix(in srgb,var(--c) 9%,transparent),0 0 24px color-mix(in srgb,var(--c) 13%,transparent)}
.s8-vn .s8-vi{width:29px;height:29px;color:rgba(255,255,255,.38);display:block;flex-shrink:0;transition:all .3s ease}
.s8-vn.is-active .s8-vi{width:34px;height:34px;color:var(--c)}
.s8-vn-l{color:rgba(255,255,255,.42);transition:color .28s ease}
.s8-vn.is-active .s8-vn-l{color:#fff}
.s8-vtrack{transition:transform 1800ms cubic-bezier(.22,1,.36,1)}
.s8-vs .s8-vi{width:42px;height:42px;color:var(--c);display:block}
.s8-vs-img{transform:scale(1);transition:transform 1.4s cubic-bezier(.22,1,.36,1)}
.s8-vs.is-active .s8-vs-img{transform:scale(1.025)}
.s8-vn.is-active .s8-vi g,.s8-vs.is-active .s8-vi g{animation:iconDraw .75s cubic-bezier(.4,0,.2,1) forwards}
.s8-vd{width:8px;height:3px;border:0;border-radius:99px;padding:0;background:rgba(255,255,255,.18);transition:all .3s ease;cursor:pointer}
.s8-vd.is-active{width:32px;background:var(--c)}

/* ABOUT — mapa */
@keyframes markerPulse{0%{r:12;opacity:.5}100%{r:50;opacity:0}}
.map-pulse2{animation:markerPulse 3s ease-out infinite}
@keyframes markerAppear{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}
.map-marker2{animation:markerAppear .7s cubic-bezier(.34,1.4,.64,1) forwards;opacity:0}
@media (prefers-reduced-motion:reduce){.map-marker2{opacity:1;animation:none}.map-pulse2{animation:none}}

/* CONTACT e CAREERS — campos */
.s8-ct-lab{display:block;font-size:10.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:8px}
.s8-ct-in{width:100%;padding:13px 16px;background-color:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:5px;font-size:14px;color:#fff;font-family:inherit;font-weight:500;outline:none;transition:border-color .2s ease}
.s8-ct-in:focus{border-color:rgba(123,231,190,.55)}
.s8-ct-in::placeholder,.s8-cr-in::placeholder{color:rgba(255,255,255,.38)}
.s8-cr-lab{display:block;color:rgba(255,255,255,.5);font-size:11px;font-weight:700;letter-spacing:.09em;margin-bottom:7px;text-transform:uppercase}
.s8-cr-in{background:rgba(4,25,79,.25);border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#fff;padding:12px 16px;font-size:14px;width:100%;outline:none;box-sizing:border-box;font-family:'Plus Jakarta Sans',sans-serif;transition:border-color .2s ease}
.s8-cr-in:focus{border-color:rgba(123,231,190,.55)}
.s8-cr-grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:start}
.s8-cr-card{padding:44px 40px}
.s8-cr-2{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:640px){.s8-cr-2{grid-template-columns:1fr 1fr}}
@media (min-width:960px){.s8-cr-grid{grid-template-columns:42fr 58fr;gap:80px}}
@media (max-width:480px){.s8-cr-card{padding:28px 20px!important}}
.s8-drop{border:1.5px dashed rgba(255,255,255,.28);border-radius:6px;padding:22px 20px;text-align:center;cursor:pointer;background:rgba(4,25,79,.18);transition:border-color .2s}
.s8-drop:hover,.s8-drop:focus{border-color:rgba(123,231,190,.6);outline:none}

/* CAREERS — cultura */
.s8-cult-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:640px){.s8-cult-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.s8-cult-grid{grid-template-columns:repeat(4,1fr)}}
.s8-cult{background:#fff;border-radius:8px;padding:32px 28px;border:1px solid rgba(7,31,107,.07);border-top:3px solid transparent;position:relative;overflow:hidden;box-shadow:0 2px 12px rgba(7,31,107,.06);transition:background .28s ease,border-color .28s ease,transform .28s ease,box-shadow .28s ease}
.s8-cult:hover{background:#071F6B;border-color:var(--accent);transform:translateY(-6px);box-shadow:0 20px 60px rgba(7,31,107,.22)}
.s8-cult-n{position:absolute;right:16px;bottom:16px;font-size:72px;font-weight:800;line-height:1;color:rgba(7,31,107,.04);user-select:none;pointer-events:none}
.s8-cult:hover .s8-cult-n{color:rgba(255,255,255,.04)}
.s8-cult-i{color:var(--accent);margin-bottom:20px;transition:transform .28s ease;display:inline-block}
.s8-cult:hover .s8-cult-i{transform:scale(1.12)}
.s8-cult-k{color:rgba(7,31,107,.35);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;transition:color .28s}
.s8-cult:hover .s8-cult-k{color:rgba(255,255,255,.4)}
.s8-cult-t{color:#071F6B;font-size:15.3px;font-weight:800;letter-spacing:-.01em;margin-bottom:14px;line-height:1.2;transition:color .28s}
.s8-cult:hover .s8-cult-t{color:#fff}
.s8-cult-d{color:rgba(7,31,107,.6);font-size:14px;line-height:1.7;transition:color .28s}
.s8-cult:hover .s8-cult-d{color:rgba(255,255,255,.62)}

/* Páginas comuns (política de privacidade etc.): sem numeração automática dos títulos */
.s8-article--plain h2::before{content:none;margin:0}
.s8-article--plain h2{font-size:clamp(20px,2.2vw,28px);margin-top:44px}
.s8-article--plain h3{margin-top:28px}

/* Conteúdo protegido: vídeo incorporado responsivo */
.s8-video{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--s8-r);overflow:hidden;background:#04194F}
.s8-video iframe,.s8-video video{position:absolute;inset:0;width:100%;height:100%;border:0}
.s8-gate-item .s8-article{max-width:none}

/* Conteúdo protegido já liberado: continua o artigo (mesma coluna e tipografia), sem fundo cinza nem quadro */
.s8-gate.is-unlocked{background:#fff!important;border-top:0!important;padding-top:0;margin-top:-40px}
.s8-gate.is-unlocked .s8-gate-wrap{max-width:1160px}
.s8-gate.is-unlocked .s8-gate-card{background:transparent;border:0;border-radius:0;padding:0}
/* Vídeo em toda a largura do conteúdo (alinhado ao título e à foto); textos continuam com largura de leitura (920 px). */
.s8-gate.is-unlocked .s8-gate-item{max-width:none}
.s8-gate.is-unlocked .s8-gate-item>*:not(.s8-video){max-width:var(--s8-measure)}
.s8-gate.is-unlocked .s8-gate-item .s8-article{max-width:var(--s8-measure)}
.s8-gate.is-unlocked .s8-gate-item h3{font-size:clamp(18px,2vw,24px);font-weight:800;color:#071F6B;letter-spacing:-.02em;margin:36px 0 16px}
.s8-gate.is-unlocked .s8-gate-item:first-child h3{margin-top:0}
.s8-gate.is-unlocked .s8-video{box-shadow:0 12px 40px rgba(7,31,107,.14)}
.s8-gate-thanks{margin:0 0 28px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#3960B7}
.s8-gate-thanks:before{content:"\2713";margin-right:8px;color:#2FA37A}

/* Faixa de clientes — estável no Safari: camada própria, sem saltos no reinício do loop */
.animate-marquee-left,.animate-marquee-right{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.s8-logo{transform:translateZ(0);-webkit-transform:translateZ(0)}
@keyframes marquee-left{0%{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes marquee-right{0%{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}

.s8-ne{display:inline-block;flex-shrink:0;vertical-align:-1px}
.group:hover .s8-ne{transform:translate(2px,-2px)}
.s8-ne{transition:transform .2s ease}

/* Utilitários responsivos usados nos ajustes de mobile (o theme.css é pré-compilado e não os inclui) */
@media (min-width:768px){.md\:whitespace-nowrap{white-space:nowrap}.md\:self-auto{align-self:auto}}

/* Solutions (Supply Chain): no celular o texto vem antes da foto, para nunca haver duas fotos seguidas */
.order-1{order:1}.order-2{order:2}
@media (min-width:1024px){.lg\:order-1{order:1}.lg\:order-2{order:2}}
@media (max-width:1023px){.solution-section .min-h-\[480px\]{min-height:340px}}

.s8-article blockquote{margin:1.6em 0;padding:4px 0 4px 22px;border-left:3px solid #7BE7BE}.s8-article blockquote p{font-size:18px;font-weight:600;color:#071F6B;line-height:1.6}

/* Tipografia: títulos equilibrados (evita palavra sozinha na última linha, ex.: "por" separado de "medido"; "Gás" órfão), parágrafos sem órfã, sem ligadura fi/fl (o "i" de "perfil" aparecia cortado). */
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
body{font-variant-ligatures:no-common-ligatures;font-feature-settings:"liga" 0,"clig" 0}

/* ===== Mobile (revisão) ===== */
@media (max-width:767px){
	/* Home: menos espaço vertical entre as seções (antes 80–96px) */
	.home main>section:not(.s8-hero){padding-top:56px!important;padding-bottom:56px!important}
	/* Páginas internas (ex.: Careers) com 96px fixo */
	main>section[style*="padding:96px 0"]{padding-top:60px!important;padding-bottom:64px!important}
	/* Hero: texto centralizado na altura útil (entre o cabeçalho e a barra de setas) */
	.s8-hero>.relative.z-10{justify-content:center;padding-top:72px;padding-bottom:76px}
	/* Texto maior e em mais linhas: preenche melhor a altura do celular */
	/* o tamanho acompanha a largura da tela: a palavra mais longa (ex.: "Transformamos") sempre cabe */
	.s8-hc h1{font-size:clamp(34px,calc((100vw - 44px)/7.7),58px)!important;line-height:1.03;overflow-wrap:break-word}
	.s8-hc h1.s8-h1-long{font-size:clamp(30px,calc((100vw - 44px)/9.2),40px)!important;line-height:1.08}
	.s8-hc p.font-semibold{font-size:clamp(20px,5.8vw,23px)!important;line-height:1.35}
	.s8-hc p.font-bold,.s8-hc p.text-mint{font-size:13px!important}
	.s8-hc .flex.flex-wrap{gap:22px 30px!important}
	.s8-hc .flex.flex-wrap>div>div:first-child{font-size:12px!important}
	.s8-hc .flex.flex-wrap>div>div:last-child{font-size:16px!important}
	.s8-hc a.s8-cta-link{font-size:17px!important}
}
@media (max-width:639px){
	/* Footer: centralizado e com mais contraste */
	footer{text-align:center}
	footer img{margin-left:auto;margin-right:auto}
	footer p{margin-left:auto;margin-right:auto;color:rgba(255,255,255,.78)}
	footer ul{align-items:center}
	footer li a{color:rgba(255,255,255,.85);font-size:14px}
	footer p a{color:inherit}
	footer li a:hover,footer p a:hover,footer a:hover{color:#7BE7BE}
	footer .grid{grid-template-columns:1fr 1fr;gap:32px 16px}
	footer .grid>div:nth-child(1),footer .grid>div:nth-child(4){grid-column:1/-1}
	footer .grid>div:nth-child(1){padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.1)}
	footer .grid>div:nth-child(4){padding-top:32px;border-top:1px solid rgba(255,255,255,.1)}
	footer .grid p{max-width:300px}
	footer .grid a[href*="linkedin"]{justify-content:center;color:rgba(255,255,255,.85);font-size:14px}
	footer .pt-7,footer .pt-7 div{align-items:center;justify-content:center;text-align:center}
	footer .pt-7 p{color:rgba(255,255,255,.62)}
}
