.site-footer{
  position:relative;
  overflow:hidden;
  padding:0;
  background:#050505;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.08);
}
.site-footer::before{
  content:"AUTOS ESQUIVEL";
  position:absolute;
  right:-.03em;
  top:135px;
  color:rgba(255,255,255,.018);
  font-size:clamp(88px,13vw,220px);
  font-weight:600;
  letter-spacing:-.07em;
  line-height:.8;
  white-space:nowrap;
  pointer-events:none;
}
.footer-cta{
  position:relative;
  z-index:1;
  width:min(var(--max),calc(100% - 68px));
  margin:0 auto;
  padding:64px 0 58px;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) auto;
  align-items:end;
  gap:48px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.footer-cta__eyebrow,
.footer-label{
  display:flex;
  align-items:center;
  gap:10px;
  color:#7b7b7b;
  font-size:9px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.footer-cta__eyebrow::before,
.footer-label::before{
  content:"";
  width:24px;
  height:1px;
  background:#626262;
}
.footer-cta h2{
  max-width:760px;
  margin:17px 0 0;
  font-size:clamp(34px,4vw,58px);
  font-weight:600;
  line-height:.98;
  letter-spacing:-.045em;
}
.footer-cta__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.footer-button{
  min-height:48px;
  padding:0 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.2);
  font-size:9px;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:background-color .22s ease,color .22s ease,border-color .22s ease,transform .22s ease;
}
.footer-button:hover{
  transform:translateY(-2px);
}
.footer-button--light{
  background:#fff;
  border-color:#fff;
  color:#090909;
}
.footer-button--light:hover{
  background:#e9e9e9;
  border-color:#e9e9e9;
}
.footer-button--ghost{
  color:#fff;
  background:transparent;
}
.footer-button--ghost:hover{
  background:#fff;
  border-color:#fff;
  color:#090909;
}
.footer-grid{
  position:relative;
  z-index:1;
  width:min(var(--max),calc(100% - 68px));
  max-width:none;
  margin:0 auto;
  padding:58px 0 54px;
  display:grid;
  grid-template-columns:minmax(260px,1.35fr) repeat(3,minmax(180px,.82fr));
  gap:clamp(34px,5vw,78px);
}
.footer-grid > div{
  min-width:0;
}
.footer-brand-col{
  padding-right:28px;
}
.site-footer .brand--footer{
  display:inline-flex;
  margin-bottom:22px;
}
.site-footer .brand--footer .brand-logo-image{
  width:106px;
  height:106px;
  object-fit:cover;
  background:#000;
}
.footer-brand-col > p{
  max-width:380px;
  margin:0;
  color:#7d7d7d;
  font-size:12px;
  font-weight:300;
  line-height:1.85;
}
.footer-primary-phone{
  display:inline-flex!important;
  align-items:center;
  gap:9px;
  margin-top:22px!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:600!important;
  letter-spacing:.02em;
}
.footer-primary-phone::after{
  content:"↗";
  color:#777;
  font-size:11px;
}
.footer-column{
  padding-top:12px;
}
.footer-column h3{
  margin:18px 0 14px;
  color:#fff;
  font-size:14px;
  font-weight:600;
  letter-spacing:-.01em;
}
.footer-branch p{
  min-height:66px;
  margin:0 0 16px;
  color:#777;
  font-size:11px;
  font-weight:300;
  line-height:1.8;
}
.footer-branch > a{
  display:inline-flex!important;
  align-items:center;
  gap:8px;
  margin:0!important;
  color:#d9d9d9!important;
  font-size:11px!important;
  font-weight:600!important;
}
.footer-branch > a::after{
  content:"→";
  color:#6c6c6c;
  transition:transform .2s ease;
}
.footer-branch > a:hover::after{
  transform:translateX(3px);
}
.footer-nav{
  display:grid;
  gap:10px;
}
.footer-nav a{
  width:max-content;
  max-width:100%;
  color:#8a8a8a;
  font-size:11px;
  font-weight:300;
  transition:color .2s ease,transform .2s ease;
}
.footer-nav a:hover{
  color:#fff;
  transform:translateX(3px);
}
.footer-bottom{
  position:relative;
  z-index:1;
  width:min(var(--max),calc(100% - 68px));
  max-width:none;
  margin:0 auto;
  padding:22px 0 28px;
  border-top:1px solid rgba(255,255,255,.1);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:#5f5f5f;
  font-size:9px;
  font-weight:300;
}
.footer-bottom__links{
  display:flex;
  align-items:center;
  gap:22px;
}
.footer-bottom__links a{
  color:#777;
  transition:color .2s ease;
}
.footer-bottom__links a:hover{
  color:#fff;
}
.footer-bottom__location{
  color:#4f4f4f;
}
@media(max-width:1050px){
  .footer-cta{
    grid-template-columns:1fr;
    align-items:start;
  }
  .footer-cta__actions{
    justify-content:flex-start;
  }
  .footer-grid{
    grid-template-columns:1.25fr 1fr 1fr;
  }
  .footer-grid .footer-inventory{
    grid-column:2/4;
  }
  .footer-inventory .footer-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .footer-cta,
  .footer-grid,
  .footer-bottom{
    width:calc(100% - 40px);
  }
  .footer-cta{
    padding:48px 0 44px;
    gap:30px;
  }
  .footer-cta__actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .footer-grid{
    padding:45px 0 40px;
    grid-template-columns:1fr 1fr;
    gap:40px 26px;
  }
  .footer-brand-col{
    grid-column:1/-1;
    padding-right:0;
    padding-bottom:34px;
    border-bottom:1px solid rgba(255,255,255,.09);
  }
  .footer-grid .footer-inventory{
    grid-column:1/-1;
  }
  .footer-inventory .footer-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .footer-bottom{
    align-items:flex-start;
    flex-direction:column;
  }
}
@media(max-width:520px){
  .site-footer::before{
    display:none;
  }
  .footer-cta__actions{
    grid-template-columns:1fr;
  }
  .footer-button{
    width:100%;
  }
  .footer-grid{
    grid-template-columns:1fr;
  }
  .footer-grid .footer-inventory{
    grid-column:auto;
  }
  .footer-branch{
    padding-bottom:28px;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .footer-inventory .footer-nav{
    grid-template-columns:1fr 1fr;
  }
  .footer-bottom__links{
    width:100%;
    justify-content:space-between;
    gap:14px;
  }
}
