@layer components {
  :root{
    --fr-footer-pad-x: 15px;
    --fr-footer-max: 1600px;

    --fr-footer-pad-y: 25px;
    --fr-footer-addr-mt: 40px;
    --fr-footer-addr-mb: 30px;

    --fr-footer-meta-fs: 13px;
    --fr-footer-meta-lh: 32px;
    --fr-footer-meta-ls: .8px;

    --fr-footer-gap: 40px;
    --fr-footer-gap-md: 20px;
  }

  .fr-footer{
    background: var(--color-text);
    color: var(--color-primary);
    border-top: 1px solid var(--color-border);
    padding: var(--fr-footer-pad-y) 0;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: .5px;
  }

  .fr-footer__outer{ padding: 0 var(--fr-footer-pad-x); }

  .fr-footer__inner{
    max-width: var(--fr-footer-max);
    margin: 0 auto;
  }

  .fr-footer__address{
    margin: var(--fr-footer-addr-mt) 0 var(--fr-footer-addr-mb);
    font-style: normal;
  }

  .fr-footer__bar{
    font-family: var(--font-primary);
    font-weight: var(--fw-extrabold);
    font-size: var(--fr-footer-meta-fs);
    line-height: var(--fr-footer-meta-lh);
    letter-spacing: var(--fr-footer-meta-ls);
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--fr-footer-gap);
  }

  .fr-footer__bar a{
    color: var(--color-primary);
    text-decoration: none;
    white-space: nowrap;
    transition: opacity .35s;
    backface-visibility: hidden;
    perspective: 1000px;
  }

  .fr-footer__bar a:hover{ opacity: .5; }

  .fr-footer__left{
    width: 30%;
    display: flex;
    align-items: center;
    gap: var(--fr-footer-gap);
  }

  .fr-footer__right{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--fr-footer-gap);
  }

  #menu-meta-footer{
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--fr-footer-gap);
  }

  #menu-meta-footer .menu-item{ margin: 0; padding: 0; }

  #menu-meta-footer a{
    display: inline-flex;
    align-items: center;
  }

  .fr-footer__cookie{
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
  }

  @media (max-width: 1023px){
    .fr-footer__left,
    .fr-footer__right,
    #menu-meta-footer{
      gap: var(--fr-footer-gap-md);
    }
  }

  @media (max-width: 767px){
    .fr-footer{ padding: 0; }

    .fr-footer__inner{
      padding: 25px 0;
      position: relative;
      z-index: 101;
      background: var(--color-text);
    }

    .fr-footer__address{
      width: 100%;
      margin: 0;
    }

    .fr-footer__bar{ display: block; }

    .fr-footer__left{
      width: 100%;
      display: block;
      margin-top: 13px;
    }

    .fr-footer__left .socialItem{
      display: block;
      width: 100%;
    }

    .fr-footer__right{
      margin-top: 25px;
      padding-top: 20px;
      border-top: 1px solid var(--color-border);
      display: flex;
      align-items: center;
      justify-content: flex-start;
      gap: var(--fr-footer-gap-md);
      flex-wrap: nowrap;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
    }

    #menu-meta-footer{
      justify-content: flex-start;
      gap: var(--fr-footer-gap-md);
      flex-wrap: nowrap;
      white-space: nowrap;
    }
  }
}