:root{--footer-bg-start:#1e293b;--footer-bg-end:#0f172a;--footer-text:#e2e8f0;--footer-text-muted:#94a3b8;--footer-link:#818cf8;--footer-link-hover:#a5b4fc;--footer-border:#334155}footer{background:linear-gradient(135deg,var(--footer-bg-start) 0%,var(--footer-bg-end) 100%);color:var(--footer-text);padding:3rem 0 2rem;margin-top:auto;position:relative;box-shadow:0 -4px 20px rgba(0,0,0,0.1)}footer::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#4f46e5,#818cf8,#4f46e5);background-size:200% 100%;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}footer .container{max-width:1200px}footer .mb-2{display:flex;flex-wrap:wrap;justify-content:center;gap:0.5rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--footer-border)}footer a{color:var(--footer-text);text-decoration:none;font-size:0.95rem;font-weight:600;padding:0.5rem 1rem;border-radius:8px;transition:all 0.3s ease;display:inline-flex;align-items:center;gap:0.5rem;position:relative}footer a::before{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:0;height:2px;background:var(--footer-link);transition:width 0.3s ease}footer a:hover{color:var(--footer-link-hover);background:rgba(129,140,248,0.1);transform:translateY(-2px)}footer a:hover::before{width:80%}footer .mb-3{margin-bottom:2rem}footer .fw-bold.mb-2.h6{color:var(--footer-text);font-size:1.125rem;font-weight:700;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px}footer .d-flex.justify-content-center.gap-3 a{width:45px;height:45px;display:flex;align-items:center;justify-content:center;background:rgba(129,140,248,0.1);border:2px solid rgba(129,140,248,0.3);border-radius:50%;color:var(--footer-link);font-size:1.25rem;transition:all 0.3s ease;position:relative;overflow:hidden}footer .d-flex.justify-content-center.gap-3 a::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:0;height:0;background:var(--footer-link);border-radius:50%;transition:all 0.4s ease;z-index:0}footer .d-flex.justify-content-center.gap-3 a:hover{transform:translateY(-5px) scale(1.1);border-color:var(--footer-link);box-shadow:0 8px 20px rgba(129,140,248,0.3)}footer .d-flex.justify-content-center.gap-3 a:hover::before{width:100%;height:100%}footer .d-flex.justify-content-center.gap-3 a:hover i{color:white;z-index:1;position:relative}footer .d-flex.justify-content-center.gap-3 a i{transition:all 0.3s ease;z-index:1;position:relative}footer .d-flex.justify-content-center.gap-3 a:nth-child(1){border-color:rgba(66,103,178,0.5)}footer .d-flex.justify-content-center.gap-3 a:nth-child(1):hover{border-color:#4267B2}footer .d-flex.justify-content-center.gap-3 a:nth-child(1):hover::before{background:#4267B2}footer .d-flex.justify-content-center.gap-3 a:nth-child(2){border-color:rgba(255,0,0,0.5)}footer .d-flex.justify-content-center.gap-3 a:nth-child(2):hover{border-color:#FF0000}footer .d-flex.justify-content-center.gap-3 a:nth-child(2):hover::before{background:#FF0000}footer .d-flex.justify-content-center.gap-3 a:nth-child(3){border-color:rgba(0,0,0,0.5)}footer .d-flex.justify-content-center.gap-3 a:nth-child(3):hover{border-color:#010101}footer .d-flex.justify-content-center.gap-3 a:nth-child(3):hover::before{background:#010101}footer .small{font-size:0.875rem;color:var(--footer-text-muted);margin-top:1.5rem;font-weight:500;letter-spacing:0.5px}footer .small strong{color:var(--footer-link);font-weight:700}footer p.text-muted{font-size:0.875rem;color:var(--footer-text-muted);margin-top:1rem;line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto}@media (max-width:768px){footer{padding:2rem 0 1.5rem}footer .mb-2{flex-direction:column;align-items:center;gap:0.25rem}footer a{font-size:0.875rem;padding:0.375rem 0.75rem}footer .d-flex.justify-content-center.gap-3 a{width:40px;height:40px;font-size:1.125rem}footer .fw-bold.mb-2.h6{font-size:1rem}footer p.text-muted{font-size:0.8rem;padding:0 1rem}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}footer .container>*{animation:fadeInUp 0.6s ease-out;animation-fill-mode:both}footer .container>*:nth-child(1){animation-delay:0.1s}footer .container>*:nth-child(2){animation-delay:0.2s}footer .container>*:nth-child(3){animation-delay:0.3s}footer .container>*:nth-child(4){animation-delay:0.4s}