/* Footer Theme - estilos isolados do footer da homepage */
/* Wrapper do conteúdo do rodapé: use SEMPRE <div class="gl-footer-inner"> — NÃO use <main> dentro de <footer>
   (HTML inválido: main não pode ser descendente de footer; o navegador pode “reparar” o DOM e quebrar o layout). */
/* Mantemos também "footer main" nos seletores só por compatibilidade com HTML antigo em cache/backups. */
footer .gl-footer-inner{
  display:block;
  width:100%;
  max-width:none;
  box-sizing:border-box;
}
footer main,
footer .gl-footer-inner{
  padding:50px 0;
  background:#f2f2f2;
}
footer main ul,
footer .gl-footer-inner ul{
  list-style:none;
  margin:0;
  padding:0;
}
footer main ul li,
footer .gl-footer-inner ul li{
  list-style:none;
}
footer main h6,
footer .gl-footer-inner h6{
  font-weight:400;
  font-size:16px;
  line-height:26px;
  margin-bottom:0;
}
footer main h5,
footer .gl-footer-inner h5{
  font-weight:900;
  font-size:14px;
  line-height:normal;
  margin-bottom:15px;
  color:#1d1d1d;
}
footer .footer-theme-container{
  max-width:960px;
  margin-right:auto;
  margin-left:auto;
  padding-right:var(--bs-gutter-x,.75rem);
  padding-left:var(--bs-gutter-x,.75rem);
}
footer main .top,
footer .gl-footer-inner .top{
  margin-bottom:30px;
}
footer main .top .clients,
footer .gl-footer-inner .top .clients{
  margin-bottom:30px;
}
footer main .top .clients h6,
footer .gl-footer-inner .top .clients h6{
  margin-bottom:19px;
  color:#1d1d1d;
}
footer main .top .clients .list li,
footer .gl-footer-inner .top .clients .list li{
  display:inline-block;
}
footer main .top .clients .list li:not(:first-of-type),
footer .gl-footer-inner .top .clients .list li:not(:first-of-type){
  margin-left:-18px;
}
footer main .top .clients .list img,
footer .gl-footer-inner .top .clients .list img{
  width:44px;
  height:44px;
}
footer main .top .optin .sf-form,
footer .gl-footer-inner .top .optin .sf-form{
  margin-bottom:0;
}
footer main .top .optin .sf-form>.row,
footer .gl-footer-inner .top .optin .sf-form>.row{
  --bs-gutter-y:7px;
}
footer main .top .optin h6,
footer .gl-footer-inner .top .optin h6{
  margin-bottom:25px;
  font-weight:900;
  color:#1d1d1d;
}
footer main .middle,
footer .gl-footer-inner .middle{
  margin-bottom:45px;
}
footer main .middle h6,
footer .gl-footer-inner .middle h6{
  margin-bottom:20px;
}
footer main .bottom .logo,
footer .gl-footer-inner .bottom .logo{
  margin-bottom:25px;
  display:inline-block;
  width:145px;
}
footer main .bottom li,
footer .gl-footer-inner .bottom li{
  margin-bottom:15px;
}
footer main .bottom li:last-of-type,
footer .gl-footer-inner .bottom li:last-of-type{
  margin-bottom:25px;
}
footer main .bottom a,
footer .gl-footer-inner .bottom a{
  text-decoration:none;
  color:#1d1d1f;
  font-weight:400;
  font-size:12px;
  line-height:normal;
  transition:.3s;
}
footer main .bottom a span,
footer .gl-footer-inner .bottom a span{
  vertical-align:sub;
  display:inline-block;
  margin-left:5px;
}
footer main .bottom a:hover,
footer .gl-footer-inner .bottom a:hover{
  color:#f36;
}
footer .copyright{padding:25px 0;background:#fff}
footer .copyright p{margin-bottom:0;font-weight:400;font-size:12px;line-height:18px}
footer .copyright a{color:#f36;text-decoration:none;transition:.3s}
footer .copyright a:hover{color:#945ffd}

/* Botões optin do footer */
footer main .top .optin .btn,
footer .gl-footer-inner .top .optin .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  padding:10px 16px;
  border-radius:6px;
  font-size:14px;
  font-weight:600;
  cursor:pointer;
  border:none;
  transition:.3s;
}

@media (min-width:576px){
  footer main .top,
  footer .gl-footer-inner .top{
    margin-bottom:30px;
  }
  footer main .top .optin .sf-form>.row,
  footer .gl-footer-inner .top .optin .sf-form>.row{
    --bs-gutter-x:7px;
    --bs-gutter-y:0;
  }
}

@media (min-width:768px){
  footer main h5,
  footer .gl-footer-inner h5{
    font-size:20px;
    margin-bottom:25px;
    color:#1d1d1d;
    font-weight:900;
  }
  footer main .bottom a,
  footer .gl-footer-inner .bottom a{
    font-size:16px;
  }
  footer main .bottom li:last-of-type,
  footer .gl-footer-inner .bottom li:last-of-type{
    margin-bottom:0;
  }
}

@media (min-width:992px){
  footer main,
  footer .gl-footer-inner{
    padding:80px 0;
  }
  footer main .top,
  footer .gl-footer-inner .top{
    margin-bottom:100px;
  }
  footer main .top .clients,
  footer .gl-footer-inner .top .clients{
    margin-bottom:0;
  }
  footer main .top .optin .sf-form>.row,
  footer .gl-footer-inner .top .optin .sf-form>.row{
    --bs-gutter-x:20px;
  }
  footer main .middle,
  footer .gl-footer-inner .middle{
    margin-bottom:100px;
  }
}

/* Reforço: grade do rodapé quando não há `footer main` (ex.: como-funciona com único <main> no conteúdo).
   A homepage usa `footer main` + main.css; demais landings usam `.gl-footer-inner`. */
footer .gl-footer-inner .row{
  display:flex !important;
  flex-wrap:wrap !important;
}
footer .gl-footer-inner .top .clients .list li{
  display:inline-block !important;
}

/* Como Funciona (HTML estático): o <style> inline da página vem antes deste arquivo quando
   o link é colocado após </style>; estas regras têm especificidade extra para a grade e os avatares. */
body.gl-como-funciona footer .gl-footer-inner .row{
  display:flex !important;
  flex-wrap:wrap !important;
  margin-right:-0.75rem;
  margin-left:-0.75rem;
  box-sizing:border-box;
}
body.gl-como-funciona footer .gl-footer-inner .top .clients .list li{
  display:inline-block !important;
  vertical-align:middle;
}
body.gl-como-funciona footer .gl-footer-inner .top .clients .list li:not(:first-of-type){
  margin-left:-18px;
}

/* Empresas parceiras — faixa de confiança (legível, grid, foco visível; alinhado a boas práticas de footer 2025–2026) */
footer main .gl-footer-partners,
footer .gl-footer-inner .gl-footer-partners{
  --gl-partners-radius: 16px;
  --gl-partners-pad: clamp(16px, 3vw, 35px);
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin: 32px auto 0;
  padding: var(--gl-partners-pad);
  border-radius: var(--gl-partners-radius);
  text-align: center;
  background: linear-gradient(165deg, rgba(255, 255, 255, .92) 0%, rgba(250, 248, 255, .78) 45%, rgba(243, 239, 255, .65) 100%);
  border: 1px solid rgba(148, 95, 253, .14);
  box-shadow: 0 10px 36px rgba(20, 12, 60, .06), inset 0 1px 0 rgba(255, 255, 255, .85);
}
@media (min-width: 640px){
  footer main .gl-footer-partners,
  footer .gl-footer-inner .gl-footer-partners{
    grid-template-columns:1fr 1fr;
    column-gap:16px;
    row-gap:10px;
    text-align:left;
  }
  footer main .gl-footer-partners__title,
  footer .gl-footer-inner .gl-footer-partners__title{
    grid-column:1 / -1;
    text-align:center;
  }
}
footer main .gl-footer-partners__title,
footer .gl-footer-inner .gl-footer-partners__title{
  margin:0 0 2px;
  font-size:12px;
  font-weight:800;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:#5c5c61;
}
footer main .gl-footer-partners__text,
footer .gl-footer-inner .gl-footer-partners__text{
  margin:0;
  padding:14px 16px;
  font-size:14px;
  line-height:1.5;
  color:#2d2d32;
  border-radius:12px;
  background:rgba(255, 255, 255, 0.55);
  border:1px solid rgba(0, 0, 0, 0.06);
  box-sizing:border-box;
  text-align:center;
}
@media (min-width: 640px){
  footer main .gl-footer-partners__text,
  footer .gl-footer-inner .gl-footer-partners__text{
    min-height:5.25rem;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    text-align:left;
  }
}
footer main .gl-footer-partners__link,
footer .gl-footer-inner .gl-footer-partners__link{
  color:#6b42e0;
  font-weight:700;
  text-decoration:none;
  border-radius:4px;
  padding:2px;
  margin:-2px;
}
footer main .gl-footer-partners__link:hover,
footer .gl-footer-inner .gl-footer-partners__link:hover{
  text-decoration:underline;
  color:#f36;
}
footer main .gl-footer-partners__link:focus-visible,
footer .gl-footer-inner .gl-footer-partners__link:focus-visible{
  outline:2px solid rgba(148, 95, 253, 0.45);
  outline-offset:2px;
}

/* Aviso abaixo dos CTAs “grátis” (homepage: footer main; blog: .gl-footer-inner) */
footer main .top .optin::after,
footer .gl-footer-inner .top .optin::after{
  content:"Sem senha — entrega após confirmação" !important;
  display:flex !important;
  align-items:center;
  gap:8px;
  margin-top:14px !important;
  color:#5f5a70 !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
  line-height:1.35;
  max-width:100%;
}
