.foot{background:var(--navy);color:var(--on-navy,#f2f5f9)}
.foot .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.foot .wrap{padding-top:clamp(64px,8vw,104px);padding-bottom:44px}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:clamp(32px,5vw,60px)}
.foot h3{color:var(--on-navy,#f2f5f9);font-family:var(--serif);font-weight:300;font-size:1.5rem}
.foot .ttl{font-size:.75rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(242,245,249,.7);margin:0 0 22px}
.foot a{color:var(--on-navy,#f2f5f9);text-decoration:none}
.foot a:hover{color:#d7aeb5}
.foot-list{display:grid;gap:14px;font-size:1.0625rem}
.foot-list span{color:rgba(242,245,249,.7)}
.socials{display:flex;gap:14px}
.socials a{width:46px;height:46px;border:1px solid rgba(242,245,249,.16);border-radius:50%;display:flex;align-items:center;justify-content:center}
.socials a:hover{border-color:#d7aeb5}
.socials svg{width:19px;height:19px}
.office-locations{margin-top:56px;padding-top:38px;border-top:1px solid rgba(242,245,249,.16)}
.office-groups{display:grid;grid-template-columns:2fr 1fr;gap:20px}
.office-group{border:1px solid rgba(242,245,249,.16);padding:28px;background:rgba(255,255,255,.025)}
.office-name{font-family:var(--serif);font-size:1.5rem;margin:0 0 20px}
.edge-locations{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.office-address{color:rgba(242,245,249,.7);font-size:.9375rem;line-height:1.55;font-style:normal}
.office-address strong{display:block;color:var(--on-navy,#f2f5f9);font-weight:500;margin-bottom:3px}
.footer-news{margin-top:44px;padding:36px 0 4px;border-top:1px solid rgba(242,245,249,.16)}
.footer-news.news{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.footer-news h3{margin:0}
.footer-news p{color:rgba(242,245,249,.7)!important}
.news-form{display:flex;gap:14px}
.news-form input{padding:16px 18px;font-size:1.0625rem;min-width:300px;border:1px solid rgba(242,245,249,.16);border-radius:2px;background:rgba(255,255,255,.06);color:var(--on-navy,#f2f5f9)}
.news-form input::placeholder{color:rgba(242,245,249,.48)}
.news-form .btn{border:0;background:var(--wine);color:#fff;padding:14px 22px;font:600 16px var(--sans);cursor:pointer}
.news-form .btn:hover{background:var(--wine-hover)}
.eho{display:flex;gap:14px;align-items:flex-start;margin-top:52px;padding-top:32px;border-top:1px solid rgba(242,245,249,.16);font-size:.875rem;color:rgba(242,245,249,.7);line-height:1.6}
.eho svg{width:22px;height:22px;flex:none;margin-top:2px}
.legal{margin-top:32px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:.875rem;color:rgba(242,245,249,.7)}
.legal a{text-decoration:underline;text-underline-offset:4px}
.legal .links{display:flex;gap:28px;flex-wrap:wrap}
@media(max-width:900px){.office-groups{grid-template-columns:1fr}.edge-locations{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr}.footer-news.news{grid-template-columns:1fr}}
@media(max-width:560px){.foot-grid,.edge-locations{grid-template-columns:1fr}.news-form{flex-direction:column}.news-form input{min-width:0;width:100%}}
