/* Standard Rewiring footer, sliced from style.css for standalone page templates
   (EV Leaderboard, etc.) that include Footer.ss but deliberately skip style.css
   so its global element rules (body, h1, .btn, section…) don't clobber the
   bespoke page theme. Companion slice to electric-homes-nav.css. */

:root {
    --rwnm-accent: #234e4c;
    --rwnm-gold: #f5b731;
}

.rw-footer, .rw-footer * { box-sizing: border-box; }

.rw-footer {
    background: var(--rwnm-accent);
    color: #d6e4e3;
    padding: 64px 0 24px;
    margin-top: 80px;
    font-family: 'Rubik', sans-serif;
    line-height: 1.55;
}
.rw-footer-inner { max-width: 1320px; margin: 0 auto; padding: 0 24px; }
.rw-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 48px;
    margin-bottom: 48px;
}
.rw-footer-brand { max-width: 360px; }
.rw-footer-logo img {
    height: 48px; width: auto; max-width: 100%; display: block;
    margin-bottom: 16px; filter: brightness(0) invert(1);
}
.rw-footer-tagline {
    font-size: 0.95rem; line-height: 1.55;
    margin: 0 0 20px; color: #b3c8c6;
}
.rw-footer-social {
    display: flex; gap: 12px;
}
.rw-footer-social a {
    width: 38px; height: 38px;
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 50%;
    background: rgba(255,255,255,0.08);
    color: var(--rwnm-gold);
    transition: background 0.2s ease, transform 0.2s ease;
}
.rw-footer-social a:hover {
    background: var(--rwnm-gold);
    color: var(--rwnm-accent);
    transform: translateY(-2px);
}
.rw-footer-col h4 {
    color: var(--rwnm-gold);
    font-size: 0.78rem; font-weight: 700;
    letter-spacing: 0.14em; text-transform: uppercase;
    line-height: 1.2;
    margin: 0 0 16px;
}
.rw-footer-link, .rw-footer-donate {
    display: block; margin-bottom: 10px;
    color: #d6e4e3; text-decoration: none;
    font-size: 0.95rem;
    transition: color 0.15s ease;
}
.rw-footer-link:hover { color: var(--rwnm-gold); }
.rw-footer-donate {
    display: inline-block;
    padding: 11px 20px; margin-bottom: 12px;
    background: var(--rwnm-gold); color: var(--rwnm-accent);
    font-weight: 600; border-radius: 999px;
}
.rw-footer-donate:hover { background: #ffc94d; color: var(--rwnm-accent); }
.rw-footer-newsletter {
    display: flex; gap: 8px; margin-bottom: 12px;
}
.rw-footer-newsletter input {
    flex: 1; padding: 10px 14px; min-width: 0;
    border: 1px solid rgba(255,255,255,0.15);
    background: rgba(255,255,255,0.06);
    border-radius: 999px;
    color: #fff; font-family: inherit; font-size: 0.92rem;
    outline: none;
}
.rw-footer-newsletter input::placeholder { color: rgba(255,255,255,0.45); }
.rw-footer-newsletter input:focus { border-color: var(--rwnm-gold); }
.rw-footer-newsletter button {
    padding: 10px 18px;
    background: var(--rwnm-gold); color: var(--rwnm-accent);
    border: none; border-radius: 999px;
    font-family: inherit; font-weight: 600; cursor: pointer;
}
.rw-footer-newsletter-tag, .rw-footer-fineprint {
    font-size: 0.85rem; color: #b3c8c6;
    line-height: 1.5; margin: 0 0 12px;
}
.rw-footer-fineprint a { color: var(--rwnm-gold); }
.rw-footer-bottom {
    display: flex; justify-content: space-between; align-items: center;
    gap: 12px;
    padding-top: 24px;
    border-top: 1px solid rgba(255,255,255,0.08);
    font-size: 0.82rem; color: #8da6a3;
}
.rw-footer-bottom p { margin: 0; }
.rw-footer-bottom a { color: #8da6a3; text-decoration: none; }
.rw-footer-bottom a:hover { color: var(--rwnm-gold); }

@media (max-width: 900px) {
    .rw-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
    .rw-footer-brand { grid-column: 1 / -1; max-width: 100%; }
}
@media (max-width: 540px) {
    .rw-footer-grid { grid-template-columns: 1fr; }
    .rw-footer-bottom { flex-direction: column; gap: 8px; text-align: center; }
}
