/* ==========================================================================
   Undersign — footer
   ========================================================================== */

footer{padding:64px 0 40px;background:var(--seafoam-100);}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;}
.footer-col h3{font-size:0.8rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-soft);margin-bottom:16px;font-weight:500;}
.footer-col a{display:block;text-decoration:none;color:var(--ink-soft);font-size:0.92rem;padding:5px 0;}
.footer-col a:hover{color:var(--teal-700);}
.footer-col a.enterprise{color:var(--teal-700);font-weight:600;}
.footer-brand{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-weight:600;font-size:1.2rem;margin-bottom:12px;}
.footer-brand img{width:250px;height:auto;max-width:100%;display:block;}
body.dev-shell .footer-brand img{width:150px;}
.footer-desc{color:var(--ink-soft);font-size:0.9rem;max-width:32ch;}
.footer-social{display:flex;gap:12px;margin-top:20px;}
.footer-social a{width:34px;height:34px;border-radius:50%;background:var(--white);display:flex;align-items:center;justify-content:center;padding:0;}
.footer-social svg{width:15px;height:15px;fill:var(--teal-700);}
.footer-bottom{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:0.82rem;color:var(--ink-soft);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.footer-legal{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.footer-legal a{font-size:0.82rem;color:var(--ink-soft);text-decoration:none;}
.footer-legal a:hover{color:var(--teal-800);}
@media(max-width:820px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr;}}