.foot{--c-focus:var(--c-on-dark);padding:var(--s-8) 0 var(--s-6);background:var(--c-ink);color:var(--c-on-dark)}
.foot-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-6)}
.foot ul{list-style:none;margin:0;padding:0}
.foot h2,.foot p{margin:0}
.foot-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.foot-brand{display:flex;align-items:center;gap:var(--s-4)}
.foot-brand img{display:block;height:44px;width:auto;flex:none}
.foot-brand p{font:400 var(--t-14)/1.5 var(--f-body);color:var(--c-on-dark-muted)}

.foot a,.foot-btn{display:inline-flex;align-items:center;gap:var(--s-3);min-height:44px;padding:0;border:0;background:none;color:var(--c-on-dark);font:500 var(--t-15)/1.3 var(--f-body);text-align:left;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:1.5px;text-underline-offset:4px;cursor:pointer;transition:text-decoration-color var(--d-base) var(--ease-out),opacity var(--d-fast) var(--ease-out)}
@media (hover:hover) and (pointer:fine){
  .foot a:hover,.foot-btn:hover{text-decoration-color:var(--c-accent)}
}
.foot a:active,.foot-btn:active{opacity:.7}
.foot a:focus-visible,.foot-btn:focus-visible{outline:2px solid var(--c-on-dark);outline-offset:2px;border-radius:var(--r-s)}
.foot a[aria-current="page"]{text-decoration-color:var(--c-accent)}
.foot-ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;color:var(--c-on-dark-muted)}

.foot-reach{display:grid;justify-items:start}
.foot a.foot-tel{min-height:52px;font:600 var(--t-24)/1.15 var(--f-display);letter-spacing:-.01em}
.foot-tel .foot-ic{width:24px;height:24px}
.foot-ways{display:grid;justify-items:start}
.foot-ways a,.foot a.foot-cta{font-size:var(--t-16)}

.foot-nav{display:grid;grid-template-columns:minmax(min-content,1.3fr) minmax(min-content,1fr);gap:var(--s-5);padding-top:var(--s-5);border-top:1px solid var(--c-hair-dark)}
.foot-nav h2{margin-bottom:var(--s-1);font:600 var(--t-14)/1.3 var(--f-body);color:var(--c-on-dark-muted)}
.foot-nav a{padding-block:var(--s-1)}

.foot-legal{display:flex;flex-wrap:wrap;align-items:center;align-content:center;gap:0 var(--s-5);padding-top:var(--s-3);border-top:1px solid var(--c-hair-dark)}
.foot-copy{font:400 var(--t-14)/1.4 var(--f-body);color:var(--c-on-dark-muted)}
.foot-legal ul{display:flex;flex-wrap:wrap;gap:0 var(--s-4)}
.foot-legal a,.foot-legal .foot-btn{font-size:var(--t-14)}

@media (prefers-reduced-motion:no-preference){
  .foot-anim .foot-r{opacity:0;transform:translateY(12px);transition:opacity var(--d-slow) var(--ease-out),transform var(--d-slow) var(--ease-out)}
  .foot-anim.foot-seen .foot-r{opacity:1;transform:none}
  .foot-anim.foot-seen .foot-r:nth-child(2){transition-delay:60ms}
  .foot-anim.foot-seen .foot-r:nth-child(3){transition-delay:120ms}
  .foot-anim.foot-seen .foot-r:nth-child(4){transition-delay:180ms}
}

@media (max-width:767px){
  body{padding-bottom:0}
  footer.foot{padding:var(--s-7) 0 calc(var(--bar-h) + env(safe-area-inset-bottom) + var(--fl-h) + var(--fl-gap) * 2 + var(--s-4))}
}
@media (max-width:359px){
  .foot-nav{column-gap:var(--s-4)}
  .foot-nav a{font-size:var(--t-14)}
  .foot a.foot-tel{font-size:var(--t-20)}
}

@media (min-width:768px){
  footer.foot{padding-bottom:var(--s-5)}
  .foot-reach{grid-template-columns:minmax(0,1fr) auto;column-gap:var(--s-6);align-items:center}
  .foot a.foot-tel{grid-column:1;min-height:56px;font-size:var(--t-30)}
  .foot-ways{grid-column:1;display:flex;flex-wrap:wrap;gap:0 var(--s-6)}
  .foot a.foot-cta{grid-column:2;grid-row:1 / span 2;min-height:56px;padding:0 var(--s-5);border-radius:var(--r-m);background:var(--c-accent);color:var(--c-ink);font:600 var(--t-16)/1 var(--f-body);text-decoration:none;transition:background-color var(--d-fast) var(--ease-out),transform var(--d-fast) var(--ease-out)}
  .foot-cta .foot-ic{color:inherit}
  .foot a.foot-cta:active{opacity:1;transform:scale(.97)}
  .foot-nav{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-top:var(--s-6)}
  .foot-nav a{min-height:40px}
  .foot-legal{min-height:144px;padding-top:var(--s-5);column-gap:var(--s-6);padding-right:max(0px,min(calc(428px - var(--gutter)),calc(1052px - 50vw)))}
}
@media (hover:hover) and (pointer:fine) and (min-width:768px){
  .foot a.foot-cta:hover{background:var(--c-accent-hover)}
}
@media (min-width:768px){
  .foot a.foot-cta:focus-visible{outline-offset:3px}
}

@media (min-width:1024px){
  .foot{padding-top:var(--s-9)}
  .foot-grid{grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:var(--s-7)}
  .foot-brand{grid-row:1 / span 2;align-self:start;flex-direction:column;align-items:flex-start}
  .foot-brand img{height:52px}
  .foot-brand p{font-size:var(--t-15)}
  .foot-reach,.foot-nav{grid-column:2}
  .foot-legal{grid-column:1 / -1}
  .foot-nav h2{font-size:var(--t-15)}
}
