:root{--bg:#faf7f2;--bg-card:#fff;--bg-soft:#f2eee6;--bg-deep:#0e1f1e;--ink:#15201f;--ink-2:#3b4948;--ink-3:#6b7878;--ink-4:#9aa5a4;--line:#e8e2d6;--accent:#2bb3a3;--accent-strong:#1f9c8e;--accent-soft:#e6f6f4;--accent-ink:#0e3f3a;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:22px;--r-xl:28px;--r-pill:999px;--shadow-xs:0 1px 2px rgba(20,30,30,.04);--shadow-sm:0 2px 8px rgba(20,30,30,.05),0 1px 2px rgba(20,30,30,.04);--shadow-md:0 8px 24px rgba(20,30,30,.06),0 2px 6px rgba(20,30,30,.04);--shadow-lg:0 24px 48px rgba(20,30,30,.08),0 4px 12px rgba(20,30,30,.05);--pad-x:clamp(20px,4vw,56px);--pad-y:clamp(40px,7vw,76px);--font:"Noir Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",monospace}.app-footer{border-top:1px solid var(--line);padding-bottom:32px;padding-top:64px}.app-footer__grid{display:grid;gap:clamp(24px,4vw,48px);grid-template-columns:minmax(200px,1.2fr) repeat(3,minmax(0,1fr))}@media (max-width:991px){.app-footer__grid{gap:32px;grid-template-columns:1fr 1fr}}@media (max-width:480px){.app-footer__grid{grid-template-columns:1fr}}.app-footer__brand{display:flex;flex-direction:column;gap:16px}@media (max-width:991px){.app-footer__brand{grid-column:1/-1}}.app-footer__logo{display:block;width:120px}.app-footer__desc{color:var(--ink-3);font-size:13px;line-height:1.6;margin:0;max-width:26ch}.app-footer__socials{display:flex;gap:8px;margin-top:4px}.app-footer__social{border:1px solid var(--line);border-radius:50%;color:var(--ink-2);display:grid;flex-shrink:0;height:36px;place-items:center;transition:background .15s,color .15s,border-color .15s;width:36px}.app-footer__social svg{height:16px;width:16px}.app-footer__social:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}.app-footer__col{display:flex;flex-direction:column}.app-footer__col__head{margin-bottom:16px}.app-footer__links{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.app-footer__link{color:var(--ink-2);font-size:14px;text-decoration:none;transition:color .15s}.app-footer__link:hover{color:var(--accent)}.app-footer__bottom{border-top:1px solid var(--line);color:var(--ink-3);display:flex;flex-wrap:wrap;font-size:12px;gap:12px;justify-content:space-between;margin-top:56px;padding-top:24px}.app-footer__bottom__contacts{align-items:center;display:flex;gap:4px}.app-footer__bottom__link{color:var(--ink-3);text-decoration:none;transition:color .15s}.app-footer__bottom__link:hover{color:var(--ink)}
