.site-footer { background:#fdfcfb; color:#657365; border-radius:48px 48px 0 0; font-family:'Figtree','Segoe UI',sans-serif; }
.site-footer .container { width:min(1240px,88%); }
.footer-top { display:grid; grid-template-columns:1.9fr 1fr 1.2fr .9fr; gap:52px; padding:60px 0 64px; }
.footer-top > * { min-width:0; }
.footer-logo { display:block; width:200px; max-width:100%; }
.footer-logo img { display:block; width:100%; height:auto; }
.footer-description { max-width:340px; margin:18px 0; color:#748073; font-size:13px; line-height:1.8; }
.footer-social { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0 16px; }
.footer-social a { display:grid; place-items:center; width:34px; height:34px; flex-shrink:0; border:1px solid #e0e5dc; border-radius:50%; background:#f5f7f2; color:#30613c; transition:background-color .2s ease; }
.footer-social svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.4; }
.footer-col h2 { margin:8px 0 19px; color:#255335; font-family:inherit; font-size:13px; font-weight:600; line-height:1.5; }
.footer-col ul { display:grid; gap:11px; list-style:none; margin:0; padding:0; }
.footer-col a { display:inline-block; font-size:12px; line-height:1.6; }
.site-footer a { color:inherit; cursor:pointer; text-decoration:none; transition:transform .25s ease; }
.site-footer a:not(.footer-logo):not(.footer-social a):hover { transform:translateX(4px); }
.site-footer .footer-social a:hover { background:#dcefdc; }
.footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:20px; padding:25px 0 30px; border-top:1px solid #e2e5dd; }
.footer-copyright { margin:0; color:#7d877a; font-size:11px; line-height:1.8; }
.footer-mobile-tagline { display:none; }
.footer-dev-wrap,.footer-dev-link { display:inline-flex; align-items:center; gap:8px; }
.footer-dev-wrap { color:#56745b; white-space:nowrap; font-size:11px; }
.footer-dev-name { font-weight:500; }
.footer-dev-logo { width:24px; height:24px; }
.site-footer :is(a,button):is(:focus,:focus-visible) { outline:none; }
@media(max-width:1000px) { .footer-top { grid-template-columns:1.4fr 1fr 1fr; gap:36px; } .footer-brand { grid-column:1/-1; } .footer-description br { display:none; } .footer-description { max-width:420px; } }
@media(max-width:600px) { .site-footer { border-radius:32px 32px 0 0; } .site-footer .container { width:calc(100% - 40px); } .footer-top { grid-template-columns:1fr 1fr; gap:28px 22px; padding:36px 0; } .footer-logo { width:185px; } .footer-col h2 { margin-top:0; } .footer-top > .footer-col:last-child { grid-column:1/-1; } .footer-bottom { flex-direction:column; align-items:flex-start; gap:12px; padding:22px 0 28px; } .footer-copyright { font-size:11px; line-height:1.7; } .footer-cnpj {display:block;} .footer-mobile-tagline {display:block;margin:7px 0 0;color:#7d877a;font-size:11px;line-height:1.7;max-width:290px;} .footer-bottom {gap:24px;padding-top:22px;padding-bottom:32px;} .footer-dev-wrap {font-size:11px;gap:7px;} }
@media(prefers-reduced-motion:reduce) { .site-footer a { transition:none; } }