.site-footer {
    background: var(--text-0);
    color: var(--bg-2);
    margin-top: var(--space-10);
    padding: var(--space-8) 0 var(--space-5);
}
.site-footer__inner {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: var(--space-6);
    align-items: start;
}
.site-footer__logo {
    height: 44px;
    width: auto;
    display: block;
    margin-bottom: var(--space-3);
}
.site-footer__brand p {
    color: var(--text-3);
    font-size: 0.9rem;
    max-width: 360px;
}
.site-footer__links h4 {
    font-family: var(--font-sans);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 0.78rem;
    color: var(--bg-3);
    margin-bottom: var(--space-3);
}
.site-footer__links a {
    display: block;
    color: var(--bg-2);
    font-size: 0.95rem;
    padding: var(--space-1) 0;
}
.site-footer__links a:hover { color: var(--accent); }

.site-footer__bottom {
    margin-top: var(--space-6);
    border-top: 1px solid rgba(255,255,255,0.08);
    padding: var(--space-4) 0;
}
.site-footer__bottom-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-3);
    color: var(--text-3);
    font-size: 0.82rem;
    flex-wrap: wrap;
}
.site-footer__signature {
    color: var(--text-3);
    transition: color 0.18s var(--ease);
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
}
.site-footer__signature:hover { color: #fff; }
.signature-name {
    color: #fff;
    font-family: var(--font-display);
    font-style: italic;
    font-weight: 700;
}
.signature-caret {
    color: var(--accent);
    font-style: normal;
    animation: blink 1.1s steps(2, end) infinite;
}
@keyframes blink {
    50% { opacity: 0; }
}

@media (max-width: 720px) {
    .site-footer__inner { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
    .site-footer__bottom-inner { justify-content: center; text-align: center; }
}
