/* AIO V18 · Final accessibility & contrast pass.
   Scoped overrides only: preserve existing theme, service content and animations. */

/* Contato: typographic rhythm and separation from briefing copy. */
.aio-light .px-contact-area .px-contact-inf {color:#172d4c;max-width:100%;}
.aio-light .px-contact-area .px-contact-inf .px-section-subtitle.white-style {
  color:#1454b4!important;-webkit-text-fill-color:#1454b4!important;
  display:block;font-weight:700;letter-spacing:.09em;line-height:1.4;
}
.aio-light .px-contact-area .px-contact-inf h2.px-section-title {
  font-family:Inter,Arial,sans-serif!important;
  font-size:clamp(36px,3.75vw,56px)!important;
  font-weight:750!important;line-height:1.12!important;
  letter-spacing:-.045em!important;color:#172d4c!important;
  -webkit-text-fill-color:#172d4c!important;
  margin:20px 0 22px!important;
  max-width:100%;overflow-wrap:normal;word-break:normal;
}
.aio-light .px-contact-area .px-contact-inf .aio-light-text {
  display:block;color:#465873!important;-webkit-text-fill-color:#465873!important;
  font-size:17px;line-height:1.65;margin:0 0 25px;max-width:490px;
}
.aio-light .px-contact-area .px-contact-inf .aio-contact-number {
  color:#435a76!important;-webkit-text-fill-color:#435a76!important;
  font-size:14px;line-height:1.65;margin-top:14px;
}
.aio-light .px-contact-area .px-contact-inf .aio-contact-email a {
  color:#1356b9!important;-webkit-text-fill-color:#1356b9!important;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;
}
.aio-light .px-contact-area .px-contact-inf .aio-contact-email a:hover {
  color:#0a387c!important;-webkit-text-fill-color:#0a387c!important;
}
/* Legal identification: before this patch the global light layout displayed
   near-white text on a white background. */
.aio-light .px-contact-area .aio-v6-contact-legal {
  max-width:100%;padding:0;margin:29px 0 0;
  background:transparent;border:0;border-radius:0;
}
.aio-light .px-contact-area .aio-v6-contact-legal :is(strong,span,address) {
  color:#293e5a!important;-webkit-text-fill-color:#293e5a!important;
  overflow-wrap:anywhere;line-height:1.65;
}
.aio-light .px-contact-area .aio-v6-contact-legal .aio-v6-label {
  color:#1454b4!important;-webkit-text-fill-color:#1454b4!important;
  margin:0 0 12px;font-weight:750;
}
/* These CTA cards have saturated blue backgrounds and need light body text,
   independent of the global .aio-light paragraph rules. */
.aio-light :is(.aio-service-cta,.ax-cta,.aio-v6-cta,.aio-guide-cta,.ax-service-banner) :is(p,small) {
  color:#e7efff!important;-webkit-text-fill-color:#e7efff!important;
}
@media(max-width:991px){
 .aio-light .px-contact-area .px-contact-inf {margin-bottom:38px;}
 .aio-light .px-contact-area .px-contact-inf h2.px-section-title {font-size:clamp(36px,5vw,48px)!important;}
}
@media(max-width:575px){
 .aio-light .px-contact-area .px-contact-inf h2.px-section-title {font-size:clamp(35px,9vw,42px)!important;line-height:1.15!important;margin:14px 0 16px!important;}
 .aio-light .px-contact-area .px-contact-inf .aio-light-text {font-size:16px;line-height:1.65;margin-bottom:20px;}
 .aio-light .px-contact-area .aio-v6-contact-legal {padding:0;}
}

/* Privacy page: previously almost transparent white paragraphs on white. */
.aio-light.aio-privacy-page main#conteudo section.pt-120.pb-120 .aio-light-text,
.aio-light.aio-privacy-page main#conteudo section.pt-120.pb-120 .aio-light-text p {
  color:#465873!important;-webkit-text-fill-color:#465873!important;
  font-size:17px;line-height:1.75;
}
/* Minor contrast corrections found in the site-wide audit. */
.aio-light .al-faq-intro .ax-kicker {color:#ab450c!important;-webkit-text-fill-color:#ab450c!important;}
.aio-light .aio-v6-partner .aio-v6-partner-label {color:#217447!important;-webkit-text-fill-color:#217447!important;}
.aio-light .aio-v6-partner small {color:#586b86!important;-webkit-text-fill-color:#586b86!important;}
.aio-light :is(a.ax-button[href*="wa.me"],a.ab-whatsapp,.ab-floating-wa){
  background-color:#0a7b42!important;
}


/* AIO V19 | Equilíbrio editorial: mesmos eixos e proporções entre seções. */
/* O conteúdo permanece alinhado à esquerda para leitura, mas a coluna
   acompanha o centro dos blocos de plataformas. */
.aio-light .ax-service .al-platforms + .ax-lead{
  width:min(100%,800px);
  max-width:800px;
  margin:clamp(24px,3vw,36px) auto 0;
  text-align:left;
  font-size:clamp(18px,1.6vw,22px);
  line-height:1.65;
  text-wrap:pretty;
}
/* Encurta a passagem para a próxima seção sem quebrar o ritmo editorial. */
.aio-light .ax-service .ax-section:has(.al-platforms){padding-bottom:clamp(48px,5vw,72px)}
.aio-light .ax-service .ax-section:has(.al-platforms) + .ax-section{padding-top:clamp(54px,5.8vw,78px)}
/* As perguntas deixam de ficar limitadas a 1.000px no canto esquerdo de
   um contêiner maior; cabeçalho, perguntas e respostas usam o mesmo eixo. */
.aio-light .ax-service:not(.al-home) .ax-section.ax-rich > .ax-wrap:has(> .ax-details){
  max-width:1400px!important;
}
.aio-light .ax-service .ax-rich > .ax-wrap > .ax-details{
  width:100%;max-width:none;
  margin-inline:0;
}
.aio-light .ax-service .ax-rich > .ax-wrap > .ax-details summary{
  padding:clamp(19px,2.5vw,26px) clamp(15px,2.2vw,30px);
  align-items:center;
  line-height:1.45;
}
.aio-light .ax-service .ax-rich > .ax-wrap > .ax-details details > p{
  box-sizing:border-box;
  width:100%;max-width:none;
  padding:0 clamp(15px,2.2vw,30px) 24px;
  margin:0;
  font-size:clamp(15px,1.15vw,16px);
  line-height:1.75;
}
/* FAQ complementar de SEO: título e lista compartilham o contêiner,
   sem uma coluna lateral vazia que desloca a leitura. */
.aio-seo-local .aio-seo-faq-section{
  display:block;
  width:100%;
  max-width:1400px;
  margin-left:auto;margin-right:auto;
}
.aio-seo-local .aio-seo-faq-section > div:first-child{margin-bottom:24px}
.aio-seo-local .aio-seo-faq-section .aio-local-faq{width:100%;max-width:none}
.aio-seo-local .aio-local-faq details{margin-bottom:12px}
.aio-seo-local .aio-local-faq details > p{width:100%;max-width:none;box-sizing:border-box;line-height:1.7}
/* Parceiros: logo, descrição e CTA com espaço real entre as colunas. */
.aio-v6-partner{column-gap:clamp(20px,2.5vw,34px)}
.aio-v6-partner > div:nth-child(2){min-width:0;max-width:72ch}
.aio-v6-partner .aio-v6-button{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  white-space:nowrap;flex-wrap:nowrap;line-height:1.3;
  padding:15px 20px;max-width:none;
}
.aio-v6-partner .aio-v6-button > span:last-child{flex:none;font-size:16px;line-height:1}
@media(max-width:1000px){
  .aio-v6-partner .aio-v6-button{justify-self:start;grid-column:1/-1;}
}
@media(max-width:767px){
  .aio-light .ax-service .al-platforms + .ax-lead{
    width:100%;margin-top:23px;font-size:16px;line-height:1.7
  }
  .aio-light .ax-service .ax-rich > .ax-wrap:has(> .ax-details){max-width:100%}
  .aio-light .ax-service .ax-rich > .ax-wrap > .ax-details summary{
    font-size:clamp(16px,4.5vw,18px);padding:19px 8px;gap:14px;
  }
  .aio-light .ax-service .ax-rich > .ax-wrap > .ax-details details > p{
    padding:0 8px 20px;font-size:15px;max-width:100%;
  }
  .aio-seo-local .aio-seo-faq-section > div:first-child{margin-bottom:18px}
  .aio-v6-partner > div:nth-child(2){max-width:none}
  .aio-v6-partner .aio-v6-button{justify-self:stretch;grid-column:auto;width:100%;}
}
@media(max-width:359px){
  .aio-v6-partner .aio-v6-button{padding:14px 12px;font-size:12px}
}

/* AIO V22 | Contato integrado ao fundo da página, alinhado à grade geral. */
body.aio-light main#conteudo section.px-contact-area .px-contact-inf {
  color:#172d4c !important;
  min-width:0;
}
body.aio-light main#conteudo section.px-contact-area .px-contact-inf .px-section-subtitle {
  display:block;color:#1254b5!important;-webkit-text-fill-color:#1254b5!important;
  font-size:13px!important;line-height:1.55!important;font-weight:800;
  letter-spacing:.09em;
}
body.aio-light main#conteudo section.px-contact-area .px-contact-inf h2.px-section-title {
  display:block;position:static!important;transform:none!important;
  color:#172d4c!important;-webkit-text-fill-color:#172d4c!important;
  font-family:Inter,Arial,sans-serif!important;
  font-size:clamp(34px,3.25vw,52px)!important;
  line-height:1.16!important;
  font-weight:750!important;letter-spacing:-.035em!important;
  height:auto!important;min-height:0!important;
  margin:20px 0 20px!important;max-width:100%;
  overflow-wrap:normal;white-space:normal;word-break:normal;
}
body.aio-light main#conteudo section.px-contact-area .px-contact-inf > p.aio-light-text {
  display:block!important;clear:both!important;position:static!important;
  color:#43546e!important;-webkit-text-fill-color:#43546e!important;
  font-size:clamp(16px,1.2vw,18px)!important;line-height:1.75!important;
  margin:0 0 26px!important;max-width:48ch;
}
body.aio-light main#conteudo section.px-contact-area .px-contact-inf .aio-contact-number {
  color:#3a506d!important;-webkit-text-fill-color:#3a506d!important;
}
body.aio-light main#conteudo section.px-contact-area .px-contact-inf .aio-contact-email a {
  color:#1153ba!important;-webkit-text-fill-color:#1153ba!important;
  font-weight:650;text-underline-offset:3px;
}
body.aio-light main#conteudo section.px-contact-area .aio-v6-contact-legal {
  box-sizing:border-box;width:100%;max-width:100%;
  border:0!important;border-radius:0!important;
  background:transparent!important;background-color:transparent!important;color:#243952!important;
  padding:0!important;margin:28px 0 0!important;
  box-shadow:none!important;
}
body.aio-light main#conteudo section.px-contact-area .aio-v6-contact-legal :is(strong,span,address) {
  color:#243952!important;-webkit-text-fill-color:#243952!important;
  opacity:1!important;line-height:1.7!important;
  overflow-wrap:anywhere;
}
body.aio-light main#conteudo section.px-contact-area .aio-v6-contact-legal .aio-v6-label {
  color:#1454b4!important;-webkit-text-fill-color:#1454b4!important;
  font-size:12px!important;opacity:1!important;
}
@media(max-width:767px){
 body.aio-light main#conteudo section.px-contact-area .px-contact-inf h2.px-section-title {
    font-size:clamp(34px,8.7vw,43px)!important;line-height:1.18!important;
    margin:14px 0 22px!important;
 }
 body.aio-light main#conteudo section.px-contact-area .px-contact-inf > p.aio-light-text {
    font-size:16px!important;line-height:1.7!important;
 }
 body.aio-light main#conteudo section.px-contact-area .px-contact-inf {margin-bottom:36px;}
}

/* AIO V21 | FAQs: perguntas e respostas na mesma coluna de leitura. */
body.aio-light .ax-service .ax-rich > .ax-wrap > .ax-details details > p {
  width:100%;max-width:none;box-sizing:border-box;
  margin:0;
  padding-left:clamp(15px,2.2vw,30px);
  padding-right:clamp(15px,2.2vw,30px);
  overflow-wrap:break-word;
}
body.aio-light .ax-service .ax-rich > .ax-wrap > .ax-details details > summary {
  box-sizing:border-box;width:100%;
  padding-left:clamp(15px,2.2vw,30px);
  padding-right:clamp(15px,2.2vw,30px);
}
body.aio-light .aio-seo-local .aio-local-faq details > p {
  max-width:none;width:100%;overflow-wrap:break-word;
}
@media (max-width:767px) {
 body.aio-light .ax-service .ax-rich > .ax-wrap > .ax-details details > p {
   padding-left:8px;padding-right:8px;
 }
 body.aio-light .ax-service .ax-rich > .ax-wrap > .ax-details details > summary {
   padding-left:8px;padding-right:8px;
 }
}
