/* The site footer, the same on every page: written into each page by scripts/build-footer.py. */
.sf { background: #1A1A2E; color: #b8b8c8; font-family: 'DM Sans', system-ui, sans-serif; }
.sf-in { max-width: 80rem; margin: 0 auto; padding: 3.5rem 1.5rem 1.75rem; }
.sf-top { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.5rem 2rem; padding-bottom: 2.25rem; border-bottom: 1px solid rgba(255,255,255,.1); }
.sf-top img { height: 26px; width: auto; display: block; }
.sf-belief { font-family: 'Belleza', sans-serif; color: #ffffff; font-size: clamp(1.35rem, 2.4vw, 1.75rem); line-height: 1.25; max-width: 34rem; margin: 1rem 0 .35rem; }
.sf-tag { font-family: 'Belleza', sans-serif; color: #F37021; font-size: 1.05rem; margin: 0; }
.sf-cta { display: inline-flex; align-items: center; gap: .5rem; background: #F37021; color: #1A1A2E; font-weight: 700; padding: .9rem 1.5rem; border-radius: .55rem; text-decoration: none; white-space: nowrap; transition: transform .15s ease; }
.sf-cta:hover { transform: translateY(-2px); }
.sf-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.25rem 1.5rem; padding: 2.25rem 0; }
@media (min-width: 900px) { .sf-cols { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.sf-cols h4 { color: #ffffff; font-size: .72rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 1rem; }
.sf-cols h4 span { color: #F37021; }
.sf-cols ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
.sf-cols a { color: #b8b8c8; text-decoration: none; font-size: .95rem; }
.sf-cols a:hover { color: #ffffff; }
.sf-cols small { color: #737373; font-size: .78rem; margin-left: .3rem; }
.sf-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem 1.5rem; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.1); font-size: .78rem; color: #8a8aa0; }
.sf-bottom a { color: inherit; text-decoration: none; }
.sf-flag { display: inline-flex; align-items: center; gap: .5rem; }
.sf-flag img { display: block; width: 19px; height: 10px; border-radius: 1px; }
@media (max-width: 640px) { .sf-cta { width: 100%; justify-content: center; } }
