/**
 * Tudo AF — overrides finais (prioridade sobre Astra/WP).
 * Carregado por último no child theme.
 */

/* Astra chrome — não exibir */
body.taf-site #colophon,
body.taf-site .site-header,
body.taf-site #ast-desktop-header,
body.taf-site .ast-mobile-header-wrap,
body.taf-site .main-header-bar-wrap,
body.taf-site .site-footer,
body.taf-site .site-below-footer-wrap,
body.taf-site .ast-footer-copyright {
  display: none !important;
}

body.taf-site .skip-link {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

body.taf-site .site-content,
body.taf-site #content,
body.taf-site .ast-container {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
}

body.taf-site #primary,
body.taf-site #primary.taf-main,
body.taf-site .taf-main {
  margin-top: 0 !important;
}

body.taf-site .taf-front .taf-hero--lovable {
  margin-top: 0;
}

body.taf-site #page,
body.taf-site .hfeed.site {
  overflow-x: hidden;
}

body.taf-site .taf-hero--lovable .taf-chip,
body.taf-site .taf-hero--lovable .taf-hero__search button,
body.taf-site .taf-nav-toggle {
  -webkit-tap-highlight-color: transparent;
}

/* Paper grain (Lovable bg-paper-grain) */
body.taf-site .taf-main {
  background-color: var(--taf-bg);
  background-image:
    radial-gradient(rgba(15, 61, 46, 0.04) 1px, transparent 1px),
    radial-gradient(rgba(217, 154, 30, 0.05) 1px, transparent 1px);
  background-size: 22px 22px, 36px 36px;
  background-position: 0 0, 11px 11px;
}

/* Tipografia display */
body.taf-site h1,
body.taf-site h2,
body.taf-site h3,
body.taf-site .taf-font-display {
  letter-spacing: -0.01em;
}

body.taf-site .taf-hero--lovable h1,
body.taf-site .taf-hero--lovable .taf-hero__title {
  color: #fff;
}

body.taf-site .taf-hero--lovable .taf-hero__title-accent {
  color: var(--taf-brand-yellow);
}

/* CTA final — texto branco sobre card verde (body.taf-site h2/p sobrescrevem tudoaf.css) */
body.taf-site .taf-cta-lovable__card,
body.taf-site .taf-cta-lovable__card h2,
body.taf-site .taf-cta-lovable__card p {
  color: #fff;
}

body.taf-site .taf-cta-lovable__card .taf-cta-lovable__badge {
  color: var(--taf-brand-yellow);
}

body.taf-site .taf-cta-lovable__title-accent {
  color: var(--taf-brand-yellow);
}

/* Chips do hero — links não podem herdar cor verde do body.taf-site a */
body.taf-site .taf-hero--lovable .taf-chip,
body.taf-site .taf-hero--lovable .taf-chip:hover,
body.taf-site .taf-hero--lovable .taf-chip:focus-visible {
  color: #fff;
  text-decoration: none;
}

body.taf-site .taf-hero--lovable .taf-hero__chip-cta,
body.taf-site .taf-hero--lovable .taf-hero__chip-cta:hover,
body.taf-site .taf-hero--lovable .taf-hero__chip-cta:focus-visible {
  color: var(--taf-primary-dark);
  background: var(--taf-brand-yellow);
  border-color: rgba(10, 45, 34, 0.28);
}

body.taf-site .taf-hero--lovable .taf-hero__chip-cta:hover,
body.taf-site .taf-hero--lovable .taf-hero__chip-cta:focus-visible {
  background: #e6b800;
  color: var(--taf-primary-dark);
}

body.taf-site .taf-hero--lovable .taf-hero__chip-cta .taf-icon {
  color: var(--taf-primary-dark);
}

body.taf-site .taf-popup__close {
  appearance: none;
  -webkit-appearance: none;
}

body.taf-site .taf-popup__panel--lovable .taf-popup__close,
body.taf-site .taf-popup__panel--lovable .taf-popup__close:hover,
body.taf-site .taf-popup__panel--lovable .taf-popup__close:focus-visible {
  color: var(--taf-primary);
  background: var(--taf-brand-yellow);
  border: 2px solid var(--taf-primary);
}

body.taf-site .taf-popup__panel--lovable .taf-popup__close .taf-icon {
  color: var(--taf-primary);
}

body.taf-site .taf-card--parceiro {
  padding: 0;
  margin: 0;
}

body.taf-site .taf-card--parceiro .taf-card__media img {
  max-width: none;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

/* Rodapé — contraste sobre fundo verde (sobrescreve h3/a globais do body.taf-site) */
body.taf-site .taf-site-footer {
  color: rgba(255, 255, 255, 0.92);
}

body.taf-site .taf-site-footer h3 {
  color: var(--taf-brand-yellow);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

body.taf-site .taf-site-footer a {
  color: #fff;
  text-decoration: none;
}

body.taf-site .taf-site-footer a:hover,
body.taf-site .taf-site-footer a:focus-visible {
  color: var(--taf-brand-yellow-soft);
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.taf-site .taf-site-footer__tagline,
body.taf-site .taf-site-footer__chancela,
body.taf-site .taf-site-footer__col p,
body.taf-site .taf-site-footer__col li {
  color: rgba(255, 255, 255, 0.88);
}

body.taf-site .taf-site-footer__bottom,
body.taf-site .taf-site-footer__bottom p,
body.taf-site .taf-site-footer__bottom a {
  color: rgba(255, 255, 255, 0.9);
}

body.taf-site .taf-site-footer__bottom a:hover {
  color: #fff;
}

/* Ícones */
.taf-icon {
  flex-shrink: 0;
  display: inline-block;
  vertical-align: middle;
}
