/* Ferramentas gratuitas — estilos específicos, carregados só nessas páginas */

.tool-embed{
  width:min(100%, 1100px);
  margin:0 auto 8px;
  padding:0 20px;
}
.tool-embed-frame{
  border:1px solid rgba(17,17,17,.08);
  border-radius:var(--radius-lg);
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow-md);
}
.tool-embed-frame iframe{
  display:block;
  width:100%;
  height:840px;
  border:0;
}
.tool-embed-note{
  max-width:760px;
  margin:14px auto 0;
  text-align:center;
  color:var(--texto-suave);
  font-size:13px;
  line-height:1.6;
}
@media(max-width:780px){
  .tool-embed-frame iframe{ height:1180px; }
}

.ferramentas-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:20px;
  max-width:1000px;
  margin:0 auto;
  padding:0 20px;
}
.ferramenta-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  background:var(--caixa-clara);
  border:1px solid rgba(17,17,17,.08);
  border-radius:var(--radius-lg);
  padding:28px;
  box-shadow:var(--shadow-sm);
  transition:transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s ease;
}
.ferramenta-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-md);
}
.ferramenta-card .selo{
  display:inline-flex;
  align-self:flex-start;
  font-size:11px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#242421;
  background:#f1f0ea;
  padding:4px 10px;
  border-radius:999px;
}
.ferramenta-card h2{
  font-size:22px;
  font-weight:500;
  color:var(--preto);
  letter-spacing:-.01em;
}
.ferramenta-card p{
  color:var(--texto-suave);
  font-size:15px;
  line-height:1.6;
}
.ferramenta-card .btn{ margin-top:auto; align-self:flex-start; }
