.newsletter { color: var(--color-white); background: var(--color-navy-mid); }
.newsletter__inner { min-height: 210px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.newsletter h2 { margin-bottom: 8px; font-size: 1.8rem; }
.newsletter p { margin: 0; color: rgba(255,255,255,.7); }
.newsletter form { width: min(440px, 100%); display: flex; padding: 5px; border-radius: 10px; background: var(--color-white); }
.newsletter input { border: 0; }
.newsletter button { padding: 10px 20px; border: 0; border-radius: 7px; color: var(--color-white); background: var(--color-primary); font-weight: 700; }
.site-footer { position: relative; color: rgba(255,255,255,.72); background: var(--color-navy-deep); }
.footer-grid { display: grid; grid-template-columns: 1.35fr .8fr .9fr 1.05fr; gap: 54px; padding-block: 72px; }
.brand--footer { color: var(--color-white); margin-bottom: 20px; }
.brand--footer .brand__mark { color: var(--color-primary); background: var(--color-white); }
.brand--footer .brand__text small { color: rgba(255,255,255,.55); }
.footer-grid h2 { color: var(--color-white); font-size: 1rem; }
.footer-grid ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.footer-grid a:hover { color: var(--color-white); }
.footer-brand p { max-width: 330px; }
.social-links { display: flex; gap: 8px; }
.social-links a { width: 35px; height: 35px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; }
.footer-bottom { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(255,255,255,.1); font-size: .78rem; }
.footer-bottom p { margin: 0; }
