/* Ajustes 10/2026 — redes sociais oficiais, depoimentos sem foto e seções da página Soluções */

/* Redes sociais: logos oficiais em botões circulares */
.social a,.footer-social a{display:inline-grid;place-items:center;width:36px;height:36px;margin-right:10px;border-radius:50%;border:1px solid rgba(255,255,255,.32);color:#fff;transition:background .2s ease}
.social a:hover,.footer-social a:hover{background:rgba(255,255,255,.14)}
.social svg,.footer-social svg{display:block}

/* Depoimentos da home sem foto: nome e cargo ocupam a linha */
.test-grid footer{grid-template-columns:1fr auto}

/* Cabeçalhos de seção da página Soluções */
.companies-services .sec-head{max-width:1400px;margin:0 auto 26px;text-align:center}
.companies-services .sec-head .eyebrow{color:#643ee4;letter-spacing:2px}
.companies-services .sec-head h2{font-size:34px;line-height:1.1;margin:9px 0 6px}
.companies-services .sec-head p{margin:0;color:#68719a;font-size:14px}
.companies-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.companies-grid.compact article{min-height:0;align-items:center}
@media(max-width:850px){.companies-grid.cols-3{grid-template-columns:1fr}.companies-services .sec-head h2{font-size:27px}}


/* ---- Ícones das soluções na home: maiores e de acordo com cada título ---- */
.solution-grid i{width:60px;height:60px;margin-bottom:15px}
.solution-grid i:before{width:33px;height:33px}
.solution-grid article:nth-child(2) i:before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M9%202h6v2h3v18H6V4h3V2Zm0%204H8v14h8V6h-1v2H9V6Zm2-2v2h2V4h-2Zm-.2%2013.4-2.6-2.6%201.4-1.4%201.2%201.2%203.4-3.4%201.4%201.4-4.8%204.8Z%27%2F%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M9%202h6v2h3v18H6V4h3V2Zm0%204H8v14h8V6h-1v2H9V6Zm2-2v2h2V4h-2Zm-.2%2013.4-2.6-2.6%201.4-1.4%201.2%201.2%203.4-3.4%201.4%201.4-4.8%204.8Z%27%2F%3E%3C%2Fsvg%3E")}
.solution-grid article:nth-child(3) i:before{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M11%202a9%209%200%201%200%205.7%2016l4.6%204.6%201.4-1.4-4.6-4.6A9%209%200%200%200%2011%202Zm0%202a7%207%200%201%201%200%2014%207%207%200%200%201%200-14Zm0%203a4%204%200%201%200%200%208%204%204%200%200%200%200-8Zm0%202a2%202%200%201%201%200%204%202%202%200%200%201%200-4Z%27%2F%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M11%202a9%209%200%201%200%205.7%2016l4.6%204.6%201.4-1.4-4.6-4.6A9%209%200%200%200%2011%202Zm0%202a7%207%200%201%201%200%2014%207%207%200%200%201%200-14Zm0%203a4%204%200%201%200%200%208%204%204%200%200%200%200-8Zm0%202a2%202%200%201%201%200%204%202%202%200%200%201%200-4Z%27%2F%3E%3C%2Fsvg%3E")}

/* ---- Ícones das informações da vaga ---- */
.job-meta span{display:inline-flex;align-items:center;gap:7px}
.job-meta span:before{content:'';width:15px;height:15px;flex:0 0 15px;background:linear-gradient(135deg,#174cf1,#7736ee);mask:center/contain no-repeat var(--i);-webkit-mask:center/contain no-repeat var(--i)}
.job-meta .jm-local{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M12%202a7%207%200%200%200-7%207c0%205.2%207%2013%207%2013s7-7.8%207-13a7%207%200%200%200-7-7Zm0%209.5a2.5%202.5%200%201%201%200-5%202.5%202.5%200%200%201%200%205Z%27%2F%3E%3C%2Fsvg%3E")}
.job-meta .jm-modal{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M4%2022h16V2H4v20Zm2-2V4h12v16h-3v-4H9v4H6Zm5%200v-2h2v2h-2ZM8%206h3v3H8V6Zm5%200h3v3h-3V6Zm-5%205h3v3H8v-3Zm5%200h3v3h-3v-3Z%27%2F%3E%3C%2Fsvg%3E")}
.job-meta .jm-contrato{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M14%202H6a2%202%200%200%200-2%202v16a2%202%200%200%200%202%202h12a2%202%200%200%200%202-2V8l-6-6Zm0%202.4L17.6%208H14V4.4ZM8%2012h8v2H8v-2Zm0%204h8v2H8v-2Z%27%2F%3E%3C%2Fsvg%3E")}
.job-meta .jm-area{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M9%204h6a2%202%200%200%201%202%202v1h4v13H3V7h4V6a2%202%200%200%201%202-2Zm0%203h6V6H9v1ZM5%209v9h14V9H5Z%27%2F%3E%3C%2Fsvg%3E")}
.hero-job-search label>span{display:inline-grid;place-items:center;width:18px;height:18px;font-size:0}
.hero-job-search label>span:before{content:'';width:18px;height:18px;background:#633be0;mask:center/contain no-repeat var(--i);-webkit-mask:center/contain no-repeat var(--i)}
.hero-job-search .hs-term{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M10%202a8%208%200%201%200%204.9%2014.3l5.4%205.4%201.4-1.4-5.4-5.4A8%208%200%200%200%2010%202Zm0%202a6%206%200%201%201%200%2012%206%206%200%200%201%200-12Z%27%2F%3E%3C%2Fsvg%3E")}
.hero-job-search .hs-local{--i:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M12%202a7%207%200%200%200-7%207c0%205.2%207%2013%207%2013s7-7.8%207-13a7%207%200%200%200-7-7Zm0%209.5a2.5%202.5%200%201%201%200-5%202.5%202.5%200%200%201%200%205Z%27%2F%3E%3C%2Fsvg%3E")}

/* ======================= MOBILE / TELAS PEQUENAS ======================= */

/* Rodapé da home: as regras adicionadas no fim do home.css anulavam o layout
   mobile original, deixando 4 colunas espremidas a 375px. */
@media (max-width:850px){
  .home-footer{grid-template-columns:1fr 1fr;gap:28px}
  .home-footer .footer-brand{grid-column:1/-1}
}
@media (max-width:620px){
  .home-footer{grid-template-columns:1fr;gap:26px;padding-left:22px;padding-right:22px}
  .home-footer img{width:min(250px,100%);height:auto}
  .home-footer p{margin-top:10px}
  .footer-bottom{display:block;margin-top:18px}
  .footer-bottom span{display:block;margin-top:8px}
}

/* Faixa de clientes: em telas pequenas vira grade de 2 colunas centralizada */
@media (max-width:620px){
  .brand-row{display:grid;grid-template-columns:1fr 1fr;justify-items:center;align-items:center;gap:22px 18px;margin-top:20px}
  .brand-row img{max-width:100%!important;height:34px!important}
}

/* Banner da home: altura proporcional ao conteúdo, sem sobra no fim */
@media (max-width:850px){.hero-shell{min-height:0;height:auto;padding-bottom:30px}.hero-main{min-height:0;padding-bottom:30px}}
@media (max-width:520px){
  .hero-shell{min-height:0;height:auto}
  .hero-copy h1{font-size:34px}
  .hero-copy>p{font-size:15px}
  .kicker{letter-spacing:2.4px;font-size:10.5px}
}

/* Depoimentos e perguntas frequentes com respiro menor no celular */
@media (max-width:520px){
  .testimonials{padding-top:42px;padding-bottom:42px}
  .test-grid>article{min-height:0;padding:19px}
  .faq-section{padding-top:42px;padding-bottom:42px}
  .about h2,.testimonials h2,.trusted h2,.faq-section h2{font-size:28px}
  .solutions h2{font-size:24px}
}

/* Página Soluções: cabeçalhos e cards mais compactos no celular */
@media (max-width:600px){
  .companies-services .sec-head{margin-bottom:20px}
  .companies-services .sec-head h2{font-size:25px}
  .companies-grid.compact article{align-items:flex-start}
}

/* Contato e vagas: nada deve estourar a largura da tela */
@media (max-width:600px){
  .channel-list small,.job-company,.job-meta span{overflow-wrap:anywhere}
  .job-title-line h3{font-size:16px}
}

/* =====================================================================
   REVISÃO DE UX/UI MOBILE — 28/10/2026
   Legibilidade (corpo nunca abaixo de 13.5px), alvos de toque de 48px,
   respiros proporcionais e remoção de espaços mortos nos banners.
   ===================================================================== */

@media (max-width:600px){

  /* --- Tipografia base: nada de texto miúdo em tela pequena --- */
  body{font-size:15px;line-height:1.5}
  .kicker,.eyebrow{font-size:10px;letter-spacing:1.6px;line-height:1.5}

  /* --- Botões: alvo de toque confortável e seta junto do rótulo --- */
  .btn,.button{min-height:50px}
  .hero-actions .btn{justify-content:center}
  .hero-actions .btn.white b,.btn.white b{margin-left:14px}

  /* --- HOME · banner --- */
  .hero-main{padding-top:34px;padding-bottom:34px}
  .hero-main:before{background:linear-gradient(180deg,rgba(3,20,85,.30) 0%,rgba(3,20,85,.55) 55%,rgba(3,20,85,.72) 100%)}
  .hero-copy h1{font-size:33px;line-height:1.08;letter-spacing:-.4px}
  .hero-copy>p{font-size:15.5px;line-height:1.5;max-width:none}
  .hero-actions{margin:22px 0 0}

  /* --- HOME · faixa de benefícios: vira lista com divisórias --- */
  .benefit-strip{padding:8px 20px;gap:0}
  .benefit-strip article{padding:15px 0;border-bottom:1px solid #e8ebf5;gap:14px}
  .benefit-strip article:last-child{border-bottom:0}
  .benefit-strip b{font-size:15px}
  .benefit-strip span{font-size:12.5px}
  .benefit-strip article>i:before{width:30px;height:30px}

  /* --- HOME · quem somos --- */
  .about{padding-top:42px;padding-bottom:42px;gap:26px}
  .about-copy p{font-size:14.5px}
  .about-photo blockquote{font-size:14px;padding:18px 20px}

  /* --- HOME · indicadores --- */
  .numbers article{min-height:74px}
  .numbers b{font-size:24px}
  .numbers span{font-size:12.5px}

  /* --- HOME · soluções: títulos e textos legíveis sobre o azul --- */
  .solutions{padding-top:44px;padding-bottom:44px}
  .solution-grid article{padding:24px 20px}
  .solution-grid b{font-size:16px;line-height:1.3}
  .solution-grid span{font-size:13.5px;line-height:1.5;color:#e2e9ff;margin-top:8px}

  /* --- HOME · depoimentos: sem aspa solta e com separação do autor --- */
  .test-head p{font-size:14.5px}
  .test-grid>article{padding:22px 20px}
  .test-grid>article>strong{display:none}
  .test-grid>article>p{font-size:14.5px;line-height:1.55;margin:14px 0 18px}
  .test-grid footer{padding-top:14px;border-top:1px solid #eceffa}
  .test-grid footer b{font-size:14.5px}
  .test-grid footer small{font-size:12.5px}
  .stars{font-size:15px}

  /* --- HOME · clientes --- */
  .trusted{padding-top:34px;padding-bottom:38px}

  /* --- HOME · perguntas frequentes --- */
  .faq-intro>p{font-size:14.5px}
  .faq-list button{font-size:14.5px;line-height:1.35;padding:16px 0}
  .faq-list p{font-size:14px;line-height:1.55;padding-left:41px}

  /* --- HOME · chamada final --- */
  .final-cta{padding:40px 20px}
  .final-cta h2{font-size:28px;line-height:1.14}
  .final-cta h2 br{display:none}
  .final-cta p{font-size:14.5px}
  .cta-benefits span{font-size:13.5px}

  /* --- PÁGINAS INTERNAS · banners sem espaço morto --- */
  .about-hero,.companies-hero,.contact-hero,.jobs-hero{min-height:0;height:auto;padding-top:118px;padding-bottom:40px}
  .about-hero h1,.companies-hero h1,.contact-hero h1,.jobs-hero h1{font-size:34px;line-height:1.08}
  .about-hero p,.companies-hero p,.contact-hero p,.jobs-hero p{font-size:15.5px;line-height:1.5}

  /* --- PÁGINAS INTERNAS · cabeçalhos de seção e cards --- */
  .companies-services{padding-top:44px;padding-bottom:44px}
  .companies-services .sec-head h2{font-size:24px;line-height:1.18}
  .companies-services .sec-head p{font-size:14px}
  .companies-grid article{gap:16px;padding:20px 18px}
  .companies-grid h2{font-size:16.5px;line-height:1.3}
  .companies-grid p{font-size:13.5px;line-height:1.5}
  .why-copy h2{font-size:27px;line-height:1.15}
  .why-copy li{padding:15px 16px}
  .why-copy strong{font-size:14.5px}
  .why-copy small{font-size:13px}
  .companies-cta h2{font-size:24px;line-height:1.2}
  .companies-cta p{font-size:14px}
  .companies-cta .button{width:100%}

  /* --- SOBRE --- */
  .about-section-head h2{font-size:27px}
  .about-section-head p,.team-copy p{font-size:14.5px;line-height:1.55}
  .value-grid p{font-size:13.5px}

  /* --- CONTATO: 16px nos campos evita o zoom automático do iPhone --- */
  .contact-form input,.contact-form textarea,.contact-form select{font-size:16px}
  .contact-form label>span{font-size:13px}
  .channel-list strong{font-size:14.5px}
  .channel-list small{font-size:13px}
  .contact-heading h2{font-size:20px}
  .contact-heading p{font-size:13px}

  /* --- VAGAS --- */
  .hero-job-search input{font-size:16px}
  .jobs-filters label{margin:5px 0;font-size:14px;align-items:center;min-height:30px}
  .jobs-filters input{width:19px;height:19px}
  .job-title-line h3{font-size:16.5px}
  .job-company{font-size:13px}
  .job-meta{gap:10px 14px;font-size:12.5px}
  .job-details{min-height:46px;display:flex;align-items:center;justify-content:center}
  .jobs-cta h2{font-size:24px;line-height:1.2}
  .jobs-cta p{font-size:14px}

  /* --- RODAPÉS --- */
  .home-footer p,.public-footer p{font-size:13px;line-height:1.55}
  .home-footer a,.home-footer span,.public-footer a,.public-footer span{font-size:13.5px;margin:8px 0}
  .home-footer b,.public-footer b{font-size:14.5px}
  .footer-bottom,.copyright{font-size:12px}
  .social a,.footer-social a{width:40px;height:40px}
}

/* Telas bem estreitas (iPhone SE e afins) */
@media (max-width:380px){
  .hero-copy h1{font-size:30px}
  .about h2,.testimonials h2,.trusted h2,.faq-section h2{font-size:25px}
  .final-cta h2{font-size:25px}
  .about-hero h1,.companies-hero h1,.contact-hero h1,.jobs-hero h1{font-size:30px}
}

/* =====================================================================
   MOBILE v2 — 28/10/2026
   1) banner: foto em cima, texto embaixo (nada de texto sobre a imagem)
   2) faixa de benefícios: 2 x 2
   3) depoimentos: carrossel com arrasto + setas
   ===================================================================== */

@media (max-width:600px){

  /* ---------- 1. BANNER DA HOME ---------- */
  .hero-shell{
    background:linear-gradient(168deg,#04205c 0%,#0a3f9c 48%,#5a27cf 100%);
    min-height:0;height:auto;padding-top:0;padding-bottom:0;overflow:hidden}
  .hero-shell:after{display:none}
  .hero-shell:before{
    content:'';position:absolute;top:0;left:0;right:0;height:258px;
    background-image:linear-gradient(to bottom,rgba(4,32,92,.12) 0%,rgba(4,32,92,.06) 42%,rgba(4,32,92,.72) 84%,#04205c 100%),
                     url('/assets/img/home-banner-equipe.png');
    background-position:center,center 20%;background-size:cover,cover;background-repeat:no-repeat}
  .hero-main{position:relative;padding:276px 20px 40px;min-height:0;height:auto}
  .hero-main:before{display:none}
  .hero-copy{max-width:none}
  .hero-copy h1{font-size:32px;margin-top:4px}

  /* ---------- 1b. BANNERS DAS PÁGINAS INTERNAS ---------- */
  .about-hero,.companies-hero,.contact-hero,.jobs-hero{
    display:block;height:auto;min-height:0;padding:0 20px 38px;position:relative;
    background:linear-gradient(168deg,#06235f 0%,#0a44a6 48%,#5b28d0 100%)}
  .about-hero:after,.companies-hero:after,.contact-hero:after,.jobs-hero:after{display:none}
  .about-hero:before,.companies-hero:before,.contact-hero:before,.jobs-hero:before{
    content:'';display:block;height:232px;margin:0 -20px 24px;
    background-position:center,center 20%;background-size:cover,cover;background-repeat:no-repeat}
  .about-hero:before{background-image:linear-gradient(to bottom,rgba(6,35,95,.10) 0%,rgba(6,35,95,.06) 45%,rgba(6,35,95,.74) 85%,#06235f 100%),url('/assets/img/sobre-banner-definitivo.png')}
  .companies-hero:before{background-image:linear-gradient(to bottom,rgba(6,35,95,.10) 0%,rgba(6,35,95,.06) 45%,rgba(6,35,95,.74) 85%,#06235f 100%),url('/assets/img/empresas-banner-definitivo.png')}
  .companies-hero.hero-solucoes:before{background-image:linear-gradient(to bottom,rgba(6,35,95,.10) 0%,rgba(6,35,95,.06) 45%,rgba(6,35,95,.74) 85%,#06235f 100%),url('/assets/img/solucoes-banner-definitivo.png')}
  .contact-hero:before{background-image:linear-gradient(to bottom,rgba(6,35,95,.10) 0%,rgba(6,35,95,.06) 45%,rgba(6,35,95,.74) 85%,#06235f 100%),url('/assets/img/contato-banner-definitivo.png')}
  .jobs-hero:before{background-image:linear-gradient(to bottom,rgba(6,35,95,.10) 0%,rgba(6,35,95,.06) 45%,rgba(6,35,95,.74) 85%,#06235f 100%),url('/assets/img/vagas-banner-definitivo.png')}
  .about-hero-copy,.companies-hero-copy,.contact-hero-copy,.jobs-hero-copy{width:100%}
  .hero-job-search{margin-top:22px}

  /* ---------- 2. FAIXA DE BENEFÍCIOS EM 2 x 2 ---------- */
  .benefit-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:22px 20px}
  .benefit-strip article{display:block;padding:16px 14px;border:1px solid #e7eaf6;border-right:1px solid #e7eaf6;
    border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(28,40,91,.04)}
  .benefit-strip article>i{display:block;margin-bottom:9px}
  .benefit-strip article>i:before{width:27px;height:27px}
  .benefit-strip b{font-size:13.5px;line-height:1.25;display:block}
  .benefit-strip span{font-size:11.5px;line-height:1.38;margin-top:4px}

  /* ---------- 3. DEPOIMENTOS EM CARROSSEL ---------- */
  .test-head{display:block;margin-bottom:18px}
  .test-head p{margin:10px 0 0}
  .test-head .arrows{display:flex;margin-top:16px}
  .arrows button{width:46px;height:46px}
  .test-grid{
    display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:85%;
    gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;
    padding:4px 20px 16px;margin:0 -20px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .test-grid::-webkit-scrollbar{display:none}
  .test-grid>article{scroll-snap-align:center;min-height:0}
}

/* A página Soluções usa a estrutura de companies.css, mas com o banner próprio.
   (antes isso era um style inline, que impedia o CSS mobile de reposicionar a foto) */
.companies-hero.hero-solucoes{background-image:url('/assets/img/solucoes-banner-definitivo.png')}
