:root {
    --footer-bg: #000;
    --footer-border: var(--border, rgba(203, 108, 230, 0.15));
    --footer-accent: var(--accent, #cb6ce6);
}

footer {
    padding: 100px 10% 40px;
    border-top: 1px solid var(--footer-border);
    background: var(--footer-bg);
    color: #fff;
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 60px;
}

.footer-col h4 {
    font-family: var(--font-mono, 'JetBrains Mono', monospace);
    color: var(--footer-accent);
    margin-bottom: 25px;
    font-size: 0.8rem;
    letter-spacing: 2px;
}

.footer-col ul { list-style: none; padding: 0; margin: 0; }
.footer-col ul li { margin-bottom: 15px; opacity: 0.6; transition: 0.3s; font-size: 0.9rem; }
.footer-col ul li a { color: inherit; text-decoration: none; display: inline-block; }
.footer-col ul li:hover { opacity: 1; color: var(--footer-accent); padding-left: 5px; }

.footer-bottom {
    margin-top: 60px;
    padding-top: 30px;
    border-top: 1px solid rgba(255,255,255,0.05);
    display: flex;
    justify-content: space-between;
    font-size: 0.7rem;
    opacity: 0.4;
    font-family: var(--font-mono, 'JetBrains Mono', monospace);
}

.footer-col .logo { font-weight: 900; letter-spacing: -1px; text-decoration: none; color: #fff; display: inline-block; }
.footer-col .logo span { color: var(--footer-accent); }

@media (max-width: 1024px) {
    footer { padding: 80px 20px 40px 20px; text-align: center; }
    .footer-grid { grid-template-columns: 1fr; gap: 40px; }
    .footer-bottom { flex-direction: column; gap: 12px; align-items: center; }
    .footer-col ul li:hover { padding-left: 0; }
}
