/* Shared footer: no placeholder destinations or signup form. */
.cb-site-footer { border-top: 1px solid var(--cb-border); background: var(--cb-bg-secondary); padding-block: 32px 20px; color: var(--cb-text); }
.cb-footer-columns { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px; }
.cb-footer-columns > * { min-width: 0; }
.cb-footer-brand > a { display: inline-flex; align-items: center; min-height: 44px; font-family: var(--cb-font-heading); font-size: 28px; color: var(--cb-text); text-decoration: none; }
.cb-footer-brand p { max-width: 360px; margin: 8px 0 0; font-size: 15px; line-height: 1.65; color: var(--cb-text-secondary); }
.cb-site-footer h2 { margin: 0 0 8px; font-family: var(--cb-font-body); font-size: 14px; font-weight: 600; line-height: 1.5; }
.cb-site-footer ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 20px; list-style: none; margin: 0; padding: 0; }
.cb-site-footer li { min-width: 0; }
.cb-site-footer nav a { display: inline-flex; align-items: center; min-height: 44px; color: var(--cb-text); font-size: 14px; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; }
.cb-site-footer a:hover { color: var(--cb-terracotta-ink); text-decoration: underline; text-underline-offset: 3px; }
.cb-footer-bottom { display: flex; flex-wrap: wrap; align-items: center; column-gap: 24px; row-gap: 4px; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--cb-border); }
.cb-footer-copyright { margin: 0; color: var(--cb-text-secondary); font-size: 12px; line-height: 1.6; }
.cb-site-footer .cb-footer-legal ul { display: flex; flex-wrap: wrap; column-gap: 16px; row-gap: 0; }
.cb-site-footer .cb-footer-legal a { color: var(--cb-text-secondary); font-family: var(--cb-font-body); font-size: 12px; min-height: 44px; }
.cb-site-footer .cb-footer-legal a:hover { color: var(--cb-terracotta-ink); }
@media (min-width: 768px) {
    .cb-site-footer { padding-top: 36px; }
    .cb-footer-columns { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 48px; }
}
@media (min-width: 1024px) {
    .cb-footer-columns--about { grid-template-columns: minmax(0,1.2fr) minmax(0,1fr) minmax(0,.6fr); }
}
