/* Shared site footer — full footer for public/marketing pages, mini strip for app pages.
   Uses var() fallbacks so it renders correctly on any page regardless of its :root. */

.footer { background: var(--ink, #1a1612); color: rgba(255,255,255,0.6); border-top: 1px solid rgba(255,255,255,0.08); }
.footer-partner { max-width: 1200px; margin: 0 auto; padding: 30px 40px; display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,0.08); }
.footer-partner span { font-size: 15px; color: rgba(255,255,255,0.85); font-weight: 500; }
.footer-partner-btn { background: var(--saffron, #d97706); color: #fff; padding: 12px 24px; border-radius: 999px; text-decoration: none; font-size: 14px; font-weight: 600; white-space: nowrap; transition: background 0.2s, transform 0.2s; }
.footer-partner-btn:hover { background: #ea8810; transform: translateY(-1px); }
.footer-inner { max-width: 1200px; margin: 0 auto; padding: 50px 40px 30px; display: flex; flex-wrap: wrap; gap: 48px; justify-content: space-between; }
.footer-brand-col { max-width: 340px; }
.footer-brand { font-family: 'Archivo', sans-serif; font-weight: 900; font-size: 24px; letter-spacing: 2px; color: #fff; }
.footer-tagline { font-size: 14px; color: rgba(255,255,255,0.55); margin-top: 12px; line-height: 1.6; }
.footer-cols { display: flex; gap: 56px; flex-wrap: wrap; }
.footer-col { display: flex; flex-direction: column; gap: 11px; }
.footer-col h4 { font-family: 'Archivo', sans-serif; font-size: 12px; letter-spacing: 2px; text-transform: uppercase; color: #ffd9a8; font-weight: 700; margin-bottom: 4px; }
.footer-col a { font-size: 14px; color: rgba(255,255,255,0.65); text-decoration: none; transition: color 0.2s; cursor: pointer; }
.footer-col a:hover { color: #fff; }
.footer-bottom { max-width: 1200px; margin: 0 auto; padding: 22px 40px 40px; border-top: 1px solid rgba(255,255,255,0.08); font-size: 12px; color: rgba(255,255,255,0.4); }
.footer-fine { margin-top: 8px; font-size: 11px; line-height: 1.6; max-width: 700px; }
@media (max-width: 768px) { .footer-inner { flex-direction: column; gap: 32px; } .footer-cols { gap: 36px; } .footer-partner { flex-direction: column; align-items: flex-start; } }

/* Mini strip — app/tool pages: just copyright + legal links */
.mini-foot { background: var(--ink, #1a1612); color: rgba(255,255,255,0.5); text-align: center; padding: 22px 24px; font-size: 12.5px; line-height: 1.7; }
.mini-foot a { color: rgba(255,255,255,0.72); text-decoration: none; }
.mini-foot a:hover { color: #fff; }
