.footer{background:var(--color-primary);color:#fff;padding:4rem 0 2rem;margin-top:0}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr)) minmax(0,1.2fr);gap:2rem}
.footer a{color:#ffffffcc;text-decoration:none}.footer a:hover{color:var(--color-accent)}
.footer h4{font-family:var(--font-display);font-weight:400;margin-bottom:1rem}
.newsletter-form{display:flex;gap:.5rem;margin-top:1rem}
.newsletter-form input{flex:1;min-width:0;padding:.8rem 1rem;border-radius:var(--radius-pill);border:1px solid #ffffff33;background:#ffffff14;color:#fff;font-family:var(--font-body)}
.footer-bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid #ffffff22;font-size:var(--fs-caption);color:#ffffff99}
.footer-bottom a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.footer-bottom a:hover{color:var(--color-accent)}
@media(max-width:1100px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}}
@media(max-width:768px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:auto}}