/* ===== HOME — seção de soluções em cards ===== */
.hero-home{padding:96px 0 72px;}
.hero-home .sub{max-width:56ch;}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:24px;margin-top:8px;}
.card{position:relative;background:var(--branco);border:1px solid rgba(10,36,28,.14);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:var(--tinta);box-shadow:0 10px 26px -18px rgba(10,36,28,.35);transition:transform .18s ease,box-shadow .18s ease;}
/* especificidade maior que ".reveal.visivel" (que fixa transform:none após a
   animação de entrada) para o hover conseguir sobrepor e levantar o card */
.cards a.card:hover{transform:translateY(-3px);box-shadow:0 18px 38px -18px rgba(10,36,28,.45);}
a.card:hover .card-seta{background:var(--jade);border-color:var(--jade);}
.card-img{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,var(--abissal) 0%,#123c2e 55%,var(--jade) 130%);}
.card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease;}
.cards a.card:hover .card-img img{transform:scale(1.06);}
.card-img .rotulo-img{position:absolute;left:18px;bottom:14px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--areia);}
.card-seta{position:absolute;right:18px;bottom:-22px;width:44px;height:44px;border-radius:50%;background:var(--abissal);border:1px solid var(--abissal);color:var(--branco);display:flex;align-items:center;justify-content:center;font-size:18px;z-index:2;transition:background .18s ease,border-color .18s ease;}
.card-corpo{padding:26px 22px 24px;display:flex;flex-direction:column;gap:8px;flex:1;}
.card-corpo h3{font-family:var(--display);font-weight:400;font-size:21px;color:var(--abissal);line-height:1.2;}
.card-corpo p{font-size:14.5px;color:#4a504c;line-height:1.6;}
.card-corpo .card-meta{margin-top:auto;padding-top:10px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--jade);}
.card.breve{opacity:.75;}
.card.breve .card-img{background:linear-gradient(135deg,#2a2f2c 0%,#3c433f 100%);}
.card.breve .card-seta{background:#7a807c;border-color:#7a807c;}
.badge-breve{position:absolute;top:14px;left:14px;background:var(--marfim);border:1px solid rgba(10,36,28,.2);border-radius:3px;padding:4px 10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--abissal);z-index:2;}
/* quem responde */
.quem{display:grid;grid-template-columns:150px 1fr;gap:28px;align-items:center;}
.quem .foto{width:150px;height:150px;border-radius:6px;overflow:hidden;border:1px solid rgba(10,36,28,.18);background:var(--abissal);}
.quem .foto img{width:100%;height:100%;object-fit:cover;display:block;}
.quem p{max-width:60ch;color:#4a504c;}
.quem .link-sobre{display:inline-block;margin-top:10px;font-family:var(--sans);font-weight:600;font-size:14px;color:var(--jade);text-decoration:none;border-bottom:1.5px solid var(--jade);padding-bottom:2px;}
.quem .link-sobre:hover{color:#175840;border-color:#175840;}
@media(max-width:640px){.quem{grid-template-columns:1fr;}.quem .foto{width:120px;height:120px;}}
