:root {
  --verde-950: #16451f;
  --verde-900: #205b29;
  --verde-800: #2f7436;
  --verde-700: #388e3c;
  --verde-100: #e9f3ea;
  --verde-050: #f7fbf7;
  --dourado: #c2a15a;
  --texto: #26312a;
  --texto-suave: #606d63;
  --branco: #ffffff;
  --borda: #dce8dd;
  --sombra: 0 16px 38px rgba(35, 91, 41, .12);
  --container: 1180px;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: "Source Sans 3", Arial, sans-serif;
  color: var(--texto);
  background: var(--branco);
  line-height: 1.55;
}

.container {
  width: min(calc(100% - 40px), var(--container));
  margin: 0 auto;
}

.topo {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid var(--borda);
  backdrop-filter: blur(10px);
}

.topo-conteudo {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.marca {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  min-width: max-content;
}

.marca-simbolo {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--verde-800);
  color: #fff;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 15px;
  font-weight: 700;
  box-shadow: inset 0 0 0 3px rgba(255,255,255,.18);
}

.marca-texto {
  display: flex;
  flex-direction: column;
  line-height: 1.15;
}

.marca-texto strong {
  color: var(--verde-950);
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 18px;
}

.marca-texto small {
  margin-top: 5px;
  color: var(--dourado);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 11px;
  font-weight: 700;
}

.menu {
  display: flex;
  align-items: center;
  gap: 3px;
}

.menu a {
  padding: 29px 10px 25px;
  color: #294a31;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 700;
  border-bottom: 3px solid transparent;
}

.menu a:hover,
.menu a.ativo {
  color: var(--verde-800);
  border-bottom-color: var(--dourado);
}

.menu-botao {
  display: none;
  width: 44px;
  height: 44px;
  padding: 10px;
  border: 1px solid var(--borda);
  border-radius: 9px;
  background: #fff;
}

.menu-botao span {
  display: block;
  height: 2px;
  margin: 5px 0;
  background: var(--verde-950);
}

.faixa-institucional {
  padding: 38px 0;
  color: #fff;
  background:
    linear-gradient(rgba(28,92,38,.94), rgba(28,92,38,.94)),
    radial-gradient(circle at 85% 20%, rgba(255,255,255,.12), transparent 30%);
}

.faixa-grid {
  display: grid;
  grid-template-columns: 1.2fr 1.8fr;
  align-items: center;
  gap: 54px;
}

.faixa-titulo {
  padding-left: 20px;
  border-left: 3px solid var(--dourado);
}

.rotulo {
  margin: 0 0 7px;
  color: var(--verde-700);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .17em;
}

.rotulo.claro {
  color: #ead8a7;
}

h1, h2, h3 {
  margin-top: 0;
  color: var(--verde-950);
  font-family: "Libre Baskerville", Georgia, serif;
  line-height: 1.25;
}

.faixa-titulo h1 {
  margin-bottom: 8px;
  color: #fff;
  font-size: clamp(30px, 4vw, 47px);
}

.faixa-titulo > p:last-child {
  max-width: 510px;
  margin: 0;
  color: rgba(255,255,255,.9);
  font-size: 18px;
}

.faixa-valores {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.valor-item {
  display: flex;
  align-items: center;
  gap: 13px;
}

.valor-item + .valor-item {
  padding-left: 22px;
  border-left: 1px solid rgba(255,255,255,.17);
}

.icone {
  min-width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 2px solid var(--dourado);
  border-radius: 50%;
  color: #f0cf7c;
  font-size: 22px;
  font-weight: 700;
}

.valor-item strong {
  display: block;
  color: #f0cf7c;
  text-transform: uppercase;
  font-size: 14px;
}

.valor-item small {
  display: block;
  margin-top: 4px;
  color: rgba(255,255,255,.9);
  font-size: 14px;
  line-height: 1.35;
}

.apresentacao {
  padding: 32px 0 26px;
}

.leitura-central {
  max-width: 980px;
  text-align: center;
}

.apresentacao h2 {
  margin-bottom: 10px;
  font-size: clamp(25px, 3vw, 34px);
}

.apresentacao p {
  margin: 4px 0;
  color: #4f5a52;
  font-size: 18px;
}

.atividades {
  padding: 0 0 58px;
}

.painel-atividades {
  padding: 26px 28px 30px;
  border: 1px solid var(--borda);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--sombra);
}

.titulo-painel {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
  text-align: left;
}

.icone-titulo {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid var(--borda);
  border-radius: 50%;
  color: var(--verde-800);
  background: var(--verde-050);
  font-size: 20px;
}

.titulo-painel h2 {
  margin: 0;
  font-size: 28px;
}

.grade-atividades {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.atividade {
  position: relative;
  min-height: 278px;
  padding: 10px 28px 38px;
}

.atividade + .atividade {
  border-left: 1px solid var(--borda);
}

.atividade-icone {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  margin-bottom: 16px;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, var(--verde-800), var(--verde-700));
  font-size: 24px;
  box-shadow: inset 0 0 0 3px rgba(255,255,255,.16);
}

.atividade h3 {
  margin-bottom: 10px;
  font-family: "Source Sans 3", Arial, sans-serif;
  text-transform: uppercase;
  font-size: 17px;
  line-height: 1.3;
}

.atividade p {
  margin: 0;
  color: #4f5d53;
  font-size: 16px;
}

.atividade a {
  position: absolute;
  left: 28px;
  bottom: 4px;
  color: var(--verde-700);
  text-decoration: none;
  font-weight: 700;
}

.diferenciais {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  margin-top: 28px;
}

.diferenciais article {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 14px 24px;
}

.diferenciais article + article {
  border-left: 1px solid var(--borda);
}

.diferenciais article > span {
  min-width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--verde-800);
  background: var(--verde-100);
  font-size: 23px;
}

.diferenciais h3 {
  margin-bottom: 6px;
  font-family: "Source Sans 3", Arial, sans-serif;
  text-transform: uppercase;
  font-size: 16px;
}

.diferenciais p {
  margin: 0;
  color: var(--texto-suave);
  font-size: 15px;
}

.rodape {
  padding: 32px 0;
  color: rgba(255,255,255,.82);
  background: var(--verde-950);
}

.rodape-conteudo {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
}

.rodape strong {
  color: #fff;
  font-family: "Libre Baskerville", Georgia, serif;
}

.rodape p {
  margin: 5px 0 0;
  font-size: 14px;
}

@media (max-width: 1080px) {
  .menu-botao { display: block; margin-left: auto; }

  .menu {
    display: none;
    position: absolute;
    top: 82px;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    padding: 12px 20px 20px;
    background: #fff;
    border-bottom: 1px solid var(--borda);
  }

  .menu.aberto { display: flex; }

  .menu a {
    padding: 12px 8px;
    border-bottom: 1px solid var(--borda);
  }

  .faixa-grid {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .grade-atividades {
    grid-template-columns: repeat(2, 1fr);
  }

  .atividade:nth-child(3) {
    border-left: 0;
    border-top: 1px solid var(--borda);
    padding-top: 28px;
  }

  .atividade:nth-child(4) {
    border-top: 1px solid var(--borda);
    padding-top: 28px;
  }
}

@media (max-width: 760px) {
  .container { width: min(calc(100% - 28px), var(--container)); }

  .marca-texto small { display: none; }

  .faixa-institucional { padding: 30px 0; }

  .faixa-valores {
    grid-template-columns: 1fr;
  }

  .valor-item + .valor-item {
    padding-left: 0;
    padding-top: 14px;
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.17);
  }

  .apresentacao { padding: 30px 0 22px; }

  .grade-atividades {
    grid-template-columns: 1fr;
  }

  .atividade {
    min-height: auto;
    padding: 24px 10px 50px;
  }

  .atividade + .atividade,
  .atividade:nth-child(3),
  .atividade:nth-child(4) {
    border-left: 0;
    border-top: 1px solid var(--borda);
  }

  .atividade a { left: 10px; bottom: 15px; }

  .diferenciais {
    grid-template-columns: 1fr;
  }

  .diferenciais article + article {
    border-left: 0;
    border-top: 1px solid var(--borda);
  }

  .rodape-conteudo {
    flex-direction: column;
    align-items: flex-start;
  }
}


.whatsapp-flutuante{
position:fixed;
right:22px;
bottom:22px;
width:60px;
height:60px;
border-radius:50%;
background:#25D366;
color:#fff;
display:flex;
align-items:center;
justify-content:center;
font-size:30px;
text-decoration:none;
box-shadow:0 8px 22px rgba(0,0,0,.25);
z-index:9999;
transition:.2s;
}
.whatsapp-flutuante:hover{
transform:scale(1.08);
}


/* ===== ESTILOS ESPECÍFICOS DAS PÁGINAS ===== */


/* --- index.html --- */

body.pagina-inicio .menu-dropdown{position:relative;display:flex;align-items:center}
body.pagina-inicio .menu-dropdown-botao{
      border:0;background:transparent;color:inherit;font:inherit;
      font-weight:700;padding:10px 11px;border-radius:9px;cursor:pointer
    }
body.pagina-inicio .menu-dropdown-botao:hover, body.pagina-inicio .menu-dropdown:focus-within .menu-dropdown-botao{
      background:#eaf3ed;color:#315f50
    }
body.pagina-inicio .submenu{
      position:absolute;top:calc(100% + 6px);left:0;min-width:245px;
      padding:8px;border:1px solid #dce9e0;border-radius:12px;
      background:#fff;box-shadow:0 16px 40px rgba(49,95,80,.14);
      opacity:0;visibility:hidden;transform:translateY(-6px);
      transition:.2s ease;z-index:200
    }
body.pagina-inicio .submenu a{
      display:block;padding:11px 13px;border-radius:8px;
      white-space:nowrap;text-transform:none
    }
body.pagina-inicio .submenu a:hover{background:#eaf3ed;color:#315f50}
body.pagina-inicio .menu-dropdown:hover .submenu, body.pagina-inicio .menu-dropdown:focus-within .submenu, body.pagina-inicio .menu-dropdown.aberto .submenu{
      opacity:1;visibility:visible;transform:translateY(0)
    }
@media (max-width:760px){body.pagina-inicio .menu-dropdown{width:100%;display:block}
body.pagina-inicio .menu-dropdown-botao{width:100%;text-align:left}
body.pagina-inicio .submenu{
        position:static;display:none;min-width:0;width:100%;
        margin-top:4px;opacity:1;visibility:visible;transform:none;
        box-shadow:none
      }
body.pagina-inicio .menu-dropdown.aberto .submenu, body.pagina-inicio .menu-dropdown:focus-within .submenu{display:block}}

/* --- servicos-assessoria.html --- */

body.pagina-servicos{margin:0;font-family:Arial,sans-serif;color:#20312a}
body.pagina-servicos .topo{position:sticky;top:0;background:#fff;border-bottom:1px solid #dce9e0}
body.pagina-servicos .c{width:min(1150px,calc(100% - 30px));margin:auto}
body.pagina-servicos .row{display:flex;justify-content:space-between;align-items:center;padding:15px 0}
body.pagina-servicos .menu{display:flex;gap:6px;flex-wrap:wrap}
body.pagina-servicos .menu a, body.pagina-servicos .b{padding:10px 12px;text-decoration:none;color:#20312a;font-weight:bold;border-radius:8px}
body.pagina-servicos .menu a:hover, body.pagina-servicos .b:hover{background:#eaf3ed}
body.pagina-servicos .dd{position:relative}
body.pagina-servicos .dc{display:none;position:absolute;background:#fff;border:1px solid #dce9e0;border-radius:10px;min-width:220px}
body.pagina-servicos .dc a{display:block}
body.pagina-servicos .dd:hover .dc{display:block}
body.pagina-servicos .hero{background:linear-gradient(135deg,#315f50,#6b9b82);color:#fff;padding:70px 0}
body.pagina-servicos .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
body.pagina-servicos .card{border:1px solid #dce9e0;border-radius:16px;padding:20px}
body.pagina-servicos .btn{display:inline-block;background:#dfb95e;color:#20312a;padding:12px 20px;border-radius:25px;text-decoration:none;font-weight:bold}
body.pagina-servicos .sec{padding:60px 0}
body.pagina-servicos .cta{background:#315f50;color:#fff;text-align:center;padding:50px}
body.pagina-servicos footer{text-align:center;background:#24483c;color:#fff;padding:20px}
body.pagina-servicos .info-system{padding:60px 0;background:#f7faf8}
body.pagina-servicos .info-system h2{text-align:center;color:#315f50;margin:0 0 12px}
body.pagina-servicos .info-system .intro{text-align:center;max-width:820px;margin:0 auto 32px;color:#52635b}
body.pagina-servicos .info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
body.pagina-servicos .info-card{border-radius:16px;padding:22px;border:1px solid transparent;box-shadow:0 8px 22px rgba(0,0,0,.05)}
body.pagina-servicos .info-card .label{display:flex;align-items:center;gap:10px;font-weight:800;margin-bottom:10px}
body.pagina-servicos .info-card .dot{width:14px;height:14px;border-radius:50%;display:inline-block}
body.pagina-servicos .info-card h3{margin:0 0 8px;font-size:20px}
body.pagina-servicos .info-card p{margin:0;color:#44564e}
body.pagina-servicos .info-verde{background:#eef9f2;border-color:#cfead8}
body.pagina-servicos .info-verde .dot{background:#43bf73}
body.pagina-servicos .info-verde h3{color:#247446}
body.pagina-servicos .info-amarelo{background:#fff8e6;border-color:#efd99b}
body.pagina-servicos .info-amarelo .dot{background:#e3ac3e}
body.pagina-servicos .info-amarelo h3{color:#8a6416}
body.pagina-servicos .info-vermelho{background:#fff0f2;border-color:#efc6cc}
body.pagina-servicos .info-vermelho .dot{background:#dc4960}
body.pagina-servicos .info-vermelho h3{color:#9b2f40}
body.pagina-servicos .info-azul{background:#eef5ff;border-color:#c8daf4}
body.pagina-servicos .info-azul .dot{background:#4d78c8}
body.pagina-servicos .info-azul h3{color:#315d9e}
body.pagina-servicos .info-perito{background:#edf5f1;border-color:#bfd8cd}
body.pagina-servicos .info-perito .dot{background:#315f50}
body.pagina-servicos .info-perito h3{color:#315f50}
body.pagina-servicos .sticky-card{position:sticky;top:110px;background:#fff8e6;border-left:6px solid #e3ac3e;padding:22px;border-radius:14px;box-shadow:0 10px 25px rgba(0,0,0,.08);margin:35px auto;max-width:950px}
body.pagina-servicos .sticky-card h2{color:#8a6416}
body.pagina-servicos .sticky-card .frase{font-weight:bold;color:#315f50}
body.pagina-servicos.pagina-servicos{--portal-verde-950:#16451f;--portal-verde-800:#2f7436;--portal-verde-100:#e9f3ea;--portal-dourado:#c2a15a;--portal-borda:#dce8dd;--portal-container:1180px}
body.pagina-servicos .portal-container{width:min(calc(100% - 40px),var(--portal-container));margin:0 auto}
body.pagina-servicos .portal-topo{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);border-bottom:1px solid var(--portal-borda);backdrop-filter:blur(10px)}
body.pagina-servicos .portal-topo-conteudo{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.pagina-servicos .portal-marca{display:inline-flex;align-items:center;gap:12px;text-decoration:none;min-width:max-content;color:inherit}
body.pagina-servicos .portal-marca-simbolo{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--portal-verde-800);color:#fff;font-family:Georgia,serif;font-size:15px;font-weight:700;box-shadow:inset 0 0 0 3px rgba(255,255,255,.18)}
body.pagina-servicos .portal-marca-texto{display:flex;flex-direction:column;line-height:1.15}
body.pagina-servicos .portal-marca-texto strong{color:var(--portal-verde-950);font-family:Georgia,serif;font-size:18px}
body.pagina-servicos .portal-marca-texto small{margin-top:5px;color:var(--portal-dourado);text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700}
body.pagina-servicos .portal-menu{display:flex;align-items:center;gap:3px}
body.pagina-servicos .portal-menu>a, body.pagina-servicos .portal-menu-dropdown-botao{padding:29px 10px 25px;color:#294a31;text-decoration:none;text-transform:uppercase;font:700 14px Arial,sans-serif;border:0;border-bottom:3px solid transparent;background:transparent;cursor:pointer}
body.pagina-servicos .portal-menu>a:hover, body.pagina-servicos .portal-menu>a.ativo, body.pagina-servicos .portal-menu-dropdown-botao:hover, body.pagina-servicos .portal-menu-dropdown:focus-within .portal-menu-dropdown-botao{color:var(--portal-verde-800);border-bottom-color:var(--portal-dourado)}
body.pagina-servicos .portal-menu-dropdown{position:relative;display:flex;align-items:center}
body.pagina-servicos .portal-submenu{position:absolute;top:calc(100% + 1px);left:0;min-width:255px;padding:8px;border:1px solid var(--portal-borda);border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(35,91,41,.12);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s ease;z-index:1200}
body.pagina-servicos .portal-submenu a{display:block;padding:11px 13px;border-radius:8px;color:#294a31;text-decoration:none;white-space:nowrap;font-weight:700}
body.pagina-servicos .portal-submenu a:hover, body.pagina-servicos .portal-submenu a[aria-current="page"]{background:var(--portal-verde-100);color:var(--portal-verde-950)}
body.pagina-servicos .portal-menu-dropdown:hover .portal-submenu, body.pagina-servicos .portal-menu-dropdown:focus-within .portal-submenu, body.pagina-servicos .portal-menu-dropdown.aberto .portal-submenu{opacity:1;visibility:visible;transform:translateY(0)}
body.pagina-servicos .portal-menu-botao{display:none;width:44px;height:44px;padding:10px;border:1px solid var(--portal-borda);border-radius:9px;background:#fff}
body.pagina-servicos .portal-menu-botao span{display:block;height:2px;margin:5px 0;background:var(--portal-verde-950)}
@media (max-width:1080px){body.pagina-servicos .portal-menu-botao{display:block;margin-left:auto}
body.pagina-servicos .portal-menu{display:none;position:absolute;top:82px;left:0;right:0;flex-direction:column;align-items:stretch;padding:12px 20px 20px;background:#fff;border-bottom:1px solid var(--portal-borda)}
body.pagina-servicos .portal-menu.aberto{display:flex}
body.pagina-servicos .portal-menu>a, body.pagina-servicos .portal-menu-dropdown-botao{width:100%;padding:12px 8px;text-align:left;border-bottom:1px solid var(--portal-borda)}
body.pagina-servicos .portal-menu-dropdown{width:100%;display:block}
body.pagina-servicos .portal-submenu{position:static;display:none;width:100%;min-width:0;margin-top:4px;opacity:1;visibility:visible;transform:none;box-shadow:none}
body.pagina-servicos .portal-menu-dropdown.aberto .portal-submenu, body.pagina-servicos .portal-menu-dropdown:focus-within .portal-submenu{display:block}
body.pagina-servicos .portal-marca-texto small{display:none}}

/* --- revisionais-bancarias-final.html --- */

body.pagina-revisionais{font-family:Arial,Helvetica,sans-serif;margin:0;background:#f6faf7;color:#20312a;line-height:1.7}
body.pagina-revisionais .pagina-cabecalho{background:#315f50;color:#fff;padding:35px}
body.pagina-revisionais .container{max-width:1100px;margin:auto;padding:30px}
body.pagina-revisionais h1, body.pagina-revisionais h2{color:#315f50}
body.pagina-revisionais .pagina-cabecalho h1{color:#fff;margin:0 0 6px}
body.pagina-revisionais .pagina-cabecalho p{margin:0}
body.pagina-revisionais .hero{background:#fff;border-radius:12px;padding:30px;margin-top:-20px;box-shadow:0 8px 20px rgba(0,0,0,.08)}
body.pagina-revisionais .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
body.pagina-revisionais .card{background:#fff;border:1px solid #dce9e0;border-radius:10px;padding:20px;margin-bottom:18px}
body.pagina-revisionais .info{border-left:6px solid #2e7d32}
body.pagina-revisionais .alerta{border-left:6px solid #c79a00}
body.pagina-revisionais .cuidado{border-left:6px solid #b33a3a}
body.pagina-revisionais .ref{border-left:6px solid #2d6fb3}
body.pagina-revisionais .perito{border-left:6px solid #315f50}
body.pagina-revisionais footer{background:#315f50;color:#fff;text-align:center;padding:25px;margin-top:40px}
body.pagina-revisionais .btn{display:inline-block;background:#315f50;color:#fff;text-decoration:none;padding:12px 22px;border-radius:30px;font-weight:bold}
body.pagina-revisionais .btn:hover, body.pagina-revisionais .btn:focus{background:#24493d}
body.pagina-revisionais table{background:#fff}
body.pagina-revisionais th, body.pagina-revisionais td{padding:10px;border-bottom:1px solid #dce9e0;vertical-align:top}
body.pagina-revisionais th{background:#eef5f1}
body.pagina-revisionais .table-wrap{overflow-x:auto}
body.pagina-revisionais .fundamentacao-observacao{border-top:1px solid #cbd9e4;margin-top:18px;padding-top:16px}
@media (max-width:700px){body.pagina-revisionais .pagina-cabecalho{padding:28px 20px}
body.pagina-revisionais .container{padding:22px 16px}
body.pagina-revisionais .hero{padding:22px}
body.pagina-revisionais th, body.pagina-revisionais td{min-width:150px}}
body.pagina-revisionais .metodo{background:#eef5f1;border:1px solid #cfded5;border-radius:12px;padding:26px;margin-top:34px;text-align:center}
body.pagina-revisionais .metodo h2{margin:0 0 8px}
body.pagina-revisionais .metodo-fluxo{font-weight:bold;color:#315f50;font-size:1.08rem;margin:8px 0 12px}
body.pagina-revisionais .metodo p{max-width:820px;margin:0 auto}
body.pagina-revisionais .voltar-topo{
  display:inline-block;
  margin:28px auto 8px;
  padding:11px 20px;
  border-radius:28px;
  background:#315f50;
  color:#ffffff;
  text-decoration:none;
  font-weight:600;
  transition:transform .2s ease, opacity .2s ease;
}
body.pagina-revisionais .voltar-topo:hover{
  transform:translateY(-2px);
  opacity:.92;
}
body.pagina-revisionais .voltar-topo-wrap{
  text-align:center;
}
html body.pagina-revisionais{
  scroll-behavior:smooth;
}
body.pagina-revisionais.pagina-revisionais{--portal-verde-950:#16451f;--portal-verde-800:#2f7436;--portal-verde-100:#e9f3ea;--portal-dourado:#c2a15a;--portal-borda:#dce8dd;--portal-container:1180px}
body.pagina-revisionais .portal-container{width:min(calc(100% - 40px),var(--portal-container));margin:0 auto}
body.pagina-revisionais .portal-topo{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);border-bottom:1px solid var(--portal-borda);backdrop-filter:blur(10px)}
body.pagina-revisionais .portal-topo-conteudo{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.pagina-revisionais .portal-marca{display:inline-flex;align-items:center;gap:12px;text-decoration:none;min-width:max-content;color:inherit}
body.pagina-revisionais .portal-marca-simbolo{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--portal-verde-800);color:#fff;font-family:Georgia,serif;font-size:15px;font-weight:700;box-shadow:inset 0 0 0 3px rgba(255,255,255,.18)}
body.pagina-revisionais .portal-marca-texto{display:flex;flex-direction:column;line-height:1.15}
body.pagina-revisionais .portal-marca-texto strong{color:var(--portal-verde-950);font-family:Georgia,serif;font-size:18px}
body.pagina-revisionais .portal-marca-texto small{margin-top:5px;color:var(--portal-dourado);text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700}
body.pagina-revisionais .portal-menu{display:flex;align-items:center;gap:3px}
body.pagina-revisionais .portal-menu>a, body.pagina-revisionais .portal-menu-dropdown-botao{padding:29px 10px 25px;color:#294a31;text-decoration:none;text-transform:uppercase;font:700 14px Arial,sans-serif;border:0;border-bottom:3px solid transparent;background:transparent;cursor:pointer}
body.pagina-revisionais .portal-menu>a:hover, body.pagina-revisionais .portal-menu>a.ativo, body.pagina-revisionais .portal-menu-dropdown-botao:hover, body.pagina-revisionais .portal-menu-dropdown:focus-within .portal-menu-dropdown-botao{color:var(--portal-verde-800);border-bottom-color:var(--portal-dourado)}
body.pagina-revisionais .portal-menu-dropdown{position:relative;display:flex;align-items:center}
body.pagina-revisionais .portal-submenu{position:absolute;top:calc(100% + 1px);left:0;min-width:255px;padding:8px;border:1px solid var(--portal-borda);border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(35,91,41,.12);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s ease;z-index:1200}
body.pagina-revisionais .portal-submenu a{display:block;padding:11px 13px;border-radius:8px;color:#294a31;text-decoration:none;white-space:nowrap;font-weight:700}
body.pagina-revisionais .portal-submenu a:hover, body.pagina-revisionais .portal-submenu a[aria-current="page"]{background:var(--portal-verde-100);color:var(--portal-verde-950)}
body.pagina-revisionais .portal-menu-dropdown:hover .portal-submenu, body.pagina-revisionais .portal-menu-dropdown:focus-within .portal-submenu, body.pagina-revisionais .portal-menu-dropdown.aberto .portal-submenu{opacity:1;visibility:visible;transform:translateY(0)}
body.pagina-revisionais .portal-menu-botao{display:none;width:44px;height:44px;padding:10px;border:1px solid var(--portal-borda);border-radius:9px;background:#fff}
body.pagina-revisionais .portal-menu-botao span{display:block;height:2px;margin:5px 0;background:var(--portal-verde-950)}
@media (max-width:1080px){body.pagina-revisionais .portal-menu-botao{display:block;margin-left:auto}
body.pagina-revisionais .portal-menu{display:none;position:absolute;top:82px;left:0;right:0;flex-direction:column;align-items:stretch;padding:12px 20px 20px;background:#fff;border-bottom:1px solid var(--portal-borda)}
body.pagina-revisionais .portal-menu.aberto{display:flex}
body.pagina-revisionais .portal-menu>a, body.pagina-revisionais .portal-menu-dropdown-botao{width:100%;padding:12px 8px;text-align:left;border-bottom:1px solid var(--portal-borda)}
body.pagina-revisionais .portal-menu-dropdown{width:100%;display:block}
body.pagina-revisionais .portal-submenu{position:static;display:none;width:100%;min-width:0;margin-top:4px;opacity:1;visibility:visible;transform:none;box-shadow:none}
body.pagina-revisionais .portal-menu-dropdown.aberto .portal-submenu, body.pagina-revisionais .portal-menu-dropdown:focus-within .portal-submenu{display:block}
body.pagina-revisionais .portal-marca-texto small{display:none}}

/* --- produtos.html --- */

body.pagina-produtos{margin:0;font-family:Arial,sans-serif;color:#20312a}
body.pagina-produtos .topo{position:sticky;top:0;background:#fff;border-bottom:1px solid #dce9e0}
body.pagina-produtos .c{width:min(1150px,calc(100% - 30px));margin:auto}
body.pagina-produtos .row{display:flex;justify-content:space-between;align-items:center;padding:15px 0}
body.pagina-produtos .menu{display:flex;gap:6px;flex-wrap:wrap}
body.pagina-produtos .menu a, body.pagina-produtos .b{padding:10px 12px;text-decoration:none;color:#20312a;font-weight:bold;border-radius:8px}
body.pagina-produtos .menu a:hover, body.pagina-produtos .b:hover{background:#eaf3ed}
body.pagina-produtos .dd{position:relative}
body.pagina-produtos .dc{display:none;position:absolute;background:#fff;border:1px solid #dce9e0;border-radius:10px;min-width:220px}
body.pagina-produtos .dc a{display:block}
body.pagina-produtos .dd:hover .dc{display:block}
body.pagina-produtos .hero{background:linear-gradient(135deg,#315f50,#6b9b82);color:#fff;padding:70px 0}
body.pagina-produtos .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
body.pagina-produtos .card{border:1px solid #dce9e0;border-radius:16px;padding:20px}
body.pagina-produtos .btn{display:inline-block;background:#dfb95e;color:#20312a;padding:12px 20px;border-radius:25px;text-decoration:none;font-weight:bold}
body.pagina-produtos .sec{padding:60px 0}
body.pagina-produtos .cta{background:#315f50;color:#fff;text-align:center;padding:50px}
body.pagina-produtos footer{text-align:center;background:#24483c;color:#fff;padding:20px}
body.pagina-produtos .info-system{padding:60px 0;background:#f7faf8}
body.pagina-produtos .info-system h2{text-align:center;color:#315f50;margin:0 0 12px}
body.pagina-produtos .info-system .intro{text-align:center;max-width:820px;margin:0 auto 32px;color:#52635b}
body.pagina-produtos .info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
body.pagina-produtos .info-card{border-radius:16px;padding:22px;border:1px solid transparent;box-shadow:0 8px 22px rgba(0,0,0,.05)}
body.pagina-produtos .info-card .label{display:flex;align-items:center;gap:10px;font-weight:800;margin-bottom:10px}
body.pagina-produtos .info-card .dot{width:14px;height:14px;border-radius:50%;display:inline-block}
body.pagina-produtos .info-card h3{margin:0 0 8px;font-size:20px}
body.pagina-produtos .info-card p{margin:0;color:#44564e}
body.pagina-produtos .info-verde{background:#eef9f2;border-color:#cfead8}
body.pagina-produtos .info-verde .dot{background:#43bf73}
body.pagina-produtos .info-verde h3{color:#247446}
body.pagina-produtos .info-amarelo{background:#fff8e6;border-color:#efd99b}
body.pagina-produtos .info-amarelo .dot{background:#e3ac3e}
body.pagina-produtos .info-amarelo h3{color:#8a6416}
body.pagina-produtos .info-vermelho{background:#fff0f2;border-color:#efc6cc}
body.pagina-produtos .info-vermelho .dot{background:#dc4960}
body.pagina-produtos .info-vermelho h3{color:#9b2f40}
body.pagina-produtos .info-azul{background:#eef5ff;border-color:#c8daf4}
body.pagina-produtos .info-azul .dot{background:#4d78c8}
body.pagina-produtos .info-azul h3{color:#315d9e}
body.pagina-produtos .info-perito{background:#edf5f1;border-color:#bfd8cd}
body.pagina-produtos .info-perito .dot{background:#315f50}
body.pagina-produtos .info-perito h3{color:#315f50}
body.pagina-produtos .sticky-card{position:sticky;top:110px;background:#fff8e6;border-left:6px solid #e3ac3e;padding:22px;border-radius:14px;box-shadow:0 10px 25px rgba(0,0,0,.08);margin:35px auto;max-width:950px}
body.pagina-produtos .sticky-card h2{color:#8a6416}
body.pagina-produtos .sticky-card .frase{font-weight:bold;color:#315f50}
body.pagina-produtos.pagina-produtos{
  --portal-verde-950:#16451f;
  --portal-verde-800:#2f7436;
  --portal-verde-100:#e9f3ea;
  --portal-dourado:#c2a15a;
  --portal-borda:#dce8dd;
  --portal-container:1180px;
}
body.pagina-produtos .portal-container{width:min(calc(100% - 40px),var(--portal-container));margin:0 auto}
body.pagina-produtos .portal-topo{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);border-bottom:1px solid var(--portal-borda);backdrop-filter:blur(10px)}
body.pagina-produtos .portal-topo-conteudo{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
body.pagina-produtos .portal-marca{display:inline-flex;align-items:center;gap:12px;text-decoration:none;min-width:max-content;color:inherit}
body.pagina-produtos .portal-marca-simbolo{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--portal-verde-800);color:#fff;font-family:Georgia,serif;font-size:15px;font-weight:700}
body.pagina-produtos .portal-marca-texto{display:flex;flex-direction:column;line-height:1.15}
body.pagina-produtos .portal-marca-texto strong{color:var(--portal-verde-950);font-family:Georgia,serif;font-size:18px}
body.pagina-produtos .portal-marca-texto small{margin-top:5px;color:var(--portal-dourado);text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:700}
body.pagina-produtos .portal-menu{display:flex;align-items:center;gap:3px}
body.pagina-produtos .portal-menu>a, body.pagina-produtos .portal-menu-dropdown-botao{padding:29px 10px 25px;color:#294a31;text-decoration:none;text-transform:uppercase;font:700 14px Arial,sans-serif;border:0;border-bottom:3px solid transparent;background:transparent;cursor:pointer}
body.pagina-produtos .portal-menu>a:hover, body.pagina-produtos .portal-menu>a.ativo, body.pagina-produtos .portal-menu-dropdown-botao:hover, body.pagina-produtos .portal-menu-dropdown:focus-within .portal-menu-dropdown-botao{color:var(--portal-verde-800);border-bottom-color:var(--portal-dourado)}
body.pagina-produtos .portal-menu-dropdown{position:relative;display:flex;align-items:center}
body.pagina-produtos .portal-submenu{position:absolute;top:calc(100% + 1px);left:0;min-width:255px;padding:8px;border:1px solid var(--portal-borda);border-radius:12px;background:#fff;box-shadow:0 16px 38px rgba(35,91,41,.12);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s ease;z-index:1200}
body.pagina-produtos .portal-submenu a{display:block;padding:11px 13px;border-radius:8px;color:#294a31;text-decoration:none;white-space:nowrap;font-weight:700}
body.pagina-produtos .portal-submenu a:hover{background:var(--portal-verde-100);color:var(--portal-verde-950)}
body.pagina-produtos .portal-menu-dropdown:hover .portal-submenu, body.pagina-produtos .portal-menu-dropdown:focus-within .portal-submenu, body.pagina-produtos .portal-menu-dropdown.aberto .portal-submenu{opacity:1;visibility:visible;transform:translateY(0)}
body.pagina-produtos .portal-menu-botao{display:none;width:44px;height:44px;padding:10px;border:1px solid var(--portal-borda);border-radius:9px;background:#fff}
body.pagina-produtos .portal-menu-botao span{display:block;height:2px;margin:5px 0;background:var(--portal-verde-950)}
@media (max-width:1080px){body.pagina-produtos .portal-menu-botao{display:block;margin-left:auto}
body.pagina-produtos .portal-menu{display:none;position:absolute;top:82px;left:0;right:0;flex-direction:column;align-items:stretch;padding:12px 20px 20px;background:#fff;border-bottom:1px solid var(--portal-borda)}
body.pagina-produtos .portal-menu.aberto{display:flex}
body.pagina-produtos .portal-menu>a, body.pagina-produtos .portal-menu-dropdown-botao{width:100%;padding:12px 8px;text-align:left;border-bottom:1px solid var(--portal-borda)}
body.pagina-produtos .portal-menu-dropdown{width:100%;display:block}
body.pagina-produtos .portal-submenu{position:static;display:none;width:100%;min-width:0;margin-top:4px;opacity:1;visibility:visible;transform:none;box-shadow:none}
body.pagina-produtos .portal-menu-dropdown.aberto .portal-submenu, body.pagina-produtos .portal-menu-dropdown:focus-within .portal-submenu{display:block}
body.pagina-produtos .portal-marca-texto small{display:none}}

/* --- trajetoria-francisco-lisboa-final.html --- */

body.pagina-trajetoria.pagina-trajetoria{
      --verde-950:#315f50;
      --verde-900:#3f705e;
      --verde-800:#54856f;
      --verde-700:#6b9b82;
      --verde-100:#eaf3ed;
      --verde-50:#f6faf7;
      --dourado:#dfb95e;
      --texto:#20312a;
      --texto-suave:#52635b;
      --branco:#ffffff;
      --borda:#dce9e0;
      --sombra:0 16px 40px rgba(49,95,80,.12);
      --raio:18px;
      --largura:1160px;
    }
body.pagina-trajetoria *{box-sizing:border-box}
html body.pagina-trajetoria{scroll-behavior:smooth}
body.pagina-trajetoria{
      margin:0;
      font-family:Arial, Helvetica, sans-serif;
      color:var(--texto);
      background:var(--branco);
      line-height:1.65;
    }
body.pagina-trajetoria a{color:inherit}
body.pagina-trajetoria img{max-width:100%;display:block}
body.pagina-trajetoria .container{width:min(calc(100% - 32px),var(--largura));margin:auto}
body.pagina-trajetoria .rotulo{
      margin:0 0 8px;
      font-size:.78rem;
      font-weight:800;
      letter-spacing:.14em;
      text-transform:uppercase;
      color:var(--verde-800);
    }
body.pagina-trajetoria .topo{
      position:sticky;
      top:0;
      z-index:100;
      background:rgba(255,255,255,.97);
      border-bottom:1px solid var(--borda);
      backdrop-filter:blur(8px);
    }
body.pagina-trajetoria .topo-conteudo{
      min-height:78px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:25px;
    }
body.pagina-trajetoria .marca{
      display:flex;
      align-items:center;
      gap:12px;
      text-decoration:none;
    }
body.pagina-trajetoria .marca-simbolo{
      width:48px;
      height:48px;
      border-radius:14px;
      display:grid;
      place-items:center;
      color:#fff;
      font-weight:900;
      background:linear-gradient(135deg,var(--verde-950),var(--verde-700));
      box-shadow:var(--sombra);
    }
body.pagina-trajetoria .marca-texto strong{display:block;font-size:1.05rem}
body.pagina-trajetoria .marca-texto small{color:var(--texto-suave)}
body.pagina-trajetoria .menu{
      display:flex;
      flex-wrap:wrap;
      justify-content:flex-end;
      gap:5px;
    }
body.pagina-trajetoria .menu a{
      text-decoration:none;
      font-size:.91rem;
      font-weight:700;
      padding:10px 11px;
      border-radius:9px;
    }
body.pagina-trajetoria .menu a:hover, body.pagina-trajetoria .menu a.ativo{
      background:var(--verde-100);
      color:var(--verde-950);
    }
body.pagina-trajetoria .menu-dropdown{position:relative;display:flex;align-items:center}
body.pagina-trajetoria .menu-dropdown-botao{border:0;background:transparent;color:inherit;font:inherit;font-size:.91rem;font-weight:700;padding:10px 11px;border-radius:9px;cursor:pointer}
body.pagina-trajetoria .menu-dropdown-botao:hover, body.pagina-trajetoria .menu-dropdown:focus-within .menu-dropdown-botao{background:var(--verde-100);color:var(--verde-950)}
body.pagina-trajetoria .submenu{position:absolute;top:calc(100% + 6px);left:0;min-width:245px;padding:8px;border:1px solid var(--borda);border-radius:12px;background:#fff;box-shadow:var(--sombra);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s ease;z-index:150}
body.pagina-trajetoria .submenu a{display:block;padding:11px 13px;border-radius:8px;white-space:nowrap;text-transform:none}
body.pagina-trajetoria .submenu a:hover, body.pagina-trajetoria .submenu a[aria-current=page]{background:var(--verde-100);color:var(--verde-950)}
body.pagina-trajetoria .menu-dropdown:hover .submenu, body.pagina-trajetoria .menu-dropdown:focus-within .submenu, body.pagina-trajetoria .menu-dropdown.aberto .submenu{opacity:1;visibility:visible;transform:translateY(0)}
body.pagina-trajetoria .menu-voltar{border:1px solid var(--verde-800);color:var(--verde-950)}
body.pagina-trajetoria .hero{
      background:
        radial-gradient(circle at 90% 10%,rgba(223,185,94,.22),transparent 28%),
        linear-gradient(135deg,var(--verde-950),var(--verde-800));
      color:#fff;
      padding:86px 0 78px;
    }
body.pagina-trajetoria .hero-grid{
      display:grid;
      grid-template-columns:1.3fr .7fr;
      gap:52px;
      align-items:center;
    }
body.pagina-trajetoria .hero h1{
      margin:8px 0 20px;
      max-width:780px;
      font-family:Georgia, "Times New Roman", serif;
      font-size:clamp(2.25rem,5vw,4.25rem);
      line-height:1.08;
    }
body.pagina-trajetoria .hero p{
      max-width:760px;
      margin:0 0 28px;
      color:#edf5f0;
      font-size:1.09rem;
    }
body.pagina-trajetoria .hero .rotulo{color:#e9cf8e}
body.pagina-trajetoria .botoes{display:flex;flex-wrap:wrap;gap:12px}
body.pagina-trajetoria .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:48px;
      padding:12px 20px;
      border-radius:999px;
      text-decoration:none;
      font-weight:800;
      border:1px solid transparent;
      transition:.2s ease;
    }
body.pagina-trajetoria .btn-principal{background:var(--dourado);color:#263b32}
body.pagina-trajetoria .btn-claro{border-color:rgba(255,255,255,.6);color:#fff}
body.pagina-trajetoria .btn-verde{background:var(--verde-950);color:#fff}
body.pagina-trajetoria .btn:hover{transform:translateY(-2px)}
body.pagina-trajetoria .retrato{
      min-height:390px;
      border:1px solid rgba(255,255,255,.25);
      border-radius:30px;
      padding:17px;
      background:rgba(255,255,255,.10);
      box-shadow:0 28px 65px rgba(0,0,0,.22);
    }
body.pagina-trajetoria .retrato-interno{
      height:100%;
      min-height:356px;
      border-radius:22px;
      overflow:hidden;
      position:relative;
      display:flex;
      align-items:flex-end;
      background:
        linear-gradient(rgba(25,65,51,.12),rgba(25,65,51,.75)),
        url("Imagens/francisco-lisboa.jpg") center/cover no-repeat,
        linear-gradient(135deg,#7fa48f,#315f50);
    }
body.pagina-trajetoria .retrato-legenda{padding:25px}
body.pagina-trajetoria .retrato-legenda strong{display:block;font-size:1.35rem}
body.pagina-trajetoria .retrato-legenda span{color:#e8f1ec}
body.pagina-trajetoria section{padding:72px 0}
body.pagina-trajetoria .fundo-claro{background:var(--verde-50)}
body.pagina-trajetoria .titulo-secao{max-width:820px;margin-bottom:34px}
body.pagina-trajetoria .titulo-secao h2{
      margin:0 0 12px;
      font-family:Georgia, "Times New Roman", serif;
      font-size:clamp(1.9rem,3.5vw,2.8rem);
      line-height:1.18;
      color:var(--verde-950);
    }
body.pagina-trajetoria .titulo-secao p{margin:0;color:var(--texto-suave)}
body.pagina-trajetoria .trajetoria-grid{
      display:grid;
      grid-template-columns:.82fr 1.18fr;
      gap:42px;
      align-items:start;
    }
body.pagina-trajetoria .cartao-destaque{
      position:sticky;
      top:105px;
      border-radius:var(--raio);
      padding:30px;
      background:var(--verde-950);
      color:#fff;
      box-shadow:var(--sombra);
    }
body.pagina-trajetoria .cartao-destaque h3{margin-top:0;font-size:1.55rem}
body.pagina-trajetoria .cartao-destaque p{color:#e4eee8}
body.pagina-trajetoria .dados{
      margin-top:24px;
      padding-top:20px;
      border-top:1px solid rgba(255,255,255,.22);
    }
body.pagina-trajetoria .dados div{margin:8px 0}
body.pagina-trajetoria .texto-longo p:first-child{margin-top:0}
body.pagina-trajetoria .texto-longo strong{color:var(--verde-950)}
body.pagina-trajetoria .grade{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:20px;
    }
body.pagina-trajetoria .card{
      padding:26px;
      border:1px solid var(--borda);
      border-radius:var(--raio);
      background:#fff;
      box-shadow:0 10px 30px rgba(49,95,80,.07);
    }
body.pagina-trajetoria .card-icone{
      width:48px;height:48px;border-radius:14px;
      display:grid;place-items:center;
      margin-bottom:18px;
      background:var(--verde-100);
      color:var(--verde-950);
      font-size:1.35rem;
      font-weight:900;
    }
body.pagina-trajetoria .card h3{margin:0 0 9px;color:var(--verde-950)}
body.pagina-trajetoria .card p{margin:0;color:var(--texto-suave)}
body.pagina-trajetoria .livros-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:24px;
    }
body.pagina-trajetoria .livro{
      overflow:hidden;
      border:1px solid var(--borda);
      border-radius:var(--raio);
      background:#fff;
      box-shadow:var(--sombra);
    }
body.pagina-trajetoria .livro-imagem{
      height:300px;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
      padding:0;
      background:#fff;
    }
body.pagina-trajetoria .livro-imagem img{
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center;
      filter:none;
    }
body.pagina-trajetoria .livro-texto{padding:23px}
body.pagina-trajetoria .livro-texto h3{margin:0 0 8px;color:var(--verde-950)}
body.pagina-trajetoria .livro-texto p{margin:0;color:var(--texto-suave)}
body.pagina-trajetoria .nota-imagens{
      margin-top:22px;
      padding:15px 18px;
      border-left:4px solid var(--dourado);
      background:#fff9ea;
      color:#65572d;
      border-radius:8px;
    }
body.pagina-trajetoria .videos-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:22px;
    }
body.pagina-trajetoria .video-card{
      overflow:hidden;
      border-radius:var(--raio);
      border:1px solid var(--borda);
      background:#fff;
      box-shadow:var(--sombra);
    }
body.pagina-trajetoria .video{
      position:relative;
      aspect-ratio:16/9;
      background:#17251f;
    }
body.pagina-trajetoria .video iframe{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      border:0;
    }
body.pagina-trajetoria .video-texto{padding:22px}
body.pagina-trajetoria .video-texto h3{margin:0 0 8px;color:var(--verde-950)}
body.pagina-trajetoria .video-texto p{margin:0;color:var(--texto-suave);font-size:.95rem}
body.pagina-trajetoria .linha-tempo{
      position:relative;
      max-width:900px;
      margin:auto;
    }
body.pagina-trajetoria .linha-tempo::before{
      content:"";
      position:absolute;
      left:22px;
      top:5px;
      bottom:5px;
      width:3px;
      background:var(--verde-100);
    }
body.pagina-trajetoria .marco{
      position:relative;
      padding:0 0 28px 68px;
    }
body.pagina-trajetoria .marco:last-child{padding-bottom:0}
body.pagina-trajetoria .marco::before{
      content:"";
      position:absolute;
      left:11px;
      top:4px;
      width:22px;
      height:22px;
      border-radius:50%;
      background:var(--dourado);
      border:5px solid #fff;
      box-shadow:0 0 0 3px var(--verde-700);
    }
body.pagina-trajetoria .marco span{
      display:inline-block;
      margin-bottom:4px;
      color:var(--verde-800);
      font-weight:900;
    }
body.pagina-trajetoria .marco h3{margin:0 0 5px;color:var(--verde-950)}
body.pagina-trajetoria .marco p{margin:0;color:var(--texto-suave)}
body.pagina-trajetoria .memoria{
      border-radius:26px;
      padding:42px;
      background:linear-gradient(135deg,#fff,var(--verde-50));
      border:1px solid var(--borda);
    }
body.pagina-trajetoria .memoria-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:32px;
      align-items:center;
    }
body.pagina-trajetoria .memoria h2{margin-top:0;color:var(--verde-950)}
body.pagina-trajetoria .memoria-lista{display:grid;gap:12px}
body.pagina-trajetoria .memoria-item{
      display:flex;gap:12px;align-items:flex-start;
      padding:14px;
      border-radius:12px;
      background:#fff;
      border:1px solid var(--borda);
    }
body.pagina-trajetoria .cta{
      padding:52px 0;
      background:var(--verde-950);
      color:#fff;
    }
body.pagina-trajetoria .cta-box{
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:30px;
    }
body.pagina-trajetoria .cta h2{
      margin:0 0 8px;
      font-family:Georgia, "Times New Roman", serif;
      font-size:clamp(1.8rem,3vw,2.7rem);
    }
body.pagina-trajetoria .cta p{margin:0;color:#dcebe2}
body.pagina-trajetoria footer{
      padding:42px 0 24px;
      background:#24483c;
      color:#dcebe2;
    }
body.pagina-trajetoria .rodape-grid{
      display:grid;
      grid-template-columns:1.3fr 1fr 1fr;
      gap:30px;
    }
body.pagina-trajetoria footer h3{margin-top:0;color:#fff}
body.pagina-trajetoria footer a{color:#fff}
body.pagina-trajetoria .copyright{
      margin-top:30px;
      padding-top:20px;
      text-align:center;
      border-top:1px solid rgba(255,255,255,.16);
      font-size:.88rem;
    }
@media (max-width:950px){body.pagina-trajetoria .hero-grid, body.pagina-trajetoria .trajetoria-grid, body.pagina-trajetoria .memoria-grid{grid-template-columns:1fr}
body.pagina-trajetoria .retrato{max-width:520px}
body.pagina-trajetoria .cartao-destaque{position:static}
body.pagina-trajetoria .grade, body.pagina-trajetoria .livros-grid, body.pagina-trajetoria .videos-grid{grid-template-columns:1fr 1fr}
body.pagina-trajetoria .topo-conteudo{align-items:flex-start;flex-direction:column;padding:15px 0}
body.pagina-trajetoria .menu{justify-content:flex-start}}
@media (max-width:650px){body.pagina-trajetoria section{padding:52px 0}
body.pagina-trajetoria .grade, body.pagina-trajetoria .livros-grid, body.pagina-trajetoria .videos-grid, body.pagina-trajetoria .rodape-grid{grid-template-columns:1fr}
body.pagina-trajetoria .hero{padding:58px 0}
body.pagina-trajetoria .hero-grid{gap:32px}
body.pagina-trajetoria .retrato{min-height:310px}
body.pagina-trajetoria .retrato-interno{min-height:280px}
body.pagina-trajetoria .cta-box{display:block}
body.pagina-trajetoria .cta .btn{margin-top:22px;width:100%}
body.pagina-trajetoria .memoria{padding:28px 20px}
body.pagina-trajetoria .menu a{padding:8px 7px;font-size:.84rem}
body.pagina-trajetoria .menu-dropdown{width:100%;display:block}
body.pagina-trajetoria .menu-dropdown-botao{width:100%;text-align:left;padding:9px 7px;font-size:.84rem}
body.pagina-trajetoria .submenu{position:static;display:none;min-width:0;width:100%;margin-top:3px;opacity:1;visibility:visible;transform:none;box-shadow:none;border-radius:8px}
body.pagina-trajetoria .menu-dropdown:hover .submenu, body.pagina-trajetoria .menu-dropdown:focus-within .submenu, body.pagina-trajetoria .menu-dropdown.aberto .submenu{display:block}
body.pagina-trajetoria .submenu a{padding-left:20px}}
body.pagina-trajetoria .historia-redes{background:#f8fcf7;border-left:6px solid #2e7d32;padding:28px;margin:40px auto;border-radius:12px;max-width:900px}
body.pagina-trajetoria .historia-redes h2{color:#2e7d32}
body.pagina-trajetoria .historia-redes h3{color:#6b9b82;font-style:italic}
body.pagina-trajetoria .historia-redes p{text-align:justify;line-height:1.8}
body.pagina-trajetoria .historia-redes blockquote{background:#eef7ee;border-left:5px solid #4caf50;padding:18px;font-style:italic}

/* --- equipamentos-recomendados.html --- */

body.pagina-equipamentos.pagina-equipamentos{--verde-950:#315f50;--verde-900:#3f705e;--verde-800:#54856f;--verde-700:#6b9b82;--verde-100:#eaf3ed;--verde-50:#f6faf7;--dourado:#dfb95e;--texto:#20312a;--texto-suave:#52635b;--branco:#fff;--borda:#dce9e0;--sombra:0 16px 40px rgba(49,95,80,.10);--raio:18px;--largura:1160px}
body.pagina-equipamentos *{box-sizing:border-box}
html body.pagina-equipamentos{scroll-behavior:smooth}
body.pagina-equipamentos{margin:0;color:var(--texto);background:#fafcfb;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.pagina-equipamentos img{max-width:100%;display:block}
body.pagina-equipamentos a{color:var(--verde-700)}
body.pagina-equipamentos a:focus-visible{outline:3px solid var(--dourado);outline-offset:3px}
body.pagina-equipamentos .wrap{width:min(calc(100% - 32px),var(--largura));margin-inline:auto}
body.pagina-equipamentos .skip-link{position:absolute;left:-9999px;top:8px;z-index:9999;background:#fff;padding:10px 14px}
body.pagina-equipamentos .skip-link:focus{left:8px}
body.pagina-equipamentos .topbar{background:var(--verde-950);color:#eaf5ee;font-size:14px}
body.pagina-equipamentos .topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:7px 0}
body.pagina-equipamentos .topbar a{color:#fff;text-decoration:none}
body.pagina-equipamentos .site-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--borda);position:sticky;top:0;z-index:100}
body.pagina-equipamentos .header-row{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
body.pagina-equipamentos .brand{display:flex;align-items:center;gap:13px;color:var(--verde-950);text-decoration:none}
body.pagina-equipamentos .brand img{width:62px;height:62px;object-fit:contain;border-radius:50%}
body.pagina-equipamentos .brand strong{display:block;font-size:21px;line-height:1.2}
body.pagina-equipamentos .brand span{display:block;color:var(--texto-suave);font-size:13px}
body.pagina-equipamentos .menu{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap}
body.pagina-equipamentos .menu a{color:var(--texto);text-decoration:none;font-weight:700;font-size:14px;padding:9px 10px;border-radius:8px}
body.pagina-equipamentos .menu a:hover, body.pagina-equipamentos .menu a[aria-current=page]{background:var(--verde-100);color:var(--verde-900)}
body.pagina-equipamentos .menu .loja{background:var(--verde-700);color:#fff}
body.pagina-equipamentos .menu .loja:hover{background:var(--verde-900);color:#fff}
body.pagina-equipamentos .menu-dropdown{position:relative;display:flex;align-items:center}
body.pagina-equipamentos .menu-dropdown-botao{border:0;background:transparent;color:var(--texto);font:inherit;font-weight:700;font-size:14px;padding:9px 10px;border-radius:8px;cursor:pointer}
body.pagina-equipamentos .menu-dropdown-botao:hover, body.pagina-equipamentos .menu-dropdown:focus-within .menu-dropdown-botao{background:var(--verde-100);color:var(--verde-900)}
body.pagina-equipamentos .submenu{position:absolute;top:calc(100% + 6px);left:0;min-width:245px;padding:8px;border:1px solid var(--borda);border-radius:12px;background:#fff;box-shadow:var(--sombra);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s ease;z-index:150}
body.pagina-equipamentos .submenu a{display:block;padding:11px 13px;border-radius:8px;white-space:nowrap;text-transform:none}
body.pagina-equipamentos .submenu a:hover, body.pagina-equipamentos .submenu a[aria-current=page]{background:var(--verde-100);color:var(--verde-900)}
body.pagina-equipamentos .menu-dropdown:hover .submenu, body.pagina-equipamentos .menu-dropdown:focus-within .submenu, body.pagina-equipamentos .menu-dropdown.aberto .submenu{opacity:1;visibility:visible;transform:translateY(0)}
body.pagina-equipamentos .menu-voltar{border:1px solid var(--verde-800)}
body.pagina-equipamentos .hero{background:linear-gradient(135deg,#426f60,#78a98f);color:#fff;padding:66px 0}
body.pagina-equipamentos .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:44px}
body.pagina-equipamentos .eyebrow{display:inline-flex;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 12px;font-weight:700;font-size:13px;letter-spacing:.03em}
body.pagina-equipamentos h1{font-size:clamp(34px,5vw,56px);line-height:1.08;letter-spacing:-.035em;margin:18px 0}
body.pagina-equipamentos .hero p{color:#e1f0e7;font-size:19px}
body.pagina-equipamentos .hero-image{background:#fff;padding:12px;border-radius:22px;box-shadow:0 28px 60px rgba(0,0,0,.22)}
body.pagina-equipamentos .hero-image img{width:100%;height:340px;object-fit:cover;border-radius:14px}
body.pagina-equipamentos .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}
body.pagina-equipamentos .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 19px;border-radius:10px;text-decoration:none;font-weight:800;transition:.18s ease}
body.pagina-equipamentos .btn:hover{transform:translateY(-2px)}
body.pagina-equipamentos .btn-primary{background:var(--dourado);color:#1d2b24}
body.pagina-equipamentos .btn-light{color:#fff;border:1px solid rgba(255,255,255,.55)}
body.pagina-equipamentos main section{padding:62px 0;scroll-margin-top:105px}
body.pagina-equipamentos .section-soft{background:var(--verde-50);border-block:1px solid var(--borda)}
body.pagina-equipamentos .section-head{max-width:820px;margin:0 auto 34px;text-align:center}
body.pagina-equipamentos .section-head h2{color:var(--verde-950);font-size:clamp(27px,4vw,40px);line-height:1.2;margin:0 0 12px}
body.pagina-equipamentos .section-head p{margin:0;color:var(--texto-suave);font-size:18px}
body.pagina-equipamentos .disclosure{max-width:900px;margin:0 auto 28px;background:#fff8e7;border:1px solid #edd79f;border-radius:14px;padding:16px 18px;color:#5d4a1b}
body.pagina-equipamentos .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
body.pagina-equipamentos .card{background:#fff;padding:24px;border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra);display:flex;flex-direction:column}
body.pagina-equipamentos .icon{width:50px;height:50px;display:grid;place-items:center;border-radius:13px;background:var(--verde-100);font-size:25px}
body.pagina-equipamentos .card h3{color:var(--verde-900);margin:16px 0 7px;font-size:21px}
body.pagina-equipamentos .card p{color:var(--texto-suave);margin:0 0 14px}
body.pagina-equipamentos .card ul{padding-left:20px;color:var(--texto-suave);margin:0 0 18px}
body.pagina-equipamentos .card .btn{margin-top:auto;background:var(--verde-700);color:#fff}
body.pagina-equipamentos .tag{display:inline-block;width:max-content;background:var(--verde-100);color:var(--verde-950);padding:4px 9px;border-radius:999px;font-size:12px;font-weight:800;margin-bottom:4px}
body.pagina-equipamentos .soon{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 19px;border-radius:10px;font-weight:800;background:#eef3f0;color:#66756e;border:1px solid var(--borda);margin-top:auto}
body.pagina-equipamentos .choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
body.pagina-equipamentos .choice{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);padding:24px}
body.pagina-equipamentos .choice h3{color:var(--verde-900);margin:0 0 8px}
body.pagina-equipamentos .choice p{color:var(--texto-suave);margin:0}
body.pagina-equipamentos .cta{background:linear-gradient(135deg,#426f60,#78a98f);color:#fff;border-radius:24px;padding:42px;display:flex;align-items:center;justify-content:space-between;gap:30px}
body.pagina-equipamentos .cta h2{margin:0 0 8px;font-size:31px}
body.pagina-equipamentos .cta p{color:#dbece1;margin:0}
body.pagina-equipamentos .cta .btn{flex:0 0 auto;background:#25d366;color:#102a1c}
body.pagina-equipamentos footer{margin-top:64px;background:var(--verde-950);color:#d8e8dd;padding:42px 0 24px}
body.pagina-equipamentos .footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px}
body.pagina-equipamentos footer h2, body.pagina-equipamentos footer h3{color:#fff;margin-top:0}
body.pagina-equipamentos footer a{color:#e9f5ed}
body.pagina-equipamentos .footer-links{list-style:none;padding:0;margin:0}
body.pagina-equipamentos .footer-links li{margin:7px 0}
body.pagina-equipamentos .copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:30px;padding-top:20px;text-align:center;font-size:13px}
body.pagina-equipamentos .notice{font-size:12px;color:#bcd0c3}
body.pagina-equipamentos .whatsapp{position:fixed;right:19px;bottom:19px;z-index:90;display:flex;align-items:center;gap:8px;background:#25d366;color:#123822;padding:12px 16px;border-radius:999px;text-decoration:none;font-weight:900;box-shadow:0 12px 32px rgba(0,0,0,.22)}
@media (max-width:940px){body.pagina-equipamentos .topbar{display:none}
body.pagina-equipamentos .site-header{position:relative}
body.pagina-equipamentos .header-row{flex-direction:column;align-items:flex-start;padding:15px 0}
body.pagina-equipamentos .menu{justify-content:flex-start}
body.pagina-equipamentos .hero-grid{grid-template-columns:1fr}
body.pagina-equipamentos .grid{grid-template-columns:1fr 1fr}
body.pagina-equipamentos .choice-grid{grid-template-columns:1fr 1fr}}
@media (max-width:650px){body.pagina-equipamentos .menu-dropdown{width:100%;display:block}
body.pagina-equipamentos .menu-dropdown-botao{width:100%;text-align:center;background:#f3f8f5;font-size:13px}
body.pagina-equipamentos .submenu{position:static;display:none;min-width:0;width:100%;margin-top:4px;opacity:1;visibility:visible;transform:none;box-shadow:none}
body.pagina-equipamentos .menu-dropdown.aberto .submenu, body.pagina-equipamentos .menu-dropdown:focus-within .submenu{display:block}
body.pagina-equipamentos .wrap{width:min(calc(100% - 22px),var(--largura))}
body.pagina-equipamentos .brand strong{font-size:19px}
body.pagina-equipamentos .menu{width:100%;display:grid;grid-template-columns:1fr 1fr}
body.pagina-equipamentos .menu a{background:#f3f8f5;text-align:center;font-size:13px}
body.pagina-equipamentos .hero{padding:46px 0}
body.pagina-equipamentos .hero-image img{height:230px}
body.pagina-equipamentos .grid, body.pagina-equipamentos .choice-grid, body.pagina-equipamentos .footer-grid{grid-template-columns:1fr}
body.pagina-equipamentos main section{padding:47px 0}
body.pagina-equipamentos .cta{padding:30px 22px;display:block}
body.pagina-equipamentos .cta .btn{margin-top:22px;width:100%}
body.pagina-equipamentos .whatsapp span{display:none}
body.pagina-equipamentos .whatsapp{width:58px;height:58px;justify-content:center;padding:0;border-radius:50%;font-size:24px}}

/* ===== COMPLEMENTOS DA VERSÃO 3.0 ===== */
.menu-dropdown{position:relative;display:flex;align-items:center}
.menu-dropdown-botao{border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}
.submenu{position:absolute;top:100%;left:0;min-width:255px;padding:8px;background:#fff;border:1px solid #dce8dd;border-radius:12px;box-shadow:0 16px 38px rgba(35,91,41,.14);opacity:0;visibility:hidden;transform:translateY(-6px);transition:.2s ease;z-index:1200}
.submenu a{display:block;padding:11px 13px;border-radius:8px;white-space:nowrap;text-decoration:none}
.submenu a:hover{background:#e9f3ea}
.menu-dropdown:hover .submenu,.menu-dropdown:focus-within .submenu,.menu-dropdown.aberto .submenu{opacity:1;visibility:visible;transform:translateY(0)}
.whatsapp-flutuante{position:fixed;right:20px;bottom:20px;z-index:1500;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#25d366;color:#fff;text-decoration:none;font-size:27px;box-shadow:0 12px 30px rgba(0,0,0,.24)}
@media(max-width:900px){
  .menu-dropdown{width:100%;display:block}
  .menu-dropdown-botao{width:100%;text-align:left;padding:12px}
  .submenu{position:static;display:none;width:100%;min-width:0;opacity:1;visibility:visible;transform:none;box-shadow:none}
  .menu-dropdown.aberto .submenu{display:block}
}


/* ===== AJUSTES DA VERSÃO 3.1 ===== */
/* Textos sobre fundos verdes devem permanecer brancos. */
body.pagina-servicos .hero h1,
body.pagina-servicos .hero p,
body.pagina-servicos .cta h2,
body.pagina-servicos .cta p { color:#ffffff !important; }

body.pagina-equipamentos .hero h1,
body.pagina-equipamentos .hero .eyebrow,
body.pagina-equipamentos .cta h2 { color:#ffffff !important; }
body.pagina-equipamentos .hero p,
body.pagina-equipamentos .cta p { color:#eef7f1 !important; }

body.pagina-trajetoria .hero h1 { color:#ffffff !important; }


/* ==========================================================
   VERSÃO 3.3 — PADRONIZAÇÃO RESPONSIVA
   Ajustes de estética e funcionamento em celular, tablet e PC
   ========================================================== */

/* Base segura para impedir que bordas e espaçamentos aumentem a largura */
*, *::before, *::after {
  box-sizing: border-box;
}

html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
}

body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  margin: 0;
}

img,
picture,
video,
iframe,
embed,
object,
svg {
  max-width: 100%;
  height: auto;
}

iframe,
video {
  display: block;
}

table {
  max-width: 100%;
  border-collapse: collapse;
}

pre,
code {
  max-width: 100%;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

p,
li,
a,
button,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: anywhere;
  word-break: normal;
}

input,
select,
textarea,
button {
  max-width: 100%;
  font: inherit;
}

/* Containers padronizados */
.container,
.topo-conteudo,
.rodape-conteudo,
main,
section,
article {
  min-width: 0;
}

.container {
  width: min(1120px, calc(100% - 32px));
  margin-left: auto;
  margin-right: auto;
}

/* Cabeçalho e navegação */
.topo {
  width: 100%;
}

.topo-conteudo {
  gap: 18px;
}

.marca {
  min-width: 0;
}

.marca-texto {
  min-width: 0;
}

.marca-texto strong,
.marca-texto small {
  display: block;
}

.menu {
  min-width: 0;
}

.menu a,
.menu button {
  white-space: normal;
}

/* Botões e links de ação */
.btn,
.botao,
.cta,
a[class*="btn"],
a[class*="botao"],
button {
  max-width: 100%;
}

/* Cards, grades e blocos flexíveis */
.cards,
.grid,
.grade,
.servicos-grid,
.produtos-grid,
.livros-grid,
.videos-grid,
.equipamentos-grid,
.timeline,
.lista-cards {
  min-width: 0;
}

.cards > *,
.grid > *,
.grade > *,
.servicos-grid > *,
.produtos-grid > *,
.livros-grid > *,
.videos-grid > *,
.equipamentos-grid > *,
.timeline > *,
.lista-cards > * {
  min-width: 0;
}

/* Tabelas largas ficam roláveis sem estourar a página */
.table-responsive,
.tabela-responsiva {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 900px) {
  .container {
    width: min(100% - 24px, 1120px);
  }

  .topo-conteudo {
    min-height: 72px;
    flex-wrap: wrap;
  }

  .menu-botao {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    flex: 0 0 auto;
  }

  .menu-botao span {
    display: block;
    width: 24px;
    height: 2px;
  }

  .menu {
    width: 100%;
    max-width: 100%;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    padding: 10px 0 14px;
  }

  .menu.aberto {
    display: flex;
  }

  .menu > a,
  .menu-dropdown-botao {
    width: 100%;
    padding: 12px 14px;
    text-align: left;
    border-radius: 8px;
  }

  .menu-dropdown {
    width: 100%;
  }

  .submenu {
    width: 100%;
    max-width: 100%;
    margin-top: 4px;
  }

  .submenu a {
    white-space: normal;
    padding-left: 26px;
  }

  h1 {
    font-size: clamp(1.85rem, 7vw, 2.55rem);
    line-height: 1.12;
  }

  h2 {
    font-size: clamp(1.45rem, 5.5vw, 2rem);
    line-height: 1.2;
  }

  h3 {
    font-size: clamp(1.15rem, 4.5vw, 1.45rem);
  }

  .hero,
  .banner,
  .destaque,
  .chamada,
  .intro {
    padding-left: 18px;
    padding-right: 18px;
  }

  .cards,
  .grid,
  .grade,
  .servicos-grid,
  .produtos-grid,
  .livros-grid,
  .videos-grid,
  .equipamentos-grid {
    grid-template-columns: 1fr !important;
  }

  .rodape-conteudo {
    grid-template-columns: 1fr !important;
    gap: 18px;
  }

  .whatsapp-flutuante {
    right: 14px;
    bottom: 14px;
    width: 54px;
    height: 54px;
  }

  /* Impede larguras fixas antigas de ultrapassarem a tela */
  [style*="width:"] {
    max-width: 100%;
  }
}

@media (max-width: 520px) {
  .container {
    width: min(100% - 20px, 1120px);
  }

  .marca-simbolo {
    flex: 0 0 auto;
  }

  .marca-texto strong {
    font-size: 0.98rem;
    line-height: 1.15;
  }

  .marca-texto small {
    font-size: 0.78rem;
  }

  .topo-conteudo {
    gap: 10px;
  }

  main,
  section {
    scroll-margin-top: 82px;
  }

  .btn,
  .botao,
  .cta,
  a[class*="btn"],
  a[class*="botao"] {
    width: 100%;
    text-align: center;
    justify-content: center;
  }

  .whatsapp-flutuante {
    width: 50px;
    height: 50px;
    font-size: 23px;
  }
}

/* ==========================================================
   VERSÃO 3.4 — CORREÇÃO DO MENU MÓVEL
   Garante que o menu fique recolhido nas páginas internas
   e abra somente quando o botão de três linhas for acionado.
   ========================================================== */

@media (max-width: 1080px) {
  body.pagina-servicos .topo,
  body.pagina-trajetoria .topo,
  body.pagina-equipamentos .topo,
  body.pagina-ferramentas .topo {
    position: sticky;
    top: 0;
    z-index: 2000;
  }

  body.pagina-servicos .topo-conteudo,
  body.pagina-trajetoria .topo-conteudo,
  body.pagina-equipamentos .topo-conteudo,
  body.pagina-ferramentas .topo-conteudo {
    min-height: 72px;
    padding-top: 10px;
    padding-bottom: 10px;
    flex-direction: row;
    align-items: center;
    flex-wrap: nowrap;
  }

  body.pagina-servicos .menu-botao,
  body.pagina-trajetoria .menu-botao,
  body.pagina-equipamentos .menu-botao,
  body.pagina-ferramentas .menu-botao {
    display: inline-flex !important;
    margin-left: auto;
    position: relative;
    z-index: 2002;
  }

  body.pagina-servicos .menu,
  body.pagina-trajetoria .menu,
  body.pagina-equipamentos .menu,
  body.pagina-ferramentas .menu {
    display: none !important;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    max-height: calc(100vh - 72px);
    overflow-y: auto;
    padding: 10px 14px 16px;
    flex-direction: column !important;
    grid-template-columns: none !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 4px;
    background: #fff;
    border-bottom: 1px solid #dce8dd;
    box-shadow: 0 14px 24px rgba(22, 69, 31, .12);
    z-index: 2001;
  }

  body.pagina-servicos .menu.aberto,
  body.pagina-trajetoria .menu.aberto,
  body.pagina-equipamentos .menu.aberto,
  body.pagina-ferramentas .menu.aberto {
    display: flex !important;
  }

  body.pagina-servicos .menu > a,
  body.pagina-trajetoria .menu > a,
  body.pagina-equipamentos .menu > a,
  body.pagina-ferramentas .menu > a,
  body.pagina-servicos .menu-dropdown-botao,
  body.pagina-trajetoria .menu-dropdown-botao,
  body.pagina-equipamentos .menu-dropdown-botao,
  body.pagina-ferramentas .menu-dropdown-botao {
    width: 100%;
    padding: 12px 10px;
    text-align: left;
    border-radius: 8px;
    background: transparent;
  }

  body.pagina-servicos .menu-dropdown,
  body.pagina-trajetoria .menu-dropdown,
  body.pagina-equipamentos .menu-dropdown,
  body.pagina-ferramentas .menu-dropdown {
    width: 100%;
    display: block;
  }

  body.pagina-servicos .submenu,
  body.pagina-trajetoria .submenu,
  body.pagina-equipamentos .submenu,
  body.pagina-ferramentas .submenu {
    position: static;
    display: none;
    width: 100%;
    min-width: 0;
    margin-top: 4px;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
  }

  body.pagina-servicos .menu-dropdown.aberto .submenu,
  body.pagina-trajetoria .menu-dropdown.aberto .submenu,
  body.pagina-equipamentos .menu-dropdown.aberto .submenu,
  body.pagina-ferramentas .menu-dropdown.aberto .submenu {
    display: block;
  }

  /* Em telas de toque, o simples foco não deve manter o submenu aberto. */
  body.pagina-servicos .menu-dropdown:focus-within:not(.aberto) .submenu,
  body.pagina-trajetoria .menu-dropdown:focus-within:not(.aberto) .submenu,
  body.pagina-equipamentos .menu-dropdown:focus-within:not(.aberto) .submenu,
  body.pagina-ferramentas .menu-dropdown:focus-within:not(.aberto) .submenu {
    display: none;
  }
}

/* Navegação de apoio nos pontos acessados diretamente pelo submenu */
.navegacao-interna {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 30px;
  padding-top: 22px;
  border-top: 1px solid rgba(47, 116, 54, .18);
}

.navegacao-interna a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 11px 18px;
  border: 1px solid #2f7436;
  border-radius: 999px;
  color: #16451f;
  background: #fff;
  text-decoration: none;
  font-weight: 700;
}

.navegacao-interna a:hover {
  background: #e9f3ea;
}

@media (max-width: 520px) {
  .navegacao-interna {
    flex-direction: column;
  }

  .navegacao-interna a {
    width: 100%;
  }
}

/* ==========================================================
   VERSÃO 3.5 — FERRAMENTAS DO PERITO
   ========================================================== */

body.pagina-ferramentas {
  background: #f7faf7;
}

.recursos-hero {
  padding: 68px 0;
  background:
    radial-gradient(circle at 88% 20%, rgba(255,255,255,.18), transparent 24%),
    linear-gradient(135deg, #173f20, #2f7436);
  color: #fff;
}

.recursos-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  align-items: center;
  gap: 44px;
}

.recursos-kicker,
.recurso-tag {
  display: inline-block;
  margin: 0 0 10px;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.recursos-kicker {
  color: #d9efd9;
}

.recursos-hero h1 {
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(2.2rem, 5vw, 4rem);
}

.recursos-hero p {
  max-width: 760px;
  margin: 0;
  color: #eef7ef;
  font-size: 1.14rem;
  line-height: 1.75;
}

.recursos-acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.recursos-painel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.recursos-painel div {
  min-height: 132px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 9px;
  padding: 18px;
  text-align: center;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 18px;
  background: rgba(255,255,255,.1);
  backdrop-filter: blur(6px);
}

.recursos-painel span {
  font-size: 2rem;
}

.recursos-intro {
  padding: 56px 0 28px;
}

.recursos-intro .disclosure {
  margin-top: 24px;
  text-align: left;
}

.recursos-secoes {
  padding: 28px 0 72px;
}

.recursos-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.recurso-card {
  min-width: 0;
  padding: 30px;
  border: 1px solid #dbe8dc;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(29, 80, 37, .08);
}

.recurso-icone {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 20px;
  border-radius: 16px;
  background: #e9f3ea;
  font-size: 1.7rem;
}

.recurso-tag {
  color: #2f7436;
}

.recurso-card h2,
.bibliografia-area h2 {
  margin-top: 0;
  color: #173f20;
}

.recurso-card p {
  line-height: 1.7;
}

.recurso-card ul {
  margin: 20px 0;
  padding-left: 22px;
}

.recurso-card li + li {
  margin-top: 7px;
}

.recurso-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #1f6529;
  font-weight: 800;
  text-decoration: none;
}

.recurso-link:hover {
  text-decoration: underline;
}

.recurso-status {
  display: inline-flex;
  padding: 9px 13px;
  border-radius: 999px;
  background: #eef4ee;
  color: #536554;
  font-size: .9rem;
  font-weight: 700;
}

.bibliografia-area {
  padding: 72px 0;
  background: #eef5ee;
}

.bibliografia-area .section-head {
  max-width: 820px;
  margin-bottom: 32px;
}

.bibliografia-grid {
  display: grid;
  gap: 20px;
}

.livro-card {
  display: grid;
  grid-template-columns: 170px minmax(0, 1fr);
  gap: 26px;
  align-items: center;
  padding: 24px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid #d8e7d9;
}

.livro-card img {
  width: 100%;
  max-height: 210px;
  object-fit: contain;
  border-radius: 12px;
  background: #f5f5f5;
}

.livro-card h3 {
  margin: 4px 0 10px;
  color: #173f20;
  font-size: 1.45rem;
}

.livro-card p {
  margin-bottom: 16px;
  line-height: 1.7;
}

.recursos-proximos {
  padding: 64px 0;
}

@media (max-width: 900px) {
  .recursos-hero-grid,
  .recursos-grid {
    grid-template-columns: 1fr;
  }

  .recursos-painel {
    max-width: 600px;
  }
}

@media (max-width: 620px) {
  .recursos-hero {
    padding: 48px 0;
  }

  .recursos-painel {
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  .recursos-painel div {
    min-height: 108px;
    padding: 14px 10px;
  }

  .recurso-card {
    padding: 22px;
  }

  .livro-card {
    grid-template-columns: 1fr;
  }

  .livro-card img {
    max-width: 190px;
    margin: 0 auto;
  }
}


/* ==========================================================
   VERSÃO 3.6 — SUBMENU ASSESSORIA, CONTATO E MENU VISÍVEL
   ========================================================== */

:root {
  --laranja-portal: #e58a18;
  --laranja-portal-escuro: #bd6c0b;
}

/* Mantém o cabeçalho visível durante a rolagem em todas as páginas. */
.topo {
  position: sticky !important;
  top: 0 !important;
  z-index: 3000 !important;
  width: 100%;
}

/* O botão do submenu segue o mesmo padrão visual dos links do menu. */
.menu-dropdown-botao {
  color: #294a31;
  text-transform: uppercase;
}

.menu-dropdown-botao.ativo,
.menu-dropdown-assessoria:focus-within > .menu-dropdown-botao {
  color: var(--verde-800);
  border-bottom-color: var(--dourado);
}

/* Página de contato */
.contato-acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
  margin: 28px 0 24px;
}

.botao-contato {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 13px 22px;
  border: 0;
  border-radius: 999px;
  background: #255f4b;
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  transition: transform .2s ease, background .2s ease;
}

.botao-contato:hover {
  transform: translateY(-2px);
  background: #174a39;
}

.botao-whatsapp {
  background: #187c52;
}

.botao-whatsapp:hover {
  background: #11653f;
}

.botao-voltar-laranja {
  background: var(--laranja-portal);
  color: #fff;
}

.botao-voltar-laranja:hover {
  background: var(--laranja-portal-escuro);
  color: #fff;
}

.dados-contato {
  max-width: 650px;
  margin: 0 auto;
  padding: 22px;
  border: 1px solid #dfe7e2;
  border-radius: 12px;
  background: #f8fbf9;
  text-align: center;
}

.area-publicidade {
  padding: 24px 0 10px;
}

.identificacao-publicidade {
  text-align: center;
  font-size: .72rem;
  letter-spacing: .12em;
  color: #777;
  margin-bottom: 10px;
}

.espaco-publicidade {
  min-height: 90px;
  border-top: 1px solid #ececec;
  border-bottom: 1px solid #ececec;
}

@media (max-width: 1080px) {
  /* Garante que ambos os submenus funcionem no menu móvel. */
  .menu-dropdown-assessoria {
    width: 100%;
    display: block;
  }

  .menu-dropdown-assessoria .submenu {
    position: static;
    display: none;
    width: 100%;
    min-width: 0;
    margin-top: 4px;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
  }

  .menu-dropdown-assessoria.aberto .submenu {
    display: block;
  }

  .menu-dropdown-assessoria .submenu a {
    padding-left: 26px;
    white-space: normal;
  }
}

@media (max-width: 600px) {
  .contato-acoes {
    flex-direction: column;
  }

  .botao-contato {
    width: 100%;
  }
}


/* ==========================================================
   VERSÃO 3.7 — CORREÇÃO VISUAL DEFINITIVA
   ========================================================== */

/* Cabeçalho fixo em todas as páginas */
.topo {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
  background: rgba(255,255,255,.98) !important;
  border-bottom: 1px solid #dce8dd !important;
  box-shadow: 0 5px 18px rgba(22,69,31,.08) !important;
}

/* Compensa a altura do cabeçalho fixo */
body {
  padding-top: 82px !important;
}

@media (max-width: 1080px) {
  body {
    padding-top: 72px !important;
  }
}

/* Botões da página Contato — regras reforçadas */
body.pagina-contato .contato-acoes {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 30px auto 26px !important;
}

body.pagina-contato .contato-acoes a.botao-contato {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 13px 22px !important;
  border: none !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background: #315f50 !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  box-shadow: 0 6px 16px rgba(49,95,80,.16) !important;
}

body.pagina-contato .contato-acoes a.botao-contato:hover {
  transform: translateY(-2px) !important;
  background: #24483c !important;
}

body.pagina-contato .contato-acoes a.botao-whatsapp {
  background: #1b8f5a !important;
}

body.pagina-contato .contato-acoes a.botao-whatsapp:hover {
  background: #126d43 !important;
}

body.pagina-contato .contato-acoes a.botao-voltar-laranja {
  background: #e58a18 !important;
  color: #ffffff !important;
}

body.pagina-contato .contato-acoes a.botao-voltar-laranja:hover {
  background: #bd6c0b !important;
}

@media (max-width: 650px) {
  body.pagina-contato .contato-acoes {
    flex-direction: column !important;
    width: 100% !important;
  }

  body.pagina-contato .contato-acoes a.botao-contato {
    width: 100% !important;
  }
}

/* Evita que o menu fixo fique escondido ao navegar por âncoras */
section[id],
div[id] {
  scroll-margin-top: 100px;
}


/* ==========================================================
   VERSÃO 3.8 — AJUSTES DAS OBSERVAÇÕES
   ========================================================== */

/* A página de Revisionais usava .container também no conteúdo,
   o que aumentava indevidamente o cabeçalho fixo. */
body.pagina-revisionais .topo .container {
  width: min(calc(100% - 40px), 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.pagina-revisionais .topo-conteudo {
  min-height: 82px !important;
}

body.pagina-revisionais .pagina-cabecalho {
  margin-top: 0 !important;
}

/* Link de acessibilidade: fica oculto e aparece somente ao receber foco. */
.skip-link {
  position: fixed !important;
  top: 8px !important;
  left: -9999px !important;
  z-index: 12000 !important;
  padding: 10px 14px !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #16451f !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.16) !important;
}

.skip-link:focus {
  left: 8px !important;
}

/* Botões da página Ferramentas do Perito. */
body.pagina-ferramentas .recursos-acoes {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 28px !important;
}

body.pagina-ferramentas .botao-recurso,
body.pagina-ferramentas .botao-sugestao {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  transition: transform .2s ease, background .2s ease !important;
}

body.pagina-ferramentas .botao-recurso:hover,
body.pagina-ferramentas .botao-sugestao:hover {
  transform: translateY(-2px) !important;
}

body.pagina-ferramentas .btn-primary.botao-recurso {
  background: #dfb95e !important;
  color: #20312a !important;
  border: 1px solid #dfb95e !important;
}

body.pagina-ferramentas .btn-light.botao-recurso {
  background: transparent !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.72) !important;
}

body.pagina-ferramentas .botao-sugestao {
  background: #e58a18 !important;
  color: #ffffff !important;
  border: 1px solid #e58a18 !important;
}

body.pagina-ferramentas .botao-sugestao:hover {
  background: #bd6c0b !important;
}

body.pagina-ferramentas .recurso-link-destaque {
  display: inline-flex !important;
  margin-top: auto !important;
  padding: 11px 16px !important;
  border-radius: 999px !important;
  background: #e9f3ea !important;
  color: #16451f !important;
  text-decoration: none !important;
}

/* Página da curadoria/loja: menu com o mesmo padrão do portal. */
body.pagina-loja-esboco .topo .container {
  width: min(calc(100% - 40px), 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.pagina-loja-esboco .topo-conteudo {
  min-height: 82px !important;
}

body.pagina-loja-esboco .menu,
body.pagina-loja-esboco .menu a,
body.pagina-loja-esboco .menu-dropdown-botao {
  font-size: 14px !important;
}

body.pagina-loja-esboco .produto-tag-hero {
  color: #ffffff !important;
  background: rgba(255,255,255,.16) !important;
  border: 1px solid rgba(255,255,255,.30) !important;
}

@media (max-width: 1080px) {
  body.pagina-revisionais .topo .container,
  body.pagina-loja-esboco .topo .container {
    width: min(100% - 24px, 1180px) !important;
  }

  body.pagina-loja-esboco .menu-botao {
    display: inline-flex !important;
    margin-left: auto !important;
  }

  body.pagina-loja-esboco .menu {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 10px 14px 16px !important;
    background: #ffffff !important;
    border-bottom: 1px solid #dce8dd !important;
    box-shadow: 0 14px 24px rgba(22,69,31,.12) !important;
  }

  body.pagina-loja-esboco .menu.aberto {
    display: flex !important;
  }

  body.pagina-loja-esboco .menu > a,
  body.pagina-loja-esboco .menu-dropdown-botao {
    width: 100% !important;
    padding: 12px 10px !important;
    text-align: left !important;
  }

  body.pagina-loja-esboco .menu-dropdown {
    width: 100% !important;
    display: block !important;
  }

  body.pagina-loja-esboco .submenu {
    position: static !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-top: 4px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
  }

  body.pagina-loja-esboco .menu-dropdown.aberto .submenu {
    display: block !important;
  }
}

@media (max-width: 620px) {
  body.pagina-ferramentas .recursos-acoes {
    flex-direction: column !important;
  }

  body.pagina-ferramentas .botao-recurso,
  body.pagina-ferramentas .botao-sugestao {
    width: 100% !important;
  }
}


/* ==========================================================
   VERSÃO 3.9 — PADRONIZAÇÃO DA PÁGINA FERRAMENTAS
   ========================================================== */

/* Mantém Ferramentas do Perito com a mesma largura e escala visual
   das demais páginas do portal. */
body.pagina-ferramentas .topo .container,
body.pagina-ferramentas main > section > .container,
body.pagina-ferramentas .navegacao-interna.container,
body.pagina-ferramentas .rodape .container {
  width: min(calc(100% - 40px), 1180px) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.pagina-ferramentas .topo-conteudo {
  min-height: 82px !important;
}

body.pagina-ferramentas .recursos-hero {
  width: 100% !important;
  margin: 0 !important;
}

body.pagina-ferramentas .recursos-hero h1 {
  font-size: clamp(2rem, 4.4vw, 3.55rem) !important;
}

body.pagina-ferramentas .livro-card-leasing {
  border-left: 5px solid #dfb95e;
}

@media (max-width: 1080px) {
  body.pagina-ferramentas .topo .container,
  body.pagina-ferramentas main > section > .container,
  body.pagina-ferramentas .navegacao-interna.container,
  body.pagina-ferramentas .rodape .container {
    width: min(100% - 24px, 1180px) !important;
  }
}

@media (max-width: 620px) {
  body.pagina-ferramentas .topo .container,
  body.pagina-ferramentas main > section > .container,
  body.pagina-ferramentas .navegacao-interna.container,
  body.pagina-ferramentas .rodape .container {
    width: min(100% - 20px, 1180px) !important;
  }
}


/* ==========================================================
   VERSÃO 4.2 — PÁGINA LIVROS E EQUIPAMENTOS
   Reposição dos estilos específicos sem substituir o CSS mestre
   ========================================================== */

body.pagina-loja-esboco {
  margin: 0;
  background: #f7faf8;
  color: #20312a;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.6;
}

body.pagina-loja-esboco .loja-hero {
  padding: 72px 0;
  background: linear-gradient(135deg, #315f50, #6b9b82);
  color: #fff;
}

body.pagina-loja-esboco .loja-hero h1 {
  margin: 0 0 12px;
  color: #fff;
  font-size: clamp(2rem, 5vw, 3.6rem);
}

body.pagina-loja-esboco .loja-hero p {
  max-width: 820px;
  margin: 0;
  color: #eef7f2;
  font-size: 1.08rem;
}

body.pagina-loja-esboco .loja-aviso {
  margin-top: 24px;
  padding: 15px 18px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 14px;
  background: rgba(255,255,255,.10);
}

body.pagina-loja-esboco .loja-secao {
  padding: 60px 0;
}

body.pagina-loja-esboco .loja-secao:nth-of-type(even) {
  background: #eef5f1;
}

body.pagina-loja-esboco .loja-titulo {
  max-width: 820px;
  margin: 0 auto 32px;
  text-align: center;
}

body.pagina-loja-esboco .loja-titulo h2 {
  margin: 0 0 10px;
  color: #315f50;
  font-size: clamp(1.7rem, 4vw, 2.5rem);
}

body.pagina-loja-esboco .loja-titulo p {
  margin: 0;
  color: #52635b;
}

body.pagina-loja-esboco .loja-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

body.pagina-loja-esboco .produto-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 22px;
  border: 1px solid #dce9e0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(49,95,80,.08);
}

body.pagina-loja-esboco .produto-imagem {
  width: 100%;
  aspect-ratio: 4 / 3;
  display: grid;
  place-items: center;
  overflow: hidden;
  margin-bottom: 18px;
  border-radius: 13px;
  background: #f0f4f2;
}

body.pagina-loja-esboco .produto-imagem img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

body.pagina-loja-esboco .produto-placeholder {
  font-size: 3rem;
}

body.pagina-loja-esboco .produto-tag {
  display: inline-block;
  width: max-content;
  margin-bottom: 8px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eaf3ed;
  color: #315f50;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .06em;
}

body.pagina-loja-esboco .produto-card h3 {
  margin: 0 0 10px;
  color: #24483c;
  font-size: 1.25rem;
}

body.pagina-loja-esboco .produto-card p {
  margin: 0 0 12px;
  color: #52635b;
}

body.pagina-loja-esboco .produto-card ul {
  margin: 0 0 18px;
  padding-left: 20px;
  color: #52635b;
}

body.pagina-loja-esboco .produto-card li + li {
  margin-top: 5px;
}

body.pagina-loja-esboco .produto-nota {
  margin-top: auto;
  padding: 12px;
  border-left: 4px solid #dfb95e;
  background: #fff8e8;
  color: #5c4c22;
  font-size: .92rem;
}

body.pagina-loja-esboco .produto-acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

body.pagina-loja-esboco .produto-botao {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 11px 17px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 800;
  transition: transform .2s ease;
}

body.pagina-loja-esboco .produto-botao.ml {
  background: #ffe600;
  color: #2e2e2e;
}

body.pagina-loja-esboco .produto-botao.detalhes {
  border: 1px solid #315f50;
  background: #fff;
  color: #315f50;
}

body.pagina-loja-esboco .produto-botao:hover {
  transform: translateY(-2px);
}

body.pagina-loja-esboco .aviso-links-mercado {
  margin-top: 24px;
  padding: 14px 16px;
  border: 1px solid #edd79f;
  border-radius: 12px;
  background: #fff8e7;
  color: #5d4a1b;
}

body.pagina-loja-esboco .roteiro {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

body.pagina-loja-esboco .etapa {
  padding: 20px;
  border: 1px solid #dce9e0;
  border-radius: 16px;
  background: #fff;
}

body.pagina-loja-esboco .etapa strong {
  display: block;
  margin-bottom: 8px;
  color: #315f50;
}

body.pagina-loja-esboco .loja-final {
  padding: 55px 0;
  text-align: center;
  background: #315f50;
  color: #fff;
}

body.pagina-loja-esboco .loja-final h2 {
  color: #fff;
}

body.pagina-loja-esboco .loja-final p {
  max-width: 760px;
  margin: 0 auto 22px;
}

@media (max-width: 900px) {
  body.pagina-loja-esboco .loja-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.pagina-loja-esboco .roteiro {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  body.pagina-loja-esboco .loja-grid,
  body.pagina-loja-esboco .roteiro {
    grid-template-columns: 1fr;
  }

  body.pagina-loja-esboco .produto-acoes {
    flex-direction: column;
  }

  body.pagina-loja-esboco .produto-botao {
    width: 100%;
  }
}
