/* Footer shared styles (copiado do layout da landing) */
footer { background: var(--navy); padding: 60px 7% 32px; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 3rem; max-width: 1200px; margin: 0 auto; padding-bottom: 2.5rem; border-bottom: 1px solid rgba(255,255,255,0.08); }
.footer-logo img { height: 30px; margin-bottom: 1rem; filter: brightness(0) invert(1); opacity: 0.85; }
.footer-brand p { color: rgba(255,255,255,0.45); font-size: 0.84rem; line-height: 1.7; max-width: 260px; margin-bottom: 1.375rem; }
.footer-social { display: flex; gap: 0.625rem; }
.social-link { width: 34px; height: 34px; border-radius: 7px; border: 1px solid rgba(255,255,255,0.12); display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,0.4); font-size: 0.75rem; font-weight: 700; text-decoration: none; transition: border-color 0.2s, color 0.2s; }
.social-link:hover { border-color: var(--teal); color: var(--teal); }
.footer-col h5 { color: rgba(255,255,255,0.8); font-size: 0.8rem; font-weight: 700; margin-bottom: 1.125rem; }
.footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 0.65rem; }
.footer-col li a { color: rgba(255,255,255,0.4); font-size: 0.82rem; text-decoration: none; transition: color 0.2s; }
.footer-col li a:hover { color: rgba(255,255,255,0.85); }
.footer-bottom { max-width: 1200px; margin: 2rem auto 0; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 0.75rem; }
.footer-bottom p { color: rgba(255,255,255,0.25); font-size: 0.75rem; }

@media (max-width: 1024px) {
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
}
@media (max-width: 768px) {
  .footer-grid{grid-template-columns:1fr;gap:2rem}
  .footer-bottom{flex-direction:column;align-items:flex-start}
}
