:root{--near-black:#0A0D11;--foot-text:#9aa1a9;--foot-rule:#1c2127;--foot-dim:#868D94}
.footer{background:var(--near-black);color:var(--foot-text);
  padding-block:clamp(3.5rem,6vw,5rem) 1.5rem;font-size:var(--t-small)}
.footer a{color:var(--foot-text);text-decoration:none;transition:color .22s}
.footer a:hover{color:#fff}
.footer a:focus-visible{outline:2px solid #fff;outline-offset:3px}
.footer__top{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;
  gap:clamp(1.75rem,3.5vw,3.5rem)}
.footer__brand img{height:60px;width:auto;filter:brightness(0) invert(1);margin-bottom:1.4rem}
.footer__tag{max-width:22rem;line-height:1.6}
.footer .fcta{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.6rem;
  color:#fff;font-weight:600}
.footer .fcta .ln{display:block;width:28px;height:1px;background:#fff;
  transition:width var(--dur) var(--ease),background var(--dur)}
.footer .fcta:hover .ln{width:46px;background:var(--red)}
.fhead{font-size:.68rem;letter-spacing:.11em;color:#fff;font-weight:700;
  margin:0 0 1rem;text-transform:uppercase}
.footer__col a{display:block;padding:.34rem 0;line-height:1.45}
.fgroup{border:0}
.fgroup > summary{list-style:none;display:block;cursor:default;pointer-events:none}
.fgroup > summary::-webkit-details-marker{display:none}
.fgroup__ico{display:none}
.fgroup:not([open]) .fgroup__body{display:block}
.footer__locations{margin-top:clamp(2.5rem,4.5vw,3.5rem);padding-top:clamp(1.75rem,3.5vw,2.5rem);
  border-top:1px solid var(--foot-rule);display:grid;grid-template-columns:repeat(5,1fr);gap:2rem}
.footer__loc .fhead{margin-bottom:.8rem}
.footer__loc p{line-height:1.55}
.footer__loc .tel{display:inline-block;margin-top:.5rem}
.footer__bottom{margin-top:clamp(2.5rem,4.5vw,3rem);padding-block:1.5rem 0;
  border-top:1px solid var(--foot-rule);
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;
  font-size:.8rem;color:var(--foot-dim)}
.footer__copy{grid-column:2;text-align:center;margin:0}
.footer__legal{grid-column:3;justify-self:end;margin:0}
@media (max-width:1040px){.footer__top{grid-template-columns:1fr 1fr 1fr}.footer__locations{grid-template-columns:repeat(3,1fr);gap:1.75rem}}
@media (max-width:640px){.footer__top{grid-template-columns:1fr;gap:0}.footer__brand{margin-bottom:2rem}.footer__brand img{height:52px}.fgroup{border-bottom:1px solid var(--foot-rule)}.fgroup > summary{display:flex;align-items:center;justify-content:space-between;
    cursor:pointer;padding:1.05rem 0;list-style:none;pointer-events:auto}.fgroup:not([open]) .fgroup__body{display:none}.fgroup > summary:focus-visible{outline:2px solid #fff;outline-offset:2px}.fgroup > summary .fhead{margin:0}.fgroup__ico{display:block;width:11px;height:11px;border-right:1.5px solid var(--foot-text);
    border-bottom:1.5px solid var(--foot-text);transform:rotate(45deg) translate(-2px,-2px);
    transition:transform var(--dur) var(--ease);flex:none}.fgroup[open] .fgroup__ico{transform:rotate(-135deg) translate(-3px,-3px)}.fgroup__body{padding-bottom:1.1rem}.footer__col a{padding:.42rem 0}.footer__locations{grid-template-columns:1fr;gap:1.5rem;margin-top:2rem;padding-top:1.75rem}.footer__bottom{grid-template-columns:1fr;gap:.6rem;text-align:left;
    justify-items:start;padding-block:1.35rem 0}.footer__copy{grid-column:1;text-align:left;justify-self:start;order:1;line-height:1.5}.footer__legal{grid-column:1;justify-self:start;order:2;line-height:1.5}}
.footer__top--v2{grid-template-columns:1.6fr .95fr .8fr .62fr .5fr}
.footer__bottom--v2{grid-template-columns:1fr}
.footer__bottom--v2 .footer__copy{grid-column:1;text-align:left}
@media (max-width:1040px){.footer__top--v2{grid-template-columns:1fr 1fr 1fr;gap:2rem}.footer__top--v2 .footer__brand{grid-column:1 / -1}}
@media (max-width:640px){.footer__top--v2{grid-template-columns:1fr;gap:0}.footer__top--v2 .footer__brand{grid-column:1}}
.footer--compact{padding-block:clamp(2.25rem,4vw,3rem) clamp(.9rem,1.5vw,1.25rem)}
.footer--compact .fhead{font-size:.6875rem;letter-spacing:.12em;color:rgba(255,255,255,.62);
  font-weight:600;margin:0 0 .85rem}
.footer--compact .footer__col a{padding:.26rem 0;font-size:.875rem;line-height:1.4;
  color:var(--foot-text)}
.footer--compact .footer__col a:hover{color:#fff}
.footer--compact .footer__brand img{height:46px;margin-bottom:1.1rem}
.footer--compact .footer__tag{max-width:19rem;font-size:.9375rem;line-height:1.55;
  color:rgba(255,255,255,.78)}
.footer--compact .fcta{margin-top:1.25rem;font-size:.875rem}
.footer--compact .footer__top{gap:clamp(1.5rem,3vw,2.75rem)}
.footer__where{margin-top:clamp(2rem,3.5vw,2.75rem);padding-top:1.25rem;
  border-top:1px solid var(--foot-rule);display:flex;flex-wrap:wrap;
  align-items:baseline;gap:.5rem clamp(1rem,2.5vw,2rem);
  font-size:.8125rem;color:var(--foot-dim)}
.footer__where dt{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin:0}
.footer__where dd{margin:0;color:var(--foot-text)}
.footer__where dd + dd::before{content:"";display:inline-block;width:3px;height:3px;
  border-radius:50%;background:var(--foot-dim);vertical-align:middle;
  margin:0 clamp(.6rem,1.6vw,1.1rem) .15rem 0}
.footer--compact .footer__bottom{margin-top:clamp(1.5rem,2.5vw,2rem);padding-block:1.1rem 0;
  font-size:.75rem}
@media (max-width:640px){.footer__where{gap:.4rem .9rem}.footer__where dd + dd::before{margin-right:.65rem}}
body.v22 .footer{background:var(--dark)}
body.v22 .footer .container{padding-block:clamp(3rem,5vw,4rem) clamp(1.5rem,2.5vw,2rem)}
body.v22 .footer__top{display:grid;
  grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr));
  gap:clamp(1.5rem,3vw,3rem);align-items:start;padding-bottom:clamp(2rem,4vw,3rem);
  border-bottom:1px solid rgba(255,255,255,.10)}
body.v22 .footer .fhead{font-size:.75rem;font-weight:700;letter-spacing:.1em;
  text-transform:none;color:#fff;margin:0}
body.v22 .footer .fgroup summary{list-style:none;margin-bottom:1rem}
body.v22 .footer .fgroup__body{display:grid;gap:.6rem}
body.v22 .footer .fgroup__body a{font-size:.875rem;color:var(--foot-text);
  text-decoration:none;line-height:1.45}
body.v22 .footer .fgroup__body a:hover,body.v22 .footer .fgroup__body a:focus-visible{color:#fff}
body.v22 .footer__tag{font-size:.9375rem;color:#fff;max-width:22ch;line-height:1.45;
  margin:1.1rem 0 1.25rem}
body.v22 .footer__where{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1.1rem;
  margin:clamp(1.25rem,2.5vw,1.75rem) 0 0;padding:0}
body.v22 .footer__where dt{font-size:.6875rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--foot-dim);margin:0}
body.v22 .footer__where dd{margin:0;font-size:.8125rem;color:var(--foot-dim);line-height:1.4}
body.v22 .footer__bottom{padding-top:clamp(1.25rem,2.5vw,1.75rem);border-top:0}
body.v22 .footer__copy{font-size:.8125rem;color:var(--foot-dim);margin:0}
@media (max-width:1040px){body.v22 .footer__top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){body.v22 .footer__top{grid-template-columns:minmax(0,1fr)}}
.footer__brand .fsoc{list-style:none;display:flex;gap:.6rem;margin:1.5rem 0 0;padding:0}
.footer__brand .fsoc a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(255,255,255,.22);color:var(--foot-text);
  transition:border-color .25s ease,color .25s ease,background .25s ease}
.footer__brand .fsoc svg{width:17px;height:17px;fill:currentColor}
.footer__brand .fsoc a:hover,.footer__brand .fsoc a:focus-visible{
  color:#fff;border-color:var(--red);background:var(--red)}
.footer__offices{padding-top:clamp(1.2rem,2vw,1.6rem);margin-top:clamp(1.2rem,2vw,1.6rem);
  border-top:1px solid rgba(255,255,255,.10)}
.footer__oh{margin:0 0 .9rem;font-size:.6875rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--foot-dim)}
.offlist{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(1rem,2.5vw,2rem)}
.offlist__c{margin:0 0 .45rem;font-size:.875rem;font-weight:700;color:#fff;letter-spacing:-.005em}
.offlist__a{margin:0;font-size:.8125rem;line-height:1.55;color:var(--foot-text)}
.offlist__t{display:inline-block;margin-top:.45rem;font-size:.8125rem;color:var(--foot-dim);
  text-decoration:none}
.offlist__t:hover,.offlist__t:focus-visible{color:#fff}
.footer__bottom--v2{display:block;text-align:center;
  padding-top:clamp(1rem,1.7vw,1.35rem);margin-top:clamp(1rem,1.7vw,1.35rem);
  border-top:1px solid rgba(255,255,255,.10)}
.footer__bottom--v2 .footer__copy{margin:0;text-align:center}
@media (max-width:1040px){.offlist{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}}
@media (max-width:760px){.offlist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.offlist{grid-template-columns:minmax(0,1fr);gap:1.25rem}}