﻿.site-footer { background: var(--chalkboard-deep); color: var(--chalk-white); padding: 64px 0 0; position: relative; margin-top: 100px; }
.site-footer::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: repeating-linear-gradient(90deg, var(--marigold) 0 14px, transparent 14px 22px); }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1.2fr 1fr; gap: 36px; padding-bottom: 48px; }
.footer-col h4 { font-family: var(--font-mono); font-size: 0.78rem; letter-spacing: 1px; text-transform: uppercase; color: var(--marigold-light); margin-bottom: 14px; }
.footer-brand { display: flex; gap: 16px; }
.footer-seal { border-color: var(--marigold); color: var(--marigold-light); flex-shrink: 0; }
.footer-brand strong { display: block; font-family: var(--font-display); font-size: 1.1rem; margin-bottom: 8px; }
.footer-brand p { font-size: 0.85rem; color: rgba(244,241,232,0.7); line-height: 1.5; }
.footer-links { display: flex; flex-direction: column; }
.footer-links a { font-size: 0.88rem; color: rgba(244,241,232,0.8); padding: 5px 0; transition: color 0.2s; }
.footer-links a:hover { color: var(--marigold); }
.footer-contact p { font-size: 0.85rem; color: rgba(244,241,232,0.8); margin-bottom: 9px; line-height: 1.5; }
.footer-fb { display: inline-block; margin-top: 4px; font-family: var(--font-mono); font-size: 0.8rem; color: var(--marigold-light); border-bottom: 1px solid var(--marigold-light); }
.dev-card { display: block; background: rgba(244,241,232,0.06); border: 1px solid rgba(244,241,232,0.15); border-radius: var(--radius-md); padding: 14px 16px; transition: transform 0.25s var(--ease-chalk), border-color 0.25s; }
.dev-card:hover { transform: translateY(-3px); border-color: var(--marigold); }
.dev-card strong { display: block; font-size: 0.95rem; margin-bottom: 4px; }
.dev-card span { font-size: 0.76rem; color: var(--marigold-light); font-family: var(--font-mono); }
.dev-card-footer { display: flex; align-items: center; gap: 12px; background: rgba(244,241,232,0.06); border: 1px solid rgba(244,241,232,0.15); border-radius: var(--radius-md); padding: 12px 14px; transition: transform 0.25s var(--ease-chalk), border-color 0.25s; }
.dev-card-footer:hover { transform: translateY(-3px); border-color: var(--marigold); }
.dev-footer-photo { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; border: 2px solid var(--marigold); flex-shrink: 0; }
.dev-card-footer strong { display: block; font-size: 0.92rem; }
.dev-card-footer small { display: block; font-size: 0.72rem; color: var(--marigold-light); font-family: var(--font-mono); margin-top: 2px; }
.dev-footer-contact { display: flex; gap: 14px; margin-top: 10px; }
.dev-footer-contact a { font-size: 0.8rem; color: rgba(244,241,232,0.75); border-bottom: 1px solid rgba(244,241,232,0.3); }
.dev-footer-contact a:hover { color: var(--marigold); border-color: var(--marigold); }
.footer-bottom { border-top: 1px solid rgba(244,241,232,0.1); padding: 20px 0; text-align: center; }
.footer-bottom p { font-size: 0.8rem; color: rgba(244,241,232,0.55); font-family: var(--font-mono); }
@media (max-width: 900px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px 24px; } .footer-brand { grid-column: 1 / -1; } }
@media (max-width: 560px) { .footer-grid { grid-template-columns: 1fr; } }
