/* Footer Manager - theme tokens only; base footer styles come from the theme */
.ft-contact ul, .ft-social, .ft-bottom-links { list-style: none; margin: 0; padding: 0; }
.ft-contact ul { display: grid; gap: .55rem; }
.ft-contact li { display: flex; align-items: flex-start; gap: .55rem; }
.ft-contact li .icon { flex: none; margin-top: .2rem; }
.ft-social { display: flex; flex-wrap: wrap; gap: .5rem; }
.ft-pill { display: inline-flex; align-items: center; gap: .4rem; padding: .3rem .8rem; border: 1px solid color-mix(in srgb, var(--c-footer-text) 40%, transparent); border-radius: 999px; text-decoration: none; font-size: .92rem; }
.ft-pill:hover { background: color-mix(in srgb, var(--c-footer-text) 12%, transparent); }
.ft-pill .icon { width: .95em; height: .95em; }
.ft-text .prose { line-height: 1.8; }
.ft-text .prose a { color: inherit; }
.ft-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem 1.5rem; }
.ft-bottom.is-center { justify-content: center; text-align: center; }
.ft-bottom-links { display: flex; flex-wrap: wrap; gap: .3rem 1.2rem; }
.ft-bottom a { text-decoration: none; }
.ft-bottom a:hover { text-decoration: underline; }
.ft-top { display: inline-flex; align-items: center; gap: .3rem; }
.ft-top .icon { width: 1em; height: 1em; }
@media (max-width: 560px) { .ft-bottom { justify-content: center; text-align: center; } }
