/* Site footer rules for the one page that does not load style.css (the
   home page). Copied from style.css and scoped under .footer so they
   cannot touch the rest of that page. If you change the footer in
   style.css, change it here too. */

.footer {
    --accent: #f59a1a;
    --accent-dark: #d97706;
    --accent-light: #fbbf24;
    --bg-dark: #071224;
    --radius-sm: 8px;
    --text-heading: #f1f5f9;
    --text-light: #64748b;
    --text-on-dark-muted: #94a3b8;
    --transition: 0.2s ease;
}
.footer ul { list-style: none; margin: 0; padding: 0; }
/* Base rules the footer gets from style.css everywhere else. Without them the
   home page footer showed underlined links and an italic address. */
.footer a { color: var(--accent); text-decoration: none; transition: color var(--transition); }
.footer a:hover { color: var(--accent-dark); }
.footer address { font-style: normal; }
.footer svg { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

.footer .container { max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px; }
.footer .logo { display: flex; align-items: center; }
.footer .logo-svg { display: block; }
.footer .logo-svg-text { fill: var(--text-heading);
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    font-size: 28px; }
.footer .pulse-line { stroke: var(--accent) !important;
    stroke-width: 3.5; }
.footer { background: var(--bg-dark);
    color: var(--text-on-dark-muted);
    padding: 64px 0 32px;
    border-top: 1px solid rgba(255,255,255,0.06); }
.footer-grid { display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 48px;
    margin-bottom: 40px; }
.footer-brand p { color: var(--text-on-dark-muted);
    font-size: 0.88rem;
    margin: 12px 0; }
.footer-address { font-size: 0.85rem;
    color: var(--text-on-dark-muted); }
.footer-address a { color: var(--accent-light); }
.footer-social { display: flex;
    gap: 8px;
    margin-top: 16px; }
.footer-social a { width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-sm);
    background: rgba(255,255,255,0.06);
    color: var(--text-on-dark-muted);
    font-weight: 700;
    font-size: 0.85rem;
    transition: all var(--transition); }
.footer-social a:hover { background: var(--accent); color: #fff; }
.footer-links h4 { font-size: 0.85rem;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 16px; }
.footer-links li { margin-bottom: 8px; }
.footer-links a { color: var(--text-on-dark-muted);
    font-size: 0.88rem;
    transition: color var(--transition); }
.footer-links a:hover { color: #fff; }
.footer-trust { display: flex;
    justify-content: center;
    gap: 24px;
    padding: 24px 0;
    border-top: 1px solid rgba(255,255,255,0.06);
    border-bottom: 1px solid rgba(255,255,255,0.06);
    margin-bottom: 24px;
    flex-wrap: wrap; }
.footer-bottom { text-align: center;
    font-size: 0.82rem;
    color: var(--text-light); }
.footer { background: #07101e; border-top: 1px solid rgba(255,255,255,0.08); }

@media (max-width: 1024px) {
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}

@media (max-width: 768px) {
    .footer-grid { grid-template-columns: 1fr; gap: 24px; }
    .footer-trust { flex-direction: column; align-items: center; gap: 8px; }
}

@media (max-width: 480px) {
    .footer .container { padding: 0 16px; }
}
