.footer{background:var(--dark);position:relative;overflow:hidden}
.footer::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,102,255,.3),transparent)}
.footer__inner{max-width:var(--content-max);margin:0 auto;padding:0 var(--content-pad)}
.footer__top{display:grid;grid-template-columns:2.2fr 1fr 1fr 1.5fr;gap:48px;padding:80px 0 60px}
.footer__brand{display:flex;flex-direction:column}
.footer__logo{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.footer__logo img{height:36px;width:auto;opacity:.9}
.footer__brand-desc{font-size:14px;font-weight:300;line-height:1.8;color:rgba(255,255,255,.45);margin-bottom:28px}
.footer__social{display:flex;gap:8px}
.footer__social-btn{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;color:rgba(255,255,255,.4);transition:all .35s var(--ease);cursor:pointer}
.footer__social-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,102,255,.25)}
.footer__social-btn svg{width:16px;height:16px;fill:currentColor}
.footer__nav-title{font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:24px;position:relative;padding-bottom:12px}
.footer__nav-title::after{content:'';position:absolute;bottom:0;left:0;width:20px;height:2px;background:var(--accent);border-radius:1px}
.footer__nav-list{list-style:none;display:flex;flex-direction:column;gap:12px}
.footer__nav-list li a{font-size:14px;font-weight:300;color:rgba(255,255,255,.45);transition:all .3s;display:inline-flex;align-items:center;gap:0}
.footer__nav-list li a::before{content:'';width:0;height:1px;background:var(--accent);transition:width .3s var(--ease);margin-right:0}
.footer__nav-list li a:hover{color:rgba(255,255,255,.9)}
.footer__nav-list li a:hover::before{width:12px;margin-right:8px}
.footer__contact-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.footer__contact-icon{width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,.05);display:grid;place-items:center;flex-shrink:0;margin-top:2px}
.footer__contact-icon svg{width:14px;height:14px;stroke:var(--accent);fill:none;stroke-width:2}
.footer__contact-text{font-size:13px;font-weight:300;color:rgba(255,255,255,.5);line-height:1.7}
.footer__contact-text a{color:inherit;text-decoration:none;transition:color .3s}.footer__contact-text a:hover{color:rgba(255,255,255,.8)}
.footer__divider{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent)}
.footer__bottom{padding:24px 0 28px;display:flex;justify-content:space-between;align-items:center}
.footer__copy{font-size:12px;color:rgba(255,255,255,.3);font-weight:300}
.footer__bottom-links{display:flex;gap:24px}
.footer__bottom-links a{font-size:12px;color:rgba(255,255,255,.35);transition:color .3s;font-weight:300}
.footer__bottom-links a:hover{color:rgba(255,255,255,.8)}
@media(max-width:1024px){.footer__top{grid-template-columns:1fr 1fr;gap:40px}}
@media(max-width:640px){.footer__inner{padding:0 var(--content-pad)}.footer__top{grid-template-columns:1fr;gap:36px;padding:48px 0 40px}.footer__brand-desc{max-width:100%}.footer__bottom{flex-direction:column;gap:16px;text-align:center;padding:20px 0 24px}}