/*
  <ekko-footer> styles (Figma "HOMEPAGE TEMPLATE" 147:580). The footer is a 1440×1130 black block (113rem at the
  desktop scale), with a white rule on top and a 70px copyright bar. Measurements are Figma px / 10 in rem and
  assume the page's scaling model: html{font-size:calc(100vw / 144)}, or 100vw/39 below 768px.
*/
ekko-footer{display:block}
.site-footer,.site-footer *,.site-footer *::before,.site-footer *::after{box-sizing:border-box}
.site-footer{
  position:relative;height:112.99rem;background:var(--bg);color:var(--fg);border-top:1px solid var(--fg);
  font-family:Inter,system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
}
.site-footer__title{
  position:absolute;left:4.04rem;top:12.81rem;width:80.86rem;margin:0;
  font-family:"Bebas Neue",Impact,sans-serif;font-weight:400;font-size:23.4rem;line-height:18.3rem;letter-spacing:-.468rem;
}
.site-footer__title em{font-style:normal;color:#ff1a00}
.site-footer__copy{
  position:absolute;left:4.04rem;top:71.21rem;width:67.91rem;margin:0;
  font-family:"Cal Sans",Inter,sans-serif;font-weight:400;font-size:2.8rem;line-height:2.8rem;letter-spacing:.056rem;
}

/* "Let's Talk": red label + white icon box, the same build as the page's other red CTAs */
.site-footer__cta{position:absolute;left:4.04rem;top:87.33rem;display:flex;height:4.99rem;color:#fff;text-decoration:none}   /* white on red: never flips */
.site-footer__cta-label{width:15.54rem;padding:1.14rem 0 0 2rem;background:#ff1a00;font-weight:500;font-size:2.4rem;line-height:2.6rem;letter-spacing:.0014rem}
.site-footer__cta-icon{display:grid;place-items:center;width:5rem;background:var(--box)}
.site-footer__cta-icon img{display:block;width:2.39rem;height:1.71rem;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.site-footer__cta:hover .site-footer__cta-icon img{transform:translateY(-.25rem)}

.site-footer__nav{position:absolute;left:4.04rem;top:95.66rem}
.site-footer__nav ul{display:flex;gap:3.2rem;margin:0;padding:0;list-style:none}
.site-footer__nav a{display:block;color:var(--grey);font-size:1.8rem;line-height:1.8rem;letter-spacing:.036rem;text-decoration:none;transition:color .25s}
.site-footer__nav a:hover,.site-footer__nav a[aria-current]{color:var(--fg)}   /* the page you're on, in white */

.site-footer__bar{
  position:absolute;left:0;right:0;bottom:0;height:7rem;padding-left:4.04rem;border-top:1px solid var(--fg);background:var(--bg);
  font-size:1.6rem;line-height:calc(7rem - 1px);letter-spacing:.032rem;
}

/* Phones: one column with a 2rem gutter, same order as desktop. */
@media (max-width:767px){
  .site-footer{height:auto;padding:7.2rem 2rem 0}
  .site-footer__title,.site-footer__copy,.site-footer__cta,.site-footer__nav{position:static}
  .site-footer__title{width:auto;font-size:11.6rem;line-height:9.6rem;letter-spacing:-.232rem}
  .site-footer__copy{width:auto;margin-top:3.2rem;font-size:2rem;line-height:2.4rem;letter-spacing:.03rem}
  .site-footer__cta{width:max-content;height:4.8rem;margin-top:3.2rem}
  .site-footer__cta-label{width:15rem;padding:1.2rem 0 0 1.6rem;font-size:2rem;line-height:2.2rem}
  .site-footer__cta-icon{width:4.8rem}
  .site-footer__nav{margin-top:3.2rem}
  .site-footer__nav ul{flex-wrap:wrap;gap:1.6rem 2.4rem}
  .site-footer__nav a{font-size:1.5rem;line-height:2rem}
  .site-footer__bar{position:static;height:6rem;margin:6.4rem -2rem 0;padding-left:2rem;font-size:1.3rem;line-height:calc(6rem - 1px)}
}
