/* TXA Platform 0.54.8-X — acabamento da Home e responsividade */

/* Menu mobile: o template técnico herdava texto branco sobre o painel branco. */
.site-template-tech .mobile-menu{background:#111310;color:#fff;border-top-color:rgba(255,255,255,.1);box-shadow:0 18px 40px rgba(0,0,0,.28)}
.site-template-tech .mobile-menu nav a{color:#f4f4ef;border-bottom-color:rgba(255,255,255,.11)}
.site-template-tech .mobile-menu nav a:hover{color:var(--yellow)}
.site-template-tech .mobile-menu .site-btn-outline{background:transparent;border-color:rgba(255,255,255,.22);color:#fff}
.site-template-tech .mobile-menu .site-btn-primary{color:#111}

/* Home: composição mais firme sem alterar o conteúdo do CMS. */
.about-grid.no-media{grid-template-columns:minmax(0,1fr)}
.about-grid.no-media .about-copy{max-width:900px}
.about-media{min-width:0}
.about-image{background:#e7e7e1}
.about-image img{display:block}

.solution-logo{height:68px;display:flex;align-items:center;justify-content:flex-start;margin-bottom:6px}
.solution-logo img{width:auto;height:auto;max-width:160px;max-height:54px;object-fit:contain;object-position:left center}
.solution-card{display:flex;flex-direction:column}
.solution-card h3{margin-top:26px}
.solution-card p{flex:1}

.partner-card{height:142px;gap:9px;padding:16px}
.partner-logo-stage{width:100%;height:72px;display:flex;align-items:center;justify-content:center;padding:8px 12px}
.partner-logo-stage img{display:block;max-width:150px;max-height:56px;width:auto;height:auto;object-fit:contain}
.partner-card .partner-name{min-height:18px;display:block;text-align:center;line-height:1.25}

.cta-card .site-btn{flex:0 0 auto;text-align:center}
.footer-grid-refined>div{min-width:0}
.footer-grid-refined a{width:max-content;max-width:100%}

@media(max-width:980px){
  /* Corrige a regra mais específica do template tech que mantinha Sobre a TXA em duas colunas. */
  .site-template-tech .about-grid,.site-template-executive .about-grid{grid-template-columns:1fr;gap:28px}
  .about-media{order:0}.about-copy{order:1}
  .about-image{aspect-ratio:16/9}
  .about-grid.no-media .about-copy{max-width:none}
}

@media(max-width:650px){
  .mobile-menu-inner{padding-top:10px;padding-bottom:16px}
  .mobile-menu nav a{font-size:1rem;padding:14px 2px}
  .mobile-menu-actions{margin-top:14px}

  .about-strip,.site-template-tech .about-strip{padding:44px 0 58px}
  .about-grid,.site-template-tech .about-grid,.site-template-executive .about-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
  .about-image{aspect-ratio:4/3;border-radius:14px!important}
  .about-copy{width:100%;min-width:0}
  .about-copy h2{font-size:clamp(2.15rem,12vw,3.15rem);line-height:.98;margin:10px 0 16px}
  .about-copy .rich-copy,.about-copy p{font-size:1rem;line-height:1.65}

  .site-template-tech .public-card,.site-template-executive .public-card{min-height:0;padding:22px 20px}
  .public-card h3{margin:26px 0 10px;font-size:1.22rem}
  .public-card p{font-size:.98rem}
  .card-link{margin-top:18px}

  .solution-card{min-height:0!important;padding:22px 20px!important}
  .solution-logo{height:58px;margin-bottom:0}
  .solution-logo img{max-width:145px;max-height:48px}
  .solution-card h3{margin:20px 0 8px}

  .partner-card{height:132px}
  .partner-logo-stage{height:66px}
  .partner-logo-stage img{max-width:145px;max-height:52px}

  .cta-section{padding:24px 0 64px}
  .cta-card{gap:22px}
  .cta-card .site-btn{width:100%;white-space:normal;line-height:1.25;padding-inline:16px}
  .cta-card h2{font-size:clamp(2.1rem,11vw,3rem)}

  .site-footer{padding-top:44px}
  .footer-grid-refined{gap:26px}
}

/* 0.54.8-Y — cabeçalho usa somente a marca; evita repetir o nome ao lado da própria logo. */
.site-header .site-brand-logo-only{gap:0;min-width:0;overflow:visible}
.site-header .site-brand-logo-only .header-brand-logo{width:150px;height:44px;display:block;overflow:hidden;background:transparent;border-radius:0}
.site-header .site-brand-logo-only .header-brand-logo img{width:100%;height:100%;max-width:none;max-height:none;display:block;object-fit:contain;object-position:center}
/* Quando não existe uma logo específica de cabeçalho, recorta visualmente as margens brancas
   comuns da logo principal atual sem alterar o arquivo original. */
.site-header .site-brand-logo-only .header-brand-logo.is-auto-crop img{object-fit:cover;object-position:center 52%;transform:scale(1.20)}
.site-template-tech .site-header .site-brand-logo-only .header-brand-logo{background:transparent}
@media(max-width:700px){
  .site-header .site-brand-logo-only .header-brand-logo{width:122px;height:40px}
  .site-header .site-brand-logo-only .header-brand-logo.is-auto-crop img{transform:scale(1.20)}
}
